Historique des modifications - Message

Message #11507

Sujet: Realiser une seule foi l'action


TypeDateAuteurContenu
Dernière modification19-03-2014 22:19:57jonath313
Bonjour,

Cela fait plusieurs fois que je suis confronté au même problème. J'aimerais appeler dans ma boucle de rendu une fonction qui fait un Node->removeChild(). Le soucis c'est que selon les conditions que je test l'appel à ma fonction s'effectue plusieurs fois et ducoups le removeChild() est appelé alors que l'enfant n'existe plus. J'ai tout essayé avec des test booleens mais rien n'y fait j'ai le droit à un jolis plantage !

Code c++ :

void Player::perdreBrasDroit(){
        NodePlayer->removeChild(NBrasDroite);
}

Dans ma boucle de rendu :

Code c++ :

   OdrPdrBrasDt_1 = player1.TestOfCollisionWithCubePlayer(player2.getPlayer()); ------> Test de collision entre deux nodes

   if(OdrPdrBrasDt_1 == true){
                player1.perdreBrasDroit();
        }

Enfait je voudrais realiser ce changement d'etat :

Ordre de perte du bras (donnee d'entree) :               Resultat de ma variable de test pour l'appel de la fonction :
0                                                                                         1
0                                                                                         1
0                                                                                         1
0                                                                                         1
1 -> passage de collision entre les nodes                                                 0 -> un seul changement
1                                                                                         1
1                                                                                         1
1                                                                                         1
0                                                                                         1
0                                                                                         1

Si quelqu'un à la réponse, merci d'avance.
Création du message19-03-2014 21:27:47jonath313
Bonjour,

Cela fait plusieurs fois que je suis confronté au même problème. J'aimerais appeler dans ma boucle de rendu une fonction qui fait un Node->removeChild(). Le soucis c'est que selon les conditions que je test l'appel à ma fonction s'effectue plusieurs fois et ducoups le removeChild() est appelé alors que l'enfant n'existe plus. J'ai tout essayé avec des test booleens mais rien n'y fait j'ai le droit à un jolis plantage !

Code c++ :

void Player::perdreBrasDroit(){
        NodePlayer->removeChild(NBrasDroite);
}

Dans ma boucle de rendu :

Code c++ :

   OdrPdrBrasDt_1 = player1.TestOfCollisionWithCubePlayer(player2.getPlayer()); ------> Test de collision entre deux nodes

   if(OdrPdrBrasDt_1 == true){
                player1.perdreBrasDroit();
        }

Enfait je voudrais realiser ce changement d'etat :

Ordre de perte du bras (donnee d'entree) :               Resultat de ma variable de test pour l'appel de la fonction :
0                                                                                         1
0                                                                                         1
0                                                                                         1
0                                                                                         1
1 -> passage de collision entre les nodes                                                 0 -> un seul changement
1                                                                                         1
1                                                                                         1
1                                                                                         1
0                                                                                         1
0                                                                                         1

Si quelqu'un à la réponse, merci d'avance.

Retour

OptionsLiens officielsCaractéristiquesStatistiquesCommunauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1441 sujets
11339 messages
Dernier membre inscrit: Saidov17
66 invités en ligne
membre en ligne: -
RSS Feed