【发布时间】:2016-03-03 23:00:54
【问题描述】:
我正在制作一款太空射击游戏,我希望飞船能够朝它所面对的方向发射子弹。我已经想出了如何让子弹朝船的方向旋转,但我还没有让它朝正确的方向射击。此刻,我只开枪。我在下面有一个屏幕截图。我怎样才能解决这个问题?这是我的代码:
if shootButton.containsPoint(location) {
let Bullet = SKSpriteNode(imageNamed: "BulletGalaga.png")
Bullet.zPosition = -5
Bullet.position = CGPointMake(ship.position.x, ship.position.y)
Bullet.zRotation = ship.zRotation
Bullet.zPosition = ship.zPosition
let action = SKAction.moveToY(self.size.height + 30, duration: 0.8)
//let action = SKAction.moveTo(self.ship.size.height, duration: 0.8)
let actionDone = SKAction.removeFromParent()
Bullet.runAction(SKAction.sequence([action, actionDone]))
Bullet.physicsBody = SKPhysicsBody(rectangleOfSize: Bullet.size)
Bullet.physicsBody?.affectedByGravity = false
Bullet.physicsBody?.dynamic = false
self.addChild(Bullet)
}
谢谢。
【问题讨论】:
-
我尝试将 let action = SKAction.moveToY(self.size.height + 30, duration: 0.8) 替换为 moveTo,但没有成功。我知道我需要它来说明子弹必须朝飞船 zPosition 的方向移动……我也知道必须更改 moveToY。有任何想法吗? @CleverError
标签: ios swift sprite-kit swift2