2017-05-23 38 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」)。