Salut! Je suis en train de créer mon nouveau jeu : space war more war, et je tombe sur une difficulté…
En fait, je voudrais que un objet du nom de “Nilet_Bot” tourne autour de chaque planetes (“Planete_Nilet”) du clan nilet.
Un nilet_bot par planete_nilet
En plus, je voudrais que quand le nilet_bot est mort, qu’il réaparaisse au bout de 15 secondes.
Un id pour chaque bot et pour chaque planète (un bot aura l’id d’une planète, tu fait des couples d’objet quoi).
Utiliser l’évènement faire tourner autour d’une position (centre de la planète) pour faire tourner le bot.
Pour vérifier la mort, il suffit de mettre dans l’évènement qui le supprime, un chrono qui se lance (chrono qui a l’id de la planète lui aussi)
Puis, une condition qui, quand le chrono dépasse les 15 secondes, recrée le bot, et supprime le chrono.
L’idée pour faire la création des bot rapidement serait un truc du genre.
Pour chaque objet planète, si il n’y a pas d’objet bot dans un rayon de 500px, créer un objet bot et donner à sa variable id, la valeur de la variable id de la planète.
Et donc pour compléter ce code, avant ça tu fait un évènement qui crée chaque planète et attribut l’id à la variable id de l’objet planète (différent pour chaque planète).
Création des planètes
1_Si Variable nid < 4
Si nombre planète < 5
Faire créer planète à la position Random(1000) en X,Random(1000) en Y
Faire =Variable(nid) à la variable id de planète
Faire =0 à la variable botPlanete de l’objet planete
Faire +1 à la variable id
Créations des bots
2_Pour chaque objet planète
Si la variable botPlanete de l’objet planete est <= 0
Si la distance entre planete et bot n’est pas <= à 500px (à toi de voir en fonction hein, ça c’est juste une sécurité si des planètes sont proches)
Faire créer bot à la position planete.PointX(Centre) + 500, planete.PointY(Centre)
Faire =Planete.Variable(id) à la variable id de l’objet bot
Faire =1 à la variable botPlanete de l’objet planete
Rotations des bot
3_Pour chaque objet planète
Pour chaque objet bot (tu le met en sous-condition)
(et le reste en sous condition de la sous condition)
Si la variable id de l’objet planete = bot.Variable(id)
Faire tourner bot autour de la position planete.PointX(Centre), planete.PointY(Centre) avec une force de X et une longueur de Y (à toi de définir ces 2 valeurs)
Vérification de la mort d’un bot
4_Si l’objet tir est en collision avec l’objet bot
(sous condition)
Pour chaque objet planète
Si la variable botPlanete de l’objet planete > 0
(sous condition)
Pour chaque objet bot
Si la variable id de l’objet bot = planete.Variable(id)
Faire = 0 à la variable botPlanete de l’objet planete
Supprimer l’objet bot
En gros, quelque chose du genre je ne peux affirmer que ça fonctionne tel quel (je tourne aux tests moi )
Par contre je ne suis pas sûr de l’exactitude de planete.Variable(id) pour récupérer la valeur d’un variable d’un objet, mais tu peux la retrouver facilement dans l’éditeur d’expressions en allant dans la sous catégorie objet, puis variable