所以基本上我有coin
對象,我想在屏幕上啓動它。我有它運行輕掃一些計算下面的代碼,但不知道什麼是有關我目前的情況:將SpriteNode以預設速度向滑動方向移動
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
touching = true
let touch = touches.first
let loc = touch?.locationInNode(self)
if coin.containsPoint(loc!){
touchPoint = loc!
touchTime = (touch?.timestamp)!
}
}
override func touchesEnded(touches: Set<UITouch>, withEvent event: UIEvent?) {
touching = false
let touch = touches.first
let loc = touch?.locationInNode(self)
var xDiff = (loc?.x)! - touchPoint.x
var yDiff = (loc?.y)! - touchPoint.y
let distance = sqrt(xDiff * xDiff + yDiff * yDiff)
}
我想硬幣在刷卡的方向基本上是拋出,但我想它每次在屏幕上達到某個y座標,然後由於重力而下降。所以我想我需要以某種方式每次計算出完美的速度以使其達到該y點,然後以該速度將滑動方向上的對象推入?
任何幫助非常感謝!我在接下來的幾個小時內上線,因此要求提供更多信息,我將很快回復您。
假設我明白你在問什麼,它實際上非常難 - 像**真的很難解決這個在遊戲物理學中相當常見的問題。這是關於它的質量保證https://math.stackexchange.com/q/166039/34973 – Fattie
相反,它可能只是問這個簡單的問題:https://stackoverflow.com/a/46919374/294884 – Fattie