J'ai un problème avec une variable de type "Point" vitesse changeant sans aucun appel pour le changer.as3 Variables changeant de façon impossible
private function framecode(e:Event) {
trace(getVelocity().y);
tracks.gotoAndStop(2);
trace(getVelocity().y);
}
Ce code fait partie d'une classe appelée « réservoir » qui prolonge celle qui vitesse est utilisé dans (ma classe d'objet en mouvement). La vitesse est une variable de type point privé et getVelocity() est une méthode d'accès public. pistes est un movieClip nommé contenu à l'intérieur de celui lié à réservoir. L'écouteur d'événement est ENTER_FRAME. Il n'y a pas de codage sur les trames de pistes.
D'une manière ou d'une autre, ces deux traces donnent des valeurs différentes (la première étant correcte) et je n'arrive pas à comprendre comment gotoAndStop() peut l'affecter (et donc comment le réparer).
J'ai découvert que play() ne reproduisait pas le bogue mais prevFrame() et nextFrame() le font. Comme la variable est privée, cette classe ne devrait même pas y avoir accès pour la changer. Une autre étrangeté est que si l'écouteur d'événement est changé en FRAME_CONSTRUCTED ou EXIT_FRAME, il y a un décalage massif et mon MovieClip disparaît au hasard après quelques secondes.
Merci d'avoir lu, toute aide serait appréciée.