| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Sep 2004
Beiträge: 36
|
Hi, ich habe ein Problem, dass mich doch gelinde gesagt zur Verzweiflung treibt. Ich benutze einen Key.Listener, den ich so initialisiere: Code: myListener = new Object();
myListener.onKeyDown = function () {
playerwanttox = playerx;
playerwanttoy = playery;
if (Key.isDown(38) || Key.isDown(104)) {
playerwanttoy--;
costfactor = 10;
} else if (Key.isDown(33) || Key.isDown(105)) {
playerwanttox++;
playerwanttoy--;
costfactor = 14;
} else if ....
}
else { trace (Key.getCode()); }
// Hier wird dann noch viel mehr gemacht.
} Grundsätzlich funktioniert auch alles... ABER: Es ist möglich und sogar sehr wahrscheinlich, dass der User einen erneuten Aufruf der Funktion startet, obwohl die alte noch nicht abgearbeitet ist. Das ist in meinem Fall aber relativ tötlich für das Script. Gibt es eine Möglichkeit, nur EINEN Key-Event zuzulassen, bzw. so lange diese Funktion läuft, den Key.Listener "pausieren" zu lassen? Ich kann leider nicht im Hauptscript die removeListener-Methode verwenden... Der keyListener fungiert hier als regelrechter Interrupt... Vielen Dank, Sebezahn |
| | |
| | #2 (permalink) |
| brand new user Registriert seit: May 2002 Ort: Laimbach 6 1/2
Beiträge: 16.884
|
Schalt doch eine Variable dazwischen, die false ist solange die Function läuft, true wenn die fertig ist!!
__________________ Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake! "Wer tanzen will, muß erst gehen lernen" |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |