IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Discussion :

[AS] Probleme de condition [Débutant(e)]


Sujet :

Flash

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    271
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 271
    Par défaut [AS] Probleme de condition
    Bonjour,

    Voci un partie de mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if (_root["apple"+i]._currentframe == 1  )
    				score += 1;
    			else  
    				score -= 1;
    la ligne de code trace(_root["apple"+i]._currentframe) me donne une sortie egale a 1...
    alors pourquoi mon score se decremente a chaque fois ????

    Merci

  2. #2
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    Salut,

    il manque les accolades
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if(..) {
      ...
    } else {
      ...
    }
    Ca passait ton code à la compil ?

  3. #3
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    271
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 271
    Par défaut
    non il n y a pas besoin d accolades quand il y a une seule ligne apres la condition

  4. #4
    Membre éclairé Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Par défaut
    1 seul ligne apres le "if", mais pas pares le "else", non ?

  5. #5
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    271
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 271
    Par défaut
    non non pas d autres ligne apres la ligne suivant le else :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    else if ((Math.abs(y-fox._y) < 10) and (Math.abs(x-fox._x) < 25)) {
     
    			removeApple(i);
    			if (_root["apple"+i]._currentframe == 1  )
    				score += 1;
    			else  
    				score -= 1;
     
    		//  
    		}

  6. #6
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    271
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 271
    Par défaut
    Je vous pose une colle la

  7. #7
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    Re

    si tu fais ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    trace("----------------------------);
    trace(_root["apple"+i]._currentframe);
    trace(score);
    if (_root["apple"+i]._currentframe == 1  ) {
                score += 1;
                trace(score);
    } else  {
                score -= 1; 
                trace(score);
    }
    trace(_root["apple"+i]._currentframe);
    Ca te renvoie quoi ?

    tu es sûr qu'il n'y a pas un autre endroit dans ton code où tu décrémentes la variable score ?

  8. #8
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    271
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 271
    Par défaut
    non l n y a pas d autres endroits ou elle se decremente mais j ai remarque un truc bizarre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    function moveApples() {
    	//  
    	for (i=firstApple;i<=lastApple;i++) 
    	{ 
    		x = _root["apple"+i]._x;
    		y = _root["apple"+i]._y + appleSpeed;
     
    		trace(_root["apple"+i]._currentframe);
     
    		if (y > 400) 
    		{
    			removeApple(i);
    		} 
     
    		else if ((Math.abs(y-fox._y) < 10) and (Math.abs(x-fox._x) < 25)) 
    		{
    			removeApple(i);
     
    			if (_root["apple"+i]._currentframe == 1  ) 
    			{
                		        score += 1;
    			} 
     
    			else  
    			{
                		       score -= 1;
    			}
    		} 
     
    		else 
    		{
    			_root["apple"+i]._y = y;
    		}
    	}
    }
    Ici le "trace(_root["apple"+i]._currentframe); " renvoie une valuer egale a 1

    Mais la :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    function moveApples() {
    	//  
    	for (i=firstApple;i<=lastApple;i++) 
    	{ 
    		x = _root["apple"+i]._x;
    		y = _root["apple"+i]._y + appleSpeed;
     
    		if (y > 400) 
    		{
    			removeApple(i);
    		} 
     
    		else if ((Math.abs(y-fox._y) < 10) and (Math.abs(x-fox._x) < 25)) 
    		{
    			removeApple(i);
    			trace(_root["apple"+i]._currentframe);
     
    		        if (_root["apple"+i]._currentframe == 1  ) 
    			{
                		        score += 1;
    			} 
     
    		        else  
    			{
                		       score -= 1;
    			}
    		} 
     
    		else 
    		{
    			_root["apple"+i]._y = y;
    		}
    	}
    }
    Ici le "trace(_root["apple"+i]._currentframe); " renvoie un undefined ... si qqun a un explication !...

  9. #9
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    271
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 271
    Par défaut
    Ok j ai compris ... A pres l appel de la fonction removeapple() la fonction trace renvoie une valeur indefined donc y a plus qu a mettre cette fonction apres le traitement du score...
    Merci de votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Probleme requete condition
    Par vanou dans le forum ASP
    Réponses: 10
    Dernier message: 15/06/2006, 16h41
  2. Réponses: 15
    Dernier message: 05/05/2006, 09h13
  3. probleme de condition et de boucle
    Par avantoux dans le forum ASP
    Réponses: 5
    Dernier message: 23/03/2006, 08h59
  4. Probleme de conditions
    Par guy2004 dans le forum Langage
    Réponses: 11
    Dernier message: 05/11/2005, 14h54
  5. probleme gestion condition switch - case
    Par DarkMax dans le forum Langage
    Réponses: 5
    Dernier message: 07/09/2005, 14h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo