Peut être cela à t-il déjà été expliquer mais je n’arrive pas à trouver les bon mots clé pour tomber sur un sujet.
Mon problème est simple, je souhaite sélectionner plusieurs objets en même temps faire un clic droit et modifier une variable d’objet nommé ID à tous les objets sélectionner dans l’éditeur.
Mais lorsque je fait cela, seulement un objets se voit munir de cette variable ID, et j’en ai marre de devoir faire un à un la même manipulation surtout que certaines fois j’en ai beaucoup à faire dans mes scènes. Je ne peut pas les créer automatiquement parce que j’ai besoin de contrôler l’ID pour faire fonctionner les mécanismes de mon jeu.
En clair, un objet “déclencheur” s’active lorsque le jouer est en collision avec et appuie sur un touche, et là, les objets ayant la même ID que lui change de couleur.
Si joueur en collision avec ObjetDeclencheur et touche Espace pressée alors [RIEN]
----Pour chaque objet ObjetaID
---->Si ObjetaID.Variable(ID) = ObjetDeclencheur.Variable(ID) alors changer la couleur de ObjetaID
Tu trouves “pour chaque objet” dans l’option “Autre” dans les évènements.
Oui c’est ce que j’utilise à peut de chose près, mon problème c’est que je ne peut pas définir par event les ID de mes objets non pas parce que je ne sais pas le faire, mais parce que j’ai besoin de le faire manuellement afin que cela corresponde avec le mécanisme de mon jeu.
Mon problème c’est que je doit tout faire manuellement et je voudrais appliquer une Variable ID à tout mes objets que j’aurais sélectionné, là ou actuellement il n’y en a qu’un sur 5 (par exemple) qui prend en compte la modification.
Imaginons que dans ma scène j’ai 5 objets rond :
Objets :
O … O … O … O … O
ID :
1 … 2 … 1 … 3 … 2 (que je place manuellement)
Lorsque j’appuie sur l’interrupteur dont l’ID = 1 cela active les objets dont la valeur de ID = 1
O … O … O … O … O
Je ne peut pas utiliser “pour chaque objet” car tout les objets sont les même (comme dans l’exemple), certain doivent avoir l’ID à 1, d’autre à 2 , … et il y en a beaucoup (plus que 5) ! Dont je veux savoir comment, en sélectionnant plusieurs objets, affecter une ID à tout les objets sélectionné, et non pas qu’à un seul ou à tous, le tout en une seule modification.
Alors, arrange toi pour le faire le moins possible. Parce qu’il n’y a pas d’autres solutions actuellement pour changer d’un coup une valeur commune à plusieurs objets depuis l’éditeur.
Ou utilise les évènements pour construire ta scène, à coup de Repeter et d’incrémentation.
Perso, je ne sers pas de l’éditeur WYSIWYG. Toutes mes scènes sont construites en évènement. Je trouve ça beaucoup plus précis pour mon style de jeu, et ça me permet de désactiver des éléments à la volée sans avoir à tout déplacer à la souris.
---->Si ObjetaID.Variable(ID) = ObjetDeclencheur.Variable(ID) alors changer la couleur de ObjetaID
Dans les conditions “Autre->Comparaison d’expression”.
Tu peux avoir 50 000 ObjetaID, s’il y en a 15 qui ont le même ID que celui de ObjetDeclencheur, seulement ces 15 là seront affectés.
Oui mais comme je l’ai dis, je doit déterminer manuellement les ID des déclencheurs et des objets associés. C’est pour cela que je souhaitais savoir pourquoi je ne peut modifier qu’une variable d’objet à la fois même lorsque je sélectionne plusieurs objets.
Ok, c’est bien dommage
Mais en attendant qu’il l’implémente, s’il veut le faire, et bien je vais simplifier un peut mes variables afin d’en avoir moins a modifier …
Le souci c’est simplement qu’en sélectionnant plusieurs objets dans l’éditeur (MAJ + Clic Gauche) puis en faisant un clic droit sur l’un d’eux pour modifier une variable d’objet, il n’y que celle de l’objet en question qui sera prise en compte et non pas les autres objets pourtant sélectionnés eux aussi.