J'essaie d'ajouter plusieurs instances de mon objet (balle) afin que le joueur puisse tirer sur la balle et ensuite tirer une autre balle. J'utilise le code suivant mais il me donne une erreur sigbart de signal 1 de fil. Quelqu'un peut-il s'il vous plaît expliquer ce qui ne va pas avec le code? Merci!Ajout de plusieurs instances d'objets spritekit swift 3
1
A
Répondre
0
si vous ajoutez plusieurs fois SKSprite, une erreur se produirait.
Ce que vous devez faire est de créer un SKSpritenode à ajouter à chaque fois. Vous pouvez avoir une fonction pour faire créer des puces 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))
}
Donc, chaque fois que vous appelez addBullet(), peut-être en touches ont commencé, vous pouvez créer une nouvelle balle qui se déplace à la fin de l'écran sans accident. Le point principal est donc: var bullet = SKSpriteNode (imagenamed: "bullet") pour chaque addChild.
aussi la balle est un SKSpriteNode et est un sprite de couleur, pas une image – c3pNoah
À quoi fait référence "bullett"? Créez-vous un nouvel objet bullett chaque fois que cet extrait de code est exécuté? – Leo
Vous devez afficher la partie de votre code où vous créez la puce. – TheValyreanGroup