私は SKShapeNode を持っていて、それに名前を設定しましたが、タッチで検出しようとすると、他のスプライトで使用する方法では機能しません。
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
/* Called when a touch begins */
for touch: AnyObject in touches {
let location = touch.locationInNode(self)
if let body = self.nodeAtPoint(location) as? SKSpriteNode {
if var name: String = body.name {
switch name {
case "myShape":
println("Shape Touched")
case "enemy":
println("Enemy Touched")
default:
}
}
}
}
}
敵は SKSpriteNode であり、正しく検出されますが、SKShapeNode である形状は検出されません。そして、文字列名を正しく入力しました。