Bonjour,
Je suis en train de tenter de faire un jeu en AS3. Je souhaite faire une page d'accueil "appuyez sur la touche espace pour continuer" et ensuite lancer le chargement de mon animation. Or, quand je mets une boucle if, il semble que le chargement ne s'opère pas, tandis que si je ne mets rien, ma fonction est tout de suite prise en compte mais pas besoin d'appuyer sur la touche espace pour démarrer l'animation.
Pouvez-vous me dire ce qu'il se passe ?
D'avance, je vous remercie.
Je vous mets mon code pour que cela soit plus explicite:
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83 function Passer(evt:Event):void{ if(ToucheEspace==true) { conteneur.addEventListener(Event.COMPLETE,chargement_fini); } } function chargement_langue(evt:Event) { var langue_xml:XML=new XML(evt.target.data); langage=langue_xml.langues.langue[choix].@nom; trace(langage); fin_perdu=langue_xml.langues.langue[choix].fin; fin_gagne=langue_xml.langues.langue[choix].gagne; deb=langue_xml.langues.langue[choix].strt; conteneur.load(fichier); //conteneur.addEventListener(Event.COMPLETE,Start); //conteneur.removeEventListener(Event.COMPLETE,chargement_langue); conteneurPhoto.removeEventListener(MouseEvent.CLICK, clicImage); //Action lors du survol de la vignette conteneurPhoto.removeEventListener(MouseEvent.MOUSE_OVER, VignetteBrillance); //Action lorsque l'on quitte la vignette conteneurPhoto.removeEventListener(MouseEvent.MOUSE_OUT, VignetteMate); conteneurImage.removeChild(conteneurPhoto); texte.defaultTextFormat=new TextFormat("Arial",50,0xFFFFFF); texte.autoSize=TextFieldAutoSize.CENTER; texte.x = (largeurS/2)-(texte.width/2); texte.y = (hauteurS/2)-(texte.height/2); texte.text=deb; texte.background=true; texte.backgroundColor=0x1B1F21; conteneurImage.addChild(texte); stage.addEventListener(KeyboardEvent.KEY_DOWN,tester_touche_appuyer);//Clavier: appuyé stage.addEventListener(KeyboardEvent.KEY_UP,tester_touche_relacher);//Clavier: relâché stage.addEventListener(Event.ENTER_FRAME, Passer); } function chargement_fini(evt:Event) { ....Code } var keyNum:Number=0; var ToucheGauche:Boolean=false; var ToucheDroite:Boolean=false; var ToucheEspace:Boolean=false; //Test si la touche est appuyée function tester_touche_appuyer(e:KeyboardEvent):void { switch (e.keyCode) { case 37 : ToucheGauche=true; break; case 39 : ToucheDroite=true; break; case 32 : ToucheEspace=true; break; } } //Test si la touche est relâchée function tester_touche_relacher(e:KeyboardEvent):void { switch (e.keyCode) { case 37 : ToucheGauche=false; break; case 39 : ToucheDroite=false; break; case 32 : ToucheEspace=false; break; } }
Partager