AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
-20%
Le deal à ne pas rater :
-20% Récupérateur à eau mural 300 litres (Anthracite)
79 € 99 €
Voir le deal

 

 Problème avec la cible d'une homing attack

Aller en bas 
4 participants
AuteurMessage
mikbed
Nouveau



Messages : 4

Problème avec la cible d'une homing attack Empty
MessageSujet: Problème avec la cible d'une homing attack   Problème avec la cible d'une homing attack EmptyJeu 22 Déc 2011 - 22:26

Bonjour, je suis entrain d'éditer un ENGINE de Sonic. Je me débrouille quand même assez bien, j'ai fait les effets de boosts et autres.

Mais, je suis bloqué pour ajouter une cible à l'homing attack de Sonic. Dans les jeux Sonic, une petite cible apparaît sur l'ennemi pour annoncer qu'on peut déclencher la homing attack.

J'ai placé ce code dans STEP dans l'objet ''ennemi'':

Code:
{
if (distance_to_object(objSonic) < 100) { //Si Sonic est situé à moins de 100 de l'ennemi....
        instance_create(x,y,Homingt);} //Une cible apparaît sur l'ennemi
        }

Mais, voici mon problème: lorsque Sonic est proche de l'ennemi, un nombre infinie de cible apparaît sur l'ennemi jusqu'à ce que Sonic quitte le champ. On dirait que le code n'arrête pas de se répéter et créer un nombre infini de cible.... mais moi j'en veux seulement une...

Que dois-je ajouter à mon code pour empêcher ce phénomène?

Merci!


Revenir en haut Aller en bas
arthuro
Utilisateur confirmé: Rang ****
arthuro


Messages : 1483
Localisation : Paris
Projet Actuel : Diagon https://arthursonzogni.com/Diagon

Problème avec la cible d'une homing attack Empty
MessageSujet: Re: Problème avec la cible d'une homing attack   Problème avec la cible d'une homing attack EmptyJeu 22 Déc 2011 - 22:38

Bin c'est normal vu ce que tu as écrit.

Alors ajoute une condition du genre:

if (not instance_exists(obj_cibleur))


pour n'en créer qu'un.

// je ne garantis pas de l'existence de cette fonction, si ça marche pas, tu devrais trouver un équivalent dans la doc

_________________
Problème avec la cible d'une homing attack PochetteProblème avec la cible d'une homing attack Signature.php?gid=588
D'autres jeux :
In The Cube
In the cube 2
Revenir en haut Aller en bas
SPLN
Utilisateur confirmé: Rang ***
SPLN


Messages : 588
Localisation : Sur son ordinateur *vous vois* arrêtez de me regarder comme ça
Projet Actuel : En quête de projet(s)!
Mes projets:
SP Lecteur Multimedia (Stand by)
S-Portable Graphics (demo1.8 is out! demo2.0 is planned)
SSB RPG (Stand by)

Problème avec la cible d'une homing attack Empty
MessageSujet: Re: Problème avec la cible d'une homing attack   Problème avec la cible d'une homing attack EmptyVen 23 Déc 2011 - 13:57

Non je te rassure elle existe Razz.

Sinon pour la homming attack je te conseille de mettre le code sur Sonic plutôt car déjà c'est son attaque et que s'il y a plusieurs ennemis à une même distance il faudra en choisir un et pas plusieurs car je le vois mal tuer plusieurs ennemis en une attaque, il est rapide mais quand même rire

Après normalement avec instance_nearest (pour le choix de l'ennemi mais j'aurais plus tendance à créer un script moi même genre ennemy_lock() car instance_nearest ne fonctionne qu'avec un objet) et :
Code:
if (distance_to_object(script_identifiant_ennemis) < 100) { //Si Sonic est situé à moins de 100 de l'ennemi....
      if (!instance_exists(Homingt)) {instance_create(x,y,Homingt);}} //Une cible apparaît sur l'ennemi

Ça devrait être bon.

_________________
SP Lecteur Multimedia
I am an Problème avec la cible d'une homing attack Gmq4 in the GM Quiz!
Revenir en haut Aller en bas
http://sp-lecteur-multimedia.skyrock.com/
Caly
Utilisateur confirmé: Rang ****
Caly


Messages : 1285
Localisation : Haute Normandie
Projet Actuel : Capturer, apprivoiser et dresser des Pokémons sauvages pour faire des spectacles de rue et en faire mon métier.

Problème avec la cible d'une homing attack Empty
MessageSujet: Re: Problème avec la cible d'une homing attack   Problème avec la cible d'une homing attack EmptyVen 23 Déc 2011 - 14:52

Moi je vois le truc comme ça: (j'ai codé ça en 2minutes crono sans aucun teste , il y a surement des fautes de frappes ou des petites erreurs)

obj_cible :
Create:
Code:
active = false;

Step:
Code:
x = parent.x;
y = parent.y;
if( distance_to_object(obj_sonic) > 100 or !instance_exists(parent) ) instance_destroy();

Draw:
Code:
if(active) draw_sprite(spt_cible, 0, x, y);






parent_ennemi:
Step:
Code:
if( distance_to_object(obj_sonic) <= 100 ){
   var cible = instance_create(x,y,obj_cible);
      cible.parent= this.id;
}






obj_sonic:
Create:
Code:
enn_cible = 0;

Step:
Code:
if( instance_exists(obj_cible) ) {
   var nbr_cible = instance_number(obj_cible);
   
   if (keyboard_check_pressed('C')) enn_cible +=1; //Change de cible
   if (enn_cible > nbr_cible) enn_cible = 0;
      
   with(obj_cible) active = false; // il faudrait peut être faire une boucle à la place
   var id_enn_cible = instance_find(obj_cible, enn_cible);
   id_enn_cible.active = true;
   
   if (keyboard_check_pressed('A')) with(id_enn_cible.parent) instance_destroy(); //détruit l'ennemi
}
Revenir en haut Aller en bas
mikbed
Nouveau



Messages : 4

Problème avec la cible d'une homing attack Empty
MessageSujet: Re: Problème avec la cible d'une homing attack   Problème avec la cible d'une homing attack EmptyVen 23 Déc 2011 - 15:28

Non, la Homing attack est déjà entièrement codé Caly, il me manque juste la cible. Le code de arthuro fonctionne mais comme SPLN dit, lorsqu'il y a des ennemis très proche l'un de l'autre, il ne sait plus lequel choisir.

Merci pour vos réponses! Le code de SPLN fonctionne à merveille! Revenez souvent ici car il se peut que j'aille d'autres questions plus tard Very Happy

Merci surtout pour la rapidité de vos réponses, c'est très apprécié!
Revenir en haut Aller en bas
Caly
Utilisateur confirmé: Rang ****
Caly


Messages : 1285
Localisation : Haute Normandie
Projet Actuel : Capturer, apprivoiser et dresser des Pokémons sauvages pour faire des spectacles de rue et en faire mon métier.

Problème avec la cible d'une homing attack Empty
MessageSujet: Re: Problème avec la cible d'une homing attack   Problème avec la cible d'une homing attack EmptyVen 23 Déc 2011 - 15:40

Citation :
Non, la Homing attack est déjà entièrement codé Caly, il me manque juste la cible
Ça tombe bien c'est ce que mon code réalise.

Citation :
lorsqu'il y a des ennemis très proche l'un de l'autre, il ne sait plus lequel choisir.

D'ou mon code qui permet d'affiche la cible sans aucun bug et avec le bouton C tu peut changer de cible....
Revenir en haut Aller en bas
mikbed
Nouveau



Messages : 4

Problème avec la cible d'une homing attack Empty
MessageSujet: Re: Problème avec la cible d'une homing attack   Problème avec la cible d'une homing attack EmptyVen 23 Déc 2011 - 17:41

Bon, là j'ai un problème avec la homing attack encore.

Les cibles fonctionnent bien. Mais le problème, c'est que à cause de cette ligne de code:

Code:
 if (!instance_exists(Homingt)) {instance_create(x,y,Homingt);}}

La cible reste figé sur l'ennemi jusqu'à ce qu'on l'élimine. Ce qui fait que si on oublie un ennemi que le jeu à ciblé et qu'on veut en éliminer un autre, la cible n'apparaît pas puisqu'elle est sur l'autre ennemi qu'on a oublié d'éliminer...

Comment régler ça? J'ai essayé de faire:

Code:
if (distance_to_object(objSonic) > 70) { //Si Sonic est situé à plus de 100 de l'ennemi....
    with (Homingt){
    instance_destroy()}} //La cible disparaît

Mais ça ne marche pas, même que la cible n'apparaît plus du tout...
Revenir en haut Aller en bas
Caly
Utilisateur confirmé: Rang ****
Caly


Messages : 1285
Localisation : Haute Normandie
Projet Actuel : Capturer, apprivoiser et dresser des Pokémons sauvages pour faire des spectacles de rue et en faire mon métier.

Problème avec la cible d'une homing attack Empty
MessageSujet: Re: Problème avec la cible d'une homing attack   Problème avec la cible d'une homing attack EmptyVen 23 Déc 2011 - 18:03

J'aime écrire des lignes de code pour rien ...

Le code que j'ai écrit fait ce que tu demande, il faut juste que tu prenne la peine de le lire et de le comprendre mais apparemment tu n'en a pas envie.

Voici le récapitulatif de mon code:
Créer une cible invisible sur tous les ennemis à moins de 100 px de Sonic.
Rend une seule cible visible.
Si Sonic est plus loin de 100px de l'ennemi la cible se détruit automatiquement.
Si l'ennemi ciblé est mort la cible se détruit automatiquement.
Si on appuis sur le bouton C on navigue entre les ennemis qui peuvent être visé (moins de 100px).
Revenir en haut Aller en bas
mikbed
Nouveau



Messages : 4

Problème avec la cible d'une homing attack Empty
MessageSujet: Re: Problème avec la cible d'une homing attack   Problème avec la cible d'une homing attack EmptyVen 23 Déc 2011 - 19:55

Je comprend ton code, mais c'est que j'édite un engine où est-ce que l'homing attack est déjà créer. Je ne veux pas tout modifier car il y en beaucoup à changer et je pourrais faire buguer mon jeu entièrement.

J'ai réussis à régler le problème tout seul.

Merci quand même
Revenir en haut Aller en bas
Contenu sponsorisé





Problème avec la cible d'une homing attack Empty
MessageSujet: Re: Problème avec la cible d'une homing attack   Problème avec la cible d'une homing attack Empty

Revenir en haut Aller en bas
 
Problème avec la cible d'une homing attack
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Résolu] Problème avec "Ouvrir Avec"
» problème avec gravité [résolu] - problème avec mouvements
» probleme avec game maker studio et avec CBNA Bump 2
» Problème avec un objet dirigé vers un autre avec image_angle
» probleme avec la map

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide confirmés-
Sauter vers: