Salut a tous,
J'ai réussi a associer 3 actifs avec leur variable, mais avec la même logique je ne parvient pas a faire la même chose avec le quatrième actif le "cercle bleu", peut être que je répartie mal les valeurs, je sais pas.
( Valeth cherche a faire la même chose a ce que j'ai compris, mais avec un compteur)
Merci
Hello,
J'ai regardé vite fait mais je n'ai pas le temps de corriger ton mfa, en faite il faut que tu fasse une seule condition foreach avec tout dedans, regarde mon exemple ici: https://lecomptoirduclickeur.fr/element/fusionfile/35
Zou, j'ai simplifié histoire d'utiliser moins de lignes dans les loops (c'est ce qu'il y a de plus gourmand sur fusion) et ton erreur venait du fait que tu t'étais trompé d'actif au moment du repositionnement.
EAGLE, ça sert à quoi de repartir 0 dans ID a travers un 'toujours" ? moi je fais ça une seule fois et j'ai jusqu'ici pas eu de problemes
moi j'aurais tout mis dans la meme boucle, ça a l'air de marcher...
il y a aussi cette methode, sans boucle et sans ID qui permet d'ajouter et retirer des actifs en cours de programme (fusion associe automatiquement les actifs lors de leur création)
Oui en fait c'était pour garder la même philosophie que ce que Funadicte avait fait, mais effectivement, il y a pleins de façon différente de faire des groupements et les meilleures sont toujours celle qui ne nécessite pas de fast loop ^^
du coup tu peux me dire si il y avait une raison particuliere a repartir les id a travers un "toujours " ou pas specialement?
ah non pas spécialement, simplement parce que les id étaient balancé en permanence dans la fast loop... je l'ai juste sortie de la fast loop... après le fait de le mettre dans un always permet de rendre le code compatible si tu en ajoute ou en détruit, à n'importe quel moment... C'est une fonction qui ne prends pratiquement pas de ressource dans fusion contrairement aux fast loops qui sont très gourmande et qu'il faut à tout prix éviter de trop utiliser.
Le scoping est automatique s'il y a le même nombre d'objets
ah ok! je vois maintenant un interet ! merci :)
donc pour etre sur de bien comprendre, des qu'il y a des objets en meme nombre, peu importe a quel moment il sont créé dans le programme, fusion les associe les un avec les autres comme si on leur avait attreibué un id identique, c'est ça?
oui s'il y a le même nombre fusion comprends qu'au lieu de n'associer les objets qu'avec le dernier crée, il va les associer les uns avec les autres.
Mais cette méthode ne fonctionne que pour un positionnement, (pratique pour une minimap par exemple ou une ombre), cependant c'est très limité lorsque le premier objet donne une information à son associé (exemple, le second fait quelque chose lorsqu'une animation du premier est terminée).
Dans ce cas là faut utiliser une fast loop (ou un for each)...
Il attribue aussi s'il y a 2x ou 3 ou xfois plus d'objets.
merci !
Eagle4 Je les fixer sur celui de droite "right", parce qu'il a pour but de ce détacher du reste et d’être
indépendant lors d'un changement de variable, et de faire une paire avec le "cercle bleu" et le "right"
(J'ai simplifier en ne mettant pas cette fonction, je ne sais pas si j'ai bien fait), les quatre actifs
devrons être détruit si collision avec l'hitbox "left" de "l'enemy"
(1) Je veux deux paires qui fonctionne ensemble et qui peuvent ce détache lors d'un changement de variable et qui devienne indépendante avec chacune leur hitbox propre. Si les quatre son unifier détruire les quatre via l'hitbox "left", si non unifier les deux paires possède leur hitbox,et les paires ce détruise indépendamment.Du coup chaque paires d'actifs doivent pouvoir être testé indépendamment dans le code pour pouvoir les contrôler séparément
fredetmumu (test-hitbox-1-corrige-2.mfa) : Les deux paires "enemy" et l'hitbox "left" ainsi que que le
cercle bleu "Actif" et l'hitbox "right" devrons pouvoir ce détacher et être indépendante lire ma réponse a Eagle4 (1).
Pour ton deuxième exemple avec la fonction automatique de fusion, ça me semble limité et
fusion créé plus d'actif qu'il ne faut au vu de la non transparence de certain cercle bleu ( et ce n'est
pas une utilisation basique que je veux faire)
Xenon3K Je vais regarder ça merci
Patrice La fonction automatique de fusion et trop basique, si je veux supprimer le groupe ça pose problème merci quand même
On peut aussi identifier un actif via l'index de la boucle.
Pour ton petit souci, il existe les qualifieurs.
Attention comme le souligne Eagle4, une boucle rapide ça peut faire ramer sévère, tout dépend aussi de son "caractère", boucle temporaire ou permanente.
peut etre en multipliant par -1 les id de deux d'entre eux comme ça il est facile de les reconnaitre par rapport a leur origine et ils n'ont plus le meme id donc independant par rapport au depart
je suis pas sur de bien comprendre ce que tu veux, mais peut être que ça, ça s'en rapproche
Je n'ai pas bien compris ce que tu veux faire exactement. Mais tu peux faire un scoping simple et synchroniser les valeurs à la valeur fixe de ton objet principal. A chaque modifications sur un objet, tu stockes la valeur fixe dans une variable, tu fais une boucle et seul les objets qui ont cette valeur seront concernés.
Je vous fais un exemple