Re: Godot Engine - Projet Arsenal

Posté par Redstar le 3/12/2021 17:18:28
Maintenant que j'ai intégré un bâtiment qui permet de construire des unités, je dois pouvoir sélectionner ce dernier. Normalement, j'aurai dû le faire pour le QG préalablement mais j'ai estimé plus important le reste car au fond, ce sera le même pop-up qui sera utilisé comme pour le bulldozer.

Sauf que le souci, c'est que Godot ne sait pas qui il doit sélectionner en premier: le bâtiment ou l'unité ? Et si les deux sont empilés ?

Après quelque recherches, il fallait que je fasse en sorte que la souris passe sur l'unité/le bâtiment. Pour ce faire, il fallait émettre un signal, qui va modifier une variable sur le script qui gère la partie sélection.

Cette variable va me permettre par la suite de dire à Godot "ma souris est sur cet élément, donc si je clique dessus, tu le marque comme sélectionné." Et donc, je dis à Godot comment il doit traiter la priorité: d'abord l'unité puis le bâtiment. Si aucune des deux conditions n'est remplie, alors soit on dessine un cadre, soit on déplace les unités sélectionnées.

Enfin, je rajoute un noeud2D ou je place mon cadre de sélection. Pourquoi ? Pour dire à Godot qu'il doit afficher celui-ci par dessus tout: les bâtiments et les unités. Sans ça, le cadre se trouve derrière. Plus la valeur du "ZIndex" est élevée sur les noeuds associés, plus prioritaires ils sont pour être affichés par le moteur de rendu (je suppose que c'est pareil pour la 3D ?).

Cette contribution était de : http://blenderclan.tuxfamily.org/html/newbb/viewtopic.php?forum=3&topic_id=50774&post_id=590710