Bonsoir tout le monde
Dans le cadre d'un projet d'école je dois programmer un petit jeu vidéo dans lequel je manipule des armes.
J'aimerais faire en sorte que le nom de l'arme soit générées aléatoirement parmi une cinquantaine de nom.
Pour cela j'ai d'abord mis en place mon tableau de nom d'armes où j'y ai stocké 50 noms :
char* weaponNames[] = {
"Épée de feu",
"Arc de Glace",
"Lance des Ombres",
...
J'ai ensuite crée une fonction generateRandomIndex :
Et j'appelle cette fonction dans une fonction createWeapon dans laquelle j'initialise les variables de la structure de mon arme "weapon" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 int generateRandomIndex() { srand(time(NULL)); int index = rand() % 50; return index; }
(Voici la partie qui concerne le nom de mon arme)
Quand je lance mon programme, j'instancie plusieurs armes à la suite par le biais de la fonction createWeapon, mais le nom censé être aléatoire est le même pour toutes mes armes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 int randomIndex = generateRandomIndex(); newWeapon->name = weaponNames[randomIndex];
Autre information, la variable name de la structure Weapon est sous la forme "char *name;", soit un pointeur de caractères.
Comment puis-je obtenir un nom différent pour chacune de mes armes ?
Merci de prendre le temps de me lire et d'essayer de m'aider à la résolution de mon problème !![]()
Partager