Event.updateAfterEvent(); [Résolu]

cs_wolfmike 29 Messages postés samedi 29 mars 2003Date d'inscription 13 mai 2009 Dernière intervention - 11 mai 2009 à 15:41 - Dernière réponse : cs_wolfmike 29 Messages postés samedi 29 mars 2003Date d'inscription 13 mai 2009 Dernière intervention
- 11 mai 2009 à 18:25
Salut à tous,
Toujours dans le but de peaufiner mon petit jeu de tir j'essaye d'utiliser la fonction :event.updateAfterEvent();
Mais visiblement ca ne marche pas ... j'obtiens l'erreur : 1120:Acces of undefined property event

Et mon jeu part en sucette...

c'est bizarre car j'ai vu cette option dans la doc officiel de flash dans la rubrique As3 donc d ou peut venir ce prob?

Une idée?
merci à vous:)
Mike
Afficher la suite 

Votre réponse

15 réponses

Meilleure réponse
pegase31 6161 Messages postés dimanche 21 décembre 2003Date d'inscriptionModérateurStatut 4 septembre 2013 Dernière intervention - 11 mai 2009 à 17:55
3
Merci
la différence est que tu n'as pas de boucle qui tourne en fond pour rien, car ta fonction ,e se déclenche que lorsque la souris bouge.

Peg'

Merci pegase31 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 83 internautes ce mois-ci

Commenter la réponse de pegase31
pegase31 6161 Messages postés dimanche 21 décembre 2003Date d'inscriptionModérateurStatut 4 septembre 2013 Dernière intervention - 11 mai 2009 à 15:51
0
Merci
Bonjour,

"Event" fait référence à un évènement et plus précisément des évènements de saisie tels que "MouseEvent" ou "KeyboardEvent".
Cette méthode ne se met pas n'importe où ni n'importe comment et si tu lis bien la doc, tu verras des exemples d'utilisation fournis avec ...

Bien lire la doc, toujours !

Peg'
Commenter la réponse de pegase31
cs_wolfmike 29 Messages postés samedi 29 mars 2003Date d'inscription 13 mai 2009 Dernière intervention - 11 mai 2009 à 15:55
0
Merci
100% d'accord avec toi peg',
Voilà donc mon code (du moins la partie intéressante):
stage.addEventListener(Event.ENTER_FRAME, moveMouse);
 
image 2
 function moveMouse(Event) {
      Mouse.hide();

     curseur.x = mouseX;
     curseur.y = mouseY;
     event.updateAfterEvent();

     
 }
image 1
import flash.events.MouseEvent;

je te passe tout ce qui est inutile...

Donc voilà.. je pense que mon utilisation est juste par rapport à la doc.. c'est bien ce qui m'embete...

Tu vois quelque hose de douteux dans mon code?
Commenter la réponse de cs_wolfmike
pegase31 6161 Messages postés dimanche 21 décembre 2003Date d'inscriptionModérateurStatut 4 septembre 2013 Dernière intervention - 11 mai 2009 à 16:18
0
Merci
la faute est grosse comme une maison et c'est celle d'un débutant (c'est pas mesquin, rassure-toi) .. je te laisse la trouver, mais je l'ai vue de suite ;)

Peg'
Commenter la réponse de pegase31
pegase31 6161 Messages postés dimanche 21 décembre 2003Date d'inscriptionModérateurStatut 4 septembre 2013 Dernière intervention - 11 mai 2009 à 16:20
0
Merci
ah non ... il y a celle-là et encore une autre, bien plus vilaine ...

Tu écoute un évènement qui est "Event.ENTER_FRAME", donc ton type d'évènement n'est pas un de ceux dont je t'ai parlé plus avant ... Regarde bien ton code, tu comprendras.

Peg'
Commenter la réponse de pegase31
cs_wolfmike 29 Messages postés samedi 29 mars 2003Date d'inscription 13 mai 2009 Dernière intervention - 11 mai 2009 à 17:11
0
Merci
Et bien j'ai beau chercher je ne comprends pas ma ou mes fautes
:(
Commenter la réponse de cs_wolfmike
pegase31 6161 Messages postés dimanche 21 décembre 2003Date d'inscriptionModérateurStatut 4 septembre 2013 Dernière intervention - 11 mai 2009 à 17:15
0
Merci
Apparemment, la partie soulignée en rouge ne t'as pas mise la puce à l'oreille ...

Tu déclenche un Event (évènement général), alors que l'updateAfterEvent n'est présent que sur un KeyboardEvent (évènement de clavier) et un MouseEvent (évènement de souris)... tu ne vois toujours pas ton erreur ?

Pour la première erreur, tu devrais savoir qu'il y a une différence entre "event" et "Event" et que ce n'est pas la même variable.

Peg'
Commenter la réponse de pegase31
cs_wolfmike 29 Messages postés samedi 29 mars 2003Date d'inscription 13 mai 2009 Dernière intervention - 11 mai 2009 à 17:31
0
Merci
Bon j'ai corrigé la faute de la majuscule:

 stage.addEventListener(Event.ENTER_FRAME, moveMouse);
 
 function moveMouse(Event) {
      Mouse.hide();

     curseur.x = mouseX;
     curseur.y = mouseY;
        Event.updateAfterEvent();

     
 }

Ca ne marche toujours pas... d'après ce que tu dis c'est parceque updateAfterEvent ne fonctionne pas avec enter_frame, mais si je remplace par MouseEvent ca ne fonctionne pas non plus... :( Je comprends plus rien
Commenter la réponse de cs_wolfmike
pegase31 6161 Messages postés dimanche 21 décembre 2003Date d'inscriptionModérateurStatut 4 septembre 2013 Dernière intervention - 11 mai 2009 à 17:35
0
Merci
montre ton code lorsque tu met un mouseEvent ...

Peg'
Commenter la réponse de pegase31
cs_wolfmike 29 Messages postés samedi 29 mars 2003Date d'inscription 13 mai 2009 Dernière intervention - 11 mai 2009 à 17:50
0
Merci
stage.addEventListener(MouseEvent, moveMouse);
 
 function moveMouse(Event) {
      Mouse.hide();

     curseur.x = mouseX;
     curseur.y = mouseY;
        Event.updateAfterEvent();

     
 }

Je fais n'importe quoi je crois...
Commenter la réponse de cs_wolfmike
cs_wolfmike 29 Messages postés samedi 29 mars 2003Date d'inscription 13 mai 2009 Dernière intervention - 11 mai 2009 à 17:53
0
Merci
correction:
 stage.addEventListener(MouseEvent.MOUSE_MOVE, moveMouse);
 
 function moveMouse(Event) {
      Mouse.hide();

     curseur.x = mouseX;
     curseur.y = mouseY;
        Event.updateAfterEvent();

     
 }

Ca a l'air de marcher... mais je ne vois pas trop de différence... certains de mes clics semblent non prit en compte lorsque je clique trop vite...
Commenter la réponse de cs_wolfmike
cs_wolfmike 29 Messages postés samedi 29 mars 2003Date d'inscription 13 mai 2009 Dernière intervention - 11 mai 2009 à 18:05
0
Merci
Merci beaucoup pour ton aide et tes précisions :)

Par contre mes clics souffrent tout de même d'un manque de raffraichissement...je veux dire, si je tir plein de fois très vite (genre double clic) pour mitrailler ma cible, il arrive qu'elle ne s'abaisse pas... est ce du à flash? ou plutôt à un code je te l'accorde douteux...

Je le mettrais bien ici mais je sens que ca va gueuler...

Ou alors je poste la source.... vu que le code ne s'étend pas que sur une seule image ce sera peut etre plus simple...

A+
Mike
Commenter la réponse de cs_wolfmike
pegase31 6161 Messages postés dimanche 21 décembre 2003Date d'inscriptionModérateurStatut 4 septembre 2013 Dernière intervention - 11 mai 2009 à 18:12
0
Merci
je ne peux pas te dire comme ça, mais c'est certainement du à ton framerate. Augmente-le.

Peg'
Commenter la réponse de pegase31
cs_wolfmike 29 Messages postés samedi 29 mars 2003Date d'inscription 13 mai 2009 Dernière intervention - 11 mai 2009 à 18:14
0
Merci
J'ai trouvé le problème :p
J'utilisais MousseEvent.CLICK au lieu de MOUSE_DOWN
Du coup je devais relacher pour que le coup parte... ce qui créeait un décalage....

Juste une dernière question...

je dépose des impact de balle lorsque je rate ma cible... mais si je reshoot sur un de ces impacts de balle ca ne tir plus... (logique vu que ca cache le fond qui recoit l'event) alors comment rendre un "objet" transparent pour le clic mais visible pour l'utilisateur ?

c'est possible? :)

Merci beaucoup... mike
Commenter la réponse de cs_wolfmike
cs_wolfmike 29 Messages postés samedi 29 mars 2003Date d'inscription 13 mai 2009 Dernière intervention - 11 mai 2009 à 18:25
0
Merci
mouseEnabled = false;

;)
Désolé des posts inutiles et un tout grand merci ... tout tourne magnifiquement bien :)
Mais qu'est ce que le jeu est nul :D
Ma faute ca ^^
Commenter la réponse de cs_wolfmike

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.