如何设置x和y可以移动动画片段的最大值/限制?

时间:2019-03-28 22:12:24

标签: actionscript-3 actionscript

我正在创建一个角色,其中一项功能是能够调整面部特征的位置。可以使鼻子向上或向下移动 (通过箭头按钮,例如:1单击向上按钮,将鼻子稍微向上移动。)

但是很明显,我不希望眼睛,鼻子或嘴唇漂浮在脸外,也不希望鼻子最后出现在额头上,这很奇怪。

那么我该如何编码,以使用户只能在所选方向上移动动画片段一定次数?

2 个答案:

答案 0 :(得分:0)

如果仅使用箭头按钮移动对象,则非常简单。单击按钮后,检查对象的位置并根据需要移动它。基本示例:

class FeedCell: UITableViewCell {

    @IBOutlet weak var postText: UILabel!

}

class FeedTableViewController: UITableViewController {

    var postInfo = FeedCell()

    override func viewDidLoad() {
        super.viewDidLoad()

        // Uncomment the following line to preserve selection between presentations
        // self.clearsSelectionOnViewWillAppear = false

        // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
//         self.navigationItem.rightBarButtonItem = self.editButtonItem

        self.tableView.rowHeight = 100.0

//        postText = UILabel()
//
        var ref: DatabaseReference!
        ref = Database.database().reference()
        let cellRef = ref.child("post/body")

        cellRef.observeSingleEvent(of: .value) { (snapshot) in
            if let body = snapshot.value as? String {
                self.postInfo.postText.text = body
                print(body)
            }
        }
    }

x轴是相同的,显然,数字100和140可以是您想要的任何东西。这意味着在这些点之间移动对象。

答案 1 :(得分:0)

用户987答案是正确的,但是如果您的按钮以更快的速度移动对象,例如+ -5,则将+ -2设置为偏移量可能不会将其放回边界。此后,它将在每帧之前以+ -2进行校正,而不考虑用户是否继续按住按钮以尝试进一步超出边界。鼻子将继续向远处滑动。

实现此目的的更好方法是立即将鼻子重新设置到边界的边缘。

if (nose.y > 140) {
  nose.y = 140;
}