En faite, je suis face à un petit problème.
J’aimerai créer des variables communes à plusieurs objets.
je pensais passer par les groupes d’objets, mais ces derniers ne gèrent pas les variables.
L’idée, dans les grandes lignes, c’est que tous les objets appartenant à un groupe disposent des même variables (pas pas forcément des variables égales)
Par exemple :
Nous avons un groupes d’objets nommé 'DIAMANTS"
SI le joueur clique sur un objet du groupe, celui ci disparaît. Jusque là pas de problème.
Mais en disparaissant, il existe une certaines probabilité qu’un autre objet apparaisse (disons un BONUS).
J’aurai aimé donc que les objets du groupe DIAMANTS possèdent tous une variable nommée “BONUS”, qui accroissent cette probabilité
Disons que le diamant jaune à une proba de 50%
Le diamant bleu de 75%, le diamant rouge de 100%
Donc existe il un moyen de ne pas traiter chaque objet en particulier, mais de faire référence à cette variable via le groupe DIAMANTS.
Mon exemple est simple, à savoir que dans le cas que je traite, il y a au moins 5 variables à prendre en compte.
Variable d’objets ?
Tu crées une variable d’objet BonusProba dans l’objet Diamant, que tu fixes à une valeur particulière.
Tu peux aussi ajouter une variable d’objet Couleur, qui indique quelle est la couleur du diamant (et donc l’animation à jouer parmi les animations de l’objet Diamant). Tu as ainsi un seul objet Diamant, dont tu changes le numéro d’animation selon qu’il est jaune ou bleu.
J’ai commencé par passer par les variables d’objet (pour les tests qui sont nickels), mais ça marchait car il n’y avait qu’un seul objet à traiter.
Pour mieux recentrer le problème, voilà en faites ce qui se passe.
On oubli les diamants, qui était un exemple basique.
Le jeu en question est un jeu de plateforme action.
D’un coté, je doit donc vérifié plusieurs testes de collision (entre ENNEMI et HEROS, entre ENNEMI et ARME PRINCIPALE, entre ENNEMI et ARMES SECONDAIRES)
Chaque ennemi possède entre 1 et 5 animations, et “doivent” posséder un certain nombres de variables (Vie, Vitesse, Dommages, Bonus …)
Pour éviter de tester les collisions de chaque ENNEMIS, je les ai donc regrouper dans un groupe d’objets (MONSTRES en l’occurrence).
A ce jour, le groupe dispose de 12 objets différents
Donc voici le problème,
Si l’événement “Collision entre MONSTRES(groupe d’objet) et VK(qui est le nom de l’arme principale du héros)” est vrai => la variable “vie” de l’ennemi doit décroître de 1
Le problème, c’est que comme le groupe MONSTRES possède plusieurs objets, j’aurai voulu donc faire appel à la variable de l’objet en question, ce qui ne me semble pas possible en l’occurrence.
En utilisant une action pour traiter les variables d’objet sur un groupe, cela marche très bien et les modifications sont bien appliqués sur chaque objets du groupe.
Dans ton cas, la condition “MONTRES” est en collision avec “VK” permet à Game Develop de choisir le bon “MONSTRE” sur lequel effectuer les actions (ici, enelever un point de vie).
De manière plus générale, Game Develop choisit les objets sur lesquels appliquer les actions en fonction des conditions (un objet qui respecte les condition sera utilisé par les actions).