Documentation/Доступные-события

Доступные события


Оглавление документа


На настоящий момент доступны в объектах Gm2Flex доступны следующие события:

1. Жизненный цикл объекта

1.1. create


Вызывается после создания объекта, возможно, до подгрузки спрайта.


public function create():void {
  self.vspeed = -10;
  self.hspeed = -1;
}

1.2. step


Вызывается на каждом шаге игры.


public function step():void {
  speedProcessed = false;
}

1.3. destroy


Вызывается после уничтожения объекта (на сцене сей объект больше не присутствует).


public function destroy():void {
  if(global.getNumberOfInstances("Ball")==0) {
    global.roomRestartCurrent();	
  }			
}

2. Полезные события

2.1. outsideRoom


Вызывается, когда объект покинул пределы уровня.


public function outsideRoom():void {
  self.destroy();
}

3. Коллизии

3.1. collision<X>


Вызывается во время столкновения с другим объектом вида <X>.


public function collisionPlatform(other:GLogicObject):void {
  var centerX: Number = self.x + self.width / 2;
  var centerY: Number = self.y + self.height / 2;
			
  self.vspeed = - Math.abs(self.vspeed);
  self.hspeed = maxHSpeed * (centerX - (other.x)) / (other.width / 2);
}

4. Клавиатура

4.1. keyDown


Вызывается, когда keyboardHooker (глобальный параметр, означает объект, отслеживающий клавиатурные события) зафиксировал нажатие клавиши.


public function keyDown(event:KeyboardEvent):void {		
  if(event.keyCode == Keyboard.LEFT) {
    self.hspeed = -11;
  }
  if(event.keyCode == Keyboard.RIGHT) {
    self.hspeed = 11;
  }
}

4.2. keyUp


Вызывается, когда keyboardHooker (глобальный параметр, означает объект, отслеживающий клавиатурные события) зафиксировал отпускание клавиши.


public function keyUp(event:KeyboardEvent):void {		
  if(event.keyCode == Keyboard.LEFT) {
    self.hspeed = 0;
  }
  if(event.keyCode == Keyboard.RIGHT) {
    self.hspeed = 0;
  }
}

5. Таймеры


Лучше всего демонстрирует использование таймеров пример:


public function collisionPrize(other:GLogicObject):void {
  other.destroy();
  self.sprite = "SuperHero";
  global.timerSet("SuperEnd", 20000); // на 20 секунд
}

public function timerSuperEnd():void {
  self.sprite = "NormalHero";
}


 
Подразделы
Раздел не содержит подстраниц.
Это вики-система!

Пожалуйста, регистрируйтесь, входите и улучшайте, то, что хотите!