2017-05-23 39 views
1

我想添加我的对象(子弹)的多个实例,所以玩家可以拍摄子弹,然后拍摄另一颗子弹。我使用下面的代码,但它给我一个线程1信号sigbart错误。有人可以解释什么是错误的代码?谢谢!添加对象的多个实例spritekit swift 3

+0

此外,子弹是SKSpriteNode,是一个颜色精灵,而不是图像 – c3pNoah

+1

“bullett”是指什么?每次这段代码片段运行时,你是否创建了一个新的bullett对象? – Leo

+0

您需要在创建子弹的位置显示代码部分。 – TheValyreanGroup

回答

0

如果您多次添加SKSprite会发生错误。

你需要做的是创建一个SKSpritenode来添加每一次。你可以有一个函数来完成创建子弹eachtime

func addBullet(){ 

var bullet = SKSpriteNode(imagenamed: "bullet") 
bullet.position = //Give the point of origin as CGPoint. Maybe same as the shooter.. 
addChild(bullet) 
bullet.run(SKAction.moveTo(y: self.frame.height, duration: 2)) 

} 

所以每次调用addBullet(时间),也许在触摸开始,你可以创建新的子弹移动而不崩溃结束画面。 所以要点是每个addChild都有var bullet = SKSpriteNode(imagenamed:“bullet”)。