2 votes

Swift - Space Invaders (La boucle d'affichage des aliens ne fonctionne pas)

J'essaie actuellement de créer un jeu d'envahisseurs de l'espace, j'ai réussi à faire fonctionner le mouvement des vaisseaux et je travaille actuellement sur la boucle d'affichage des extraterrestres. J'y suis presque, mais pour une raison quelconque, mon écran reste vide, aucun extraterrestre n'est affiché. Quelqu'un peut-il m'aider ? Voici ce que j'ai jusqu'à présent.

//Add and display given amount of aliens...
    while displayAliens == true {
        aliens.append(SKSpriteNode(texture: SKTexture(imageNamed: "ClassicAlien")))
        self.addChild(aliens[displayLoopCounter])
        //Location
        aliens[displayLoopCounter].position.x = 0
        aliens[displayLoopCounter].position.y = 0
        aliens[displayLoopCounter].position.x = CGFloat(displayLoopCounter + 25)
        displayLoopCounter += 1
        //Have we run out of aliens yet?
        if displayLoopCounter > alienAmount {
            displayAliens = false
        }

}
}

2voto

Yonah Karp Points 367

Je ne suis pas sûr à 100 % de l'origine du problème, mais votre boucle serait plus propre comme suit :

//Add and display given amount of aliens...
    while (alienAmount >= displayLoopCounter) {
        aliens.append(SKSpriteNode(texture: SKTexture(imageNamed: "ClassicAlien")))
        self.addChild(aliens[displayLoopCounter])

   //Location
        aliens[displayLoopCounter].position.y = 0
        aliens[displayLoopCounter].position.x = CGFloat(displayLoopCounter + 25)
        displayLoopCounter += 1

    }

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X