所以作爲一個想法的一部分,我有一個有趣的小遊戲,我需要一箇中間的對象(縱向視圖),當我觸摸屏幕左側並向右旋轉時向左旋轉我觸摸屏幕的右側。基於觸摸事件旋轉對象
這就是字面意思。
但我想用swift而不是objective-C ...我發現的所有教程都是針對obj-c的,因此我不明白如何將編碼實現到GameScene.swift文件中。
在此先感謝!
所以作爲一個想法的一部分,我有一個有趣的小遊戲,我需要一箇中間的對象(縱向視圖),當我觸摸屏幕左側並向右旋轉時向左旋轉我觸摸屏幕的右側。基於觸摸事件旋轉對象
這就是字面意思。
但我想用swift而不是objective-C ...我發現的所有教程都是針對obj-c的,因此我不明白如何將編碼實現到GameScene.swift文件中。
在此先感謝!
我想這應該是SpriteKit。因此,你需要:
1)在你的屏幕
2)的中心增加一個SpriteNode確定觸摸位置
3),如果frame.size.width>或<上的x軸上該位置你的觸摸,所以你需要通過你創建的SpriteNode運行一些動畫。
所以這很容易,但你需要編寫一些代碼來獲得更詳細的幫助。
Wm.p1us說的是正確的,這裏是他建議的代碼。
var myImage: SKSpriteNode!
class GameScene: SKScene {
override func didMoveToView(view: SKView) {
anchorPoint = CGPointMake(0.5, 0.5)
myImage = SKSpriteNode(imageNamed: "myImage")
addChild(myImage)
}
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
let touch = touches.first as UITouch!
let location = touch.locationInView(self.view)
myImage.removeAllActions()
if location.x < frame.size.width/2 {
// left hand side touched, rotate left
let rotateLeft = SKAction.rotateByAngle(CGFloat(M_PI)*2, duration: 1)
myImage.runAction(SKAction.repeatActionForever(rotateLeft))
} else {
// right hand side touched, rotate right
let rotateRight = SKAction.rotateByAngle(-CGFloat(M_PI)*2, duration: 1)
myImage.runAction(SKAction.repeatActionForever(rotateRight))
}
}
}
謝謝!我想我現在就開始吧!歡呼雖然 –
如果我是正確的請標記我的答案是正確的 –
對不起,已經完成! :) –