PDA

Просмотр полной версии : Как правильно пользоваться onEnterFrame


dimaMJ
14.02.2013, 03:10
У меня вопрос как пользоваться onEnterFrame в классах, обьясните всю взаимосвязь правильную, когда создаешь в классах. Я сколько пишу не понимаю как правильно использовать onEnterFrame, лично сейчас я создаю экземпляр общего класса в кадре в ф-ции к примеру game и эту ф-цию передаю в onClipEvent(enterframe), делаю ли я правильно? и если нет обьясните как правильно, буду благодарен.

dark256
14.02.2013, 10:54
onClipEvent и классы....
Вы пытаетесь БугаттиВерона заставить работать на дровах.... В открытом космосе....
У ва в одну кучу все свалено.

dimaMJ
14.02.2013, 13:40
Я и прошу обьяснить

dark256
14.02.2013, 14:12
Я ООП не знаю. Но на клипах код не пишу.
Вы думаете что знаете, но при этом пишете.
Объяснить что так нельзя и будет плохо?
Вы это и так видите.
Читайте туторы. И мануалы.

Hauts
14.02.2013, 15:01
dimaMJ, как вариант решения вашей задачи:

В первом кадре основной временной шкалы инициализируйте основной класс игры:

new GameController(this);


При этому this - это ссылка на основную временную шкалу, которая, по своей сути, и является мувиклипом. А раз так, то можно пользоваться событиями мувиклипа из GameController`а:



private function startGame(){
_rootReference.onEnterFrame = updateGame;
}

private function updateGame(){
_playerController.update();
// some other updates etc.
}


— это просто только что придуманный кусочек основного класса. Нужно начать игру — назначаем на onEnterFrame выполнение метода "updateGame". Внутри метода — обновление игровых сущностей. Например, игрока.

Нужно остановить игру — вызываем метод "stopGame". Внутри него, соответственно, "delete _rootReference.onEnterFrame".

_rootReference в данном случае — это ссылка на основную временную шкалу, которую вы получаете в конструкторе класса, который, в свою очередь, создается в первом кадре, как я описал вначале.