SetInterval / clearInterval qui ne se clear jamais jamais jamais. [Résolu]

Messages postés
67
Date d'inscription
samedi 1 février 2003
Dernière intervention
10 juin 2011
- - Dernière réponse : cs_OmbreNoir
Messages postés
67
Date d'inscription
samedi 1 février 2003
Dernière intervention
10 juin 2011
- 6 août 2008 à 18:22
Hey, bien le bonjours tous le monde qui fond parti de la belle univers de la programmation:)

Bon j'ai pas mis trop de commentaire car je voulais juste tester le systeme, mon problème c'est que quand   if (_root.vies2 <= 0) { je supprime toute les setIntervale pour que sa stop l'animation. Mais rien n'arrete au contraire. sa continue, continue, continue.

Même chose pour     if (_root.vies1 <= 0) { un peu plus bas.

Je dois me retapper tout le code pour le mettre compréhensible et structuré mais pour l'instant c'est vraiment birc à braque désolé encore. J'ai vraiment besoin de savoir pourquoi le setInterval arrete pas (aucun arrete) Je sais pas vraiment l'utiliser encore, apart de la syntaxe pour faire un genre de timer.

Si vous pouvez m'aidez sa serais très très très gentil!! Merci beacoup d'avance à tous et à tout ceux qui vont essayer de le faire, ou juste de me lire c'est vraiment sympa de votre part!

//bouge gars 1
function move_gars1 () {
  if (gars1._x < 422.4) {
    gars1._x +=  5;
  }
  else {
    if (attak <= 0) {
      var attak = random(21);
      } else {
      var attak = 0;
    }
    //insert de la perte de vie
    var pourc = attak / _root.vies2;
    _root.vies2 = _root.vies2 - attak;
    if (_root.vies2 <= 0) {
      barrevie2._width = 0;
      vie2 = 0;
      win1._x = 310;
      win1._y = 156.3;
      win1._alpha = 2;
      _root.wins = "Le joueur 1 à Gagné!!!";
      clearInterval(attak_gars1_inter);
      clearInterval(attak_gars1);
      clearInterval(bac_gars1);
      clearInterval(attak_gars2_inter);
      clearInterval(bac_gars2);
      stop();
      } else {
      barrevie2._width = barrevie2._width - (barrevie2._width * pourc);
    }
    vie2 = _root.vies2;
    txt_attack = attak;
    //fin
    //recule le gars1
    clearInterval(attak_gars1_inter);
    clearInterval(attak_gars1);
    bac_gars1 = setInterval(back_gars1, 1);
    //fin
  }
}
//fin
function back_gars1 () {
  if (gars1._x > 91.3) {
    gars1._x = gars1._x - 5;
  }
  else {
    clearInterval(bac_gars1);
    re_attack_gars1 = random(100) + 1;
    if (re_attack_gars1 <= 20) {
      attak_gars1 = setInterval(move_gars1, 1);
      } else {
      attak_gars2_inter = setInterval(attack_gars2, 1);
    }
  }
}
//bouge gars 2
function attack_gars2 () {
  if (fin == 'oui') {
    clearInterval(attak_gars2_inter);
  }
  if (gars2._x > 139) {
    gars2._x +=-5;
  }
  else {
    //insert de la perte de vie
    var attak = random(36) + 5;
    var pourc = attak / _root.vies1;
    _root.vies1 = _root.vies1 - attak;
    if (_root.vies1 <= 0) {
      barrevie1._width = 0;
      vie1 = 0;
      win1._x = 310;
      win1._y = 156.3;
      win1._alpha = 2;
      _root.wins = "Le joueur 2 à Gagné!!!";
      clearInterval(attak_gars1_inter);
      clearInterval(attak_gars1);
      clearInterval(bac_gars1);
      clearInterval(attak_gars2_inter);
      clearInterval(bac_gars2);
      stop();
      } else {
      barrevie1._width = barrevie1._width - (barrevie1._width * pourc);
    }
    vie1 = _root.vies1;
    txt_attack = attak;
    //fin
    //recule le gars2
    clearInterval(attak_gars2_inter);
    bac_gars2 = setInterval(back_gars2, 1);
    //fin
  }
}
function back_gars2 () {
  if (gars2._x < 470) {
    gars2._x +=5;
  }
  else {
    clearInterval(bac_gars2);
    re_attack_gars2 = random(100) + 1;
    if (re_attack_gars2 <= 20) {
      attak_gars2_inter = setInterval(attack_gars2, 1);
      } else {
      attak_gars1_inter = setInterval(move_gars1, 1);
    }
  }
}
//fin
Afficher la suite 

Votre réponse

1 réponse

Meilleure réponse
Messages postés
67
Date d'inscription
samedi 1 février 2003
Dernière intervention
10 juin 2011
3
Merci
Finalement je vais me répondre à moi même, c'étais pas mes clearinterval mais plustôt un } qui étais pas à la bonne place.

Merci tous le monde ;)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 105 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_OmbreNoir

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.