Il s'agit probablement d'un oubli, mais un débutant peut galèrer des heures sur une petite erreur comme celle-ci.

qui devient :comtois a écrit :Code : Tout sélectionner
;Définition des constantes #LargeurEcran = 800 #NbColonnesVaisseaux = 3 #NbLignesVaisseaux = 4 #NUM_INVADERS = #NbColonnesVaisseaux * #NbLignesVaisseaux ;et plus loin dans ton InitInvader() Procedure InitInvaders() ;pour calculer la position de chaque colonne ;tu as juste à faire EspaceEntreColonne = #LArgeurEcran / (NbColonnesVaisseaux + 1) EspaceEntreLigne = 40 for a = 1 to #NbColonnesVaisseaux for b = 1 to #NbLignesVaisseaux aliens(x)\x = a * EspaceEntreColonne aliens(x)\y = b * EspaceEntreLigne x + 1 next b next a
Code : Tout sélectionner
;Définition des constantes
#LargeurEcran = 800
#NbColonnesVaisseaux = 3
#NbLignesVaisseaux = 4
#NUM_INVADERS = #NbColonnesVaisseaux * #NbLignesVaisseaux
;et plus loin dans ton InitInvader()
Procedure InitInvaders()
;pour calculer la position de chaque colonne
;tu as juste à faire
EspaceEntreColonne = #LArgeurEcran / (#NbColonnesVaisseaux + 1)
EspaceEntreLigne = 40
for a = 1 to #NbColonnesVaisseaux
for b = 1 to #NbLignesVaisseaux
aliens(x)\x = a * EspaceEntreColonne
aliens(x)\y = b * EspaceEntreLigne
x + 1
next b
next a
Et pour les centrer avec la même distance des deux côtés de l'écran, j'ai du modifier de cette façon :
Code : Tout sélectionner
EspaceEntreColonne = (#SCREEN_WIDTH - 40) / (#NbColonnesVaisseaux + 1)
Sinon c'est bien ce que je voulais, les vaisseaux s'affichent, centrés à l'écran par rapport à x.