Bonjour à tous,
Je développe un space invaders.
J'ai un souci pour déterminer quel invader doit tirer.
Voila comment je procède:
-Je détermine la plage des invaders pouvant tirer
ex:
Si une armée d'invaders comprend 30 invaders avec 10 invaders par lignes (vector allant de 0 à 29) alors seuls les invaders de la troisième ligne peuvent tirer. La plage est donc [20, 29]. Si le joueur touche les invaders 20 et 10 alors la plage est [0, 29]. Si le 0 et le 29 sont détruits à leur tour la plage est [1, 28] et ainsi de suite.
-Je tire un nombre aléatoirement dans cette plage,
-Je fais tirer l'invader tiré au sort.
Mon problème est que pour déterminer le tireur sur une plage de 9 cela va très vite, mais si la plage est de 30 (tous les invaders ne pouvant pas tirer car il y a un autre invader en dessous d'eux, seuls ceux sans un autre invader dessous peuvent tirer, cela créé des "déchets") cela est bcp plus long.
J'ai donc mis en place une tempo qui fait que plus la plage est élevée plus la fonction pour tirer un invader au sort est appelée. Mais ce système n'est pas correct car difficile de trouver un équilibre satisfaisant qui permette d'avoir une cadence de tir à peu près semblable suivant la taille de la plage.
Peut être que déterminer aléatoirement le tireur n'est pas correct ?
Avez-vous une solution ?
Voila j'espère avoir été clair.
merci d'avance.
Partager