Bonjour à tous,
petite question qui pour certains semblera surement simple
J'ai dans mon code créer une classe qui me créé des montres pour mon petit jeu que que je fais comme un exercice.
Alors :
A l'init de mon programme (juste avant le main), j'appelle une fonction de chargement de map puis une fonction qui récupère le nombre de monstres de la map présent dans nbrMechant.
Les méchants sont ici juste chargés dans un tableau [i][j] afin de connaître à la fois leur nombre et position future.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 chargeMonde(1) chargeMechant(1)
Ensuite je crée mes montres faisant Class mechant[nbrMechant] et hop, je viens de créer le nombre de méchant de ma map d'ouverture.
Si je test en faisant juste après ma création
et que dans ma boucle while de ma fenetre je fais
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 spriteMechant.setTexture(tileSetMechant); spriteMechant.setTextureRect(sf::IntRect(0,0,17,17)); spriteMechant.setPosition(200,200);
Aucun problème, jusque là tout va il s'affiche en position 200,200 mais car il y a un mais sinon je ne serai pas ici
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 window.clear(); window.draw(monstres[0].spriteMechant); window.display();
Lorsque je vais déplacer mon perso et devoir changer de map, je vais faire appel à la fonction de chargement de map puis à celle de chargement des monstres.
Mais comment il faut gérer les nouveaux méchant à créer ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 // On change de monde chargeMonde(2) chargeMechant(2)
Je dois créer les nouveaux méchants dans ma fonction chargeMechant ? Le fait de les créer dans cette fonction, pourrais-je toujours y accéder après ma fonction dans mon main lorsque je voudrais les afficher ?
Je du mal à me faire un plan d'organisation correct pour gérer cela.
Merci de votre aide
Partager