2016-12-24 92 views
0

我搜索過了,我只能找到關於通過拖動/拖動來移動的東西。我是一名初學者,製作Xcode的遊戲,Sprite-Kit,目前我的表現相當不錯,比預期的要好。需要右鍵和左鍵在x軸上移動精靈

但我似乎無法弄清楚如何讓精靈在左右按鈕上左右移動。我做了左邊的SKSpriteNode和右邊的SKSpriteNode(我不認爲這是正確的),並且它們顯示出我想要顯然的位置,但我不知道如何使它們被觸摸並使精靈移動。

對不起,如果這是一個非常業餘的問題,答案可能是顯而易見的,但我在一個果醬。

+0

移動精靈的總體思路是:對自己的立場財產或他們的速度vectory影響(sprite.physicsBody.velocity )。您直接通過將其設置爲新值或直接使用Mina指出的SKActions來更改職位屬性。當涉及到物理學時,通過將其設置爲新的值,直接改變速度矢量,並通過將脈衝或力量應用於物理機構來間接改變速度矢量。這些是基本要記住的。 – Whirlwind

回答

2

有很多關於移動精靈的教程,從這個raywenderlich教程開始。 你必須爲你的精靈集名稱和處理中的touchesBegan功能的運動(使用此thread

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { 
    for touch in (touches) { 
     let positionInScene = touch.location(in: self) 
     let touchedNode = self.atPoint(positionInScene) 
     if let name = touchedNode.name { 
      if name == "leftButton" { 
       //move to left 
      } 
      if name == "rightButton" { 
       //move to right 
       let moveAction: SKAction = SKAction.moveBy(x: 15, y: 0, duration: 1) 
       yourNode.run(moveAction) 
      } 
     } 
    } 
} 
+0

其作品,直到我按下「按鈕」,然後它立即崩潰。即時通訊不知道問題是在哪裏這麼簡單的事 – TroyDeJ

+1

添加異常斷點,以獲得更好的崩潰信息,並告訴我們關於它 – Mina

+0

好吧,我沒有崩潰,但玩家仍然沒有移動,我沒有代碼的位置球員壽,它在中間的錨點,不知道如果這是任何原因。 – TroyDeJ

相關問題