Autor Wątek: ActionScript 2.0 onEnterFrame  (Przeczytany 1842 razy)

Offline Pirs01

  • Użytkownik

# Sierpień 28, 2007, 15:43:40
Chodzi mi u ustawianie funckji dla zdarzenia _level0.onEnterFrame. Standardowo robi się to tak:
_level0.onEnterFrame = handleTick;
function handleTick(){}
Rzecz w tym że mój handleTick jest zdefiniowany w klasie i kiedy piszę:
_level0.onEnterFrame = gameWorld.handleTick; To metoda gameWorld.handleTick nigdy nie jest wywoływana. Co robię źle? Z góry dziękuję.

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline KrystianD

  • Użytkownik
    • http://krystiand.net

# Sierpień 28, 2007, 16:21:22
Wywołaj funkcję gameWorld.handleTick w globalnym enterFrame:
_level0.onEnterFrame = handleTick;
function handleTick() { gameWorld.handleTick (); }

Offline Pirs01

  • Użytkownik

# Sierpień 28, 2007, 16:30:14
Działa! Wielkie dzięki! Możesz jeszcze wytłumaczyć czemu tak należy to zrobić i czym się to właściwie różni od mojeogo niedziałąjącego kodu?

Offline KrystianD

  • Użytkownik
    • http://krystiand.net

# Sierpień 28, 2007, 16:40:31
Czemu tak należy robić? bo działa ;) A tak właściwie to nie mam pojęcia dlaczego Twój kod nie działał, prawdopodobnie dlatego, że AS nie obsługuje wskaźników na funkcje w klasie, tylko na globalne. A różni się właśnie tym, Ty próbowałeś przypisać wskaźnik na funkcję w klasie, a u mnie funkcja enterFrame jest globalna i poprostu wywołuje metodę z klasy gameWorld.

thx za ++ :)
« Ostatnia zmiana: Sierpień 28, 2007, 16:42:05 wysłana przez Krystian D. »