Page 63

Games em ActionScript 3.0 Criar várias imagens para inimigos na tela e adicioná-las uma a uma com addChild() não parece ser uma opção muito viável, já que isso pesaria bastante no código e precisaríamos de muito mais tempo para criar todos esses inimigos diferentes. Um recurso interessante que muitos games utilizam é o de reaproveitar os inimigos, duplicando-os. O que precisamos é de uma classe que duplique essa quantidade de inimigos na tela de forma dinâmica e randômica, assim cada vez que o jogador executar o game, enfrentará inimigos que partem de posições diferentes. Neste caso iremos reaproveitar a classe inimigoClasse, que foi criada quando fizemos a animação da nave. Este é script que iremos adicionar na classe inimigoClasse. package inimigos { import flash.display.MovieClip; import flash.display.Sprite; import flash.events.Event; public class inimigoClasse extends Sprite { private var nucleo:Object; private var vely:Number = 2; public function inimigoClasse() { // constructor code addEventListener(Event.ADDED_TO_STAGE, quandoAdicionado); } private function quandoAdicionado(event:Event):void{ nucleo = MovieClip(root); addEventListener(Event.ENTER_FRAME, recarregar); } private function recarregar(event:Event):void{ y += vely; for(var i = 0; i < nucleo.atirar.numChildren; i++){ var atingido:Sprite = nucleo.atirar.getChildAt(i); if(hitTestObject(atingido)){ nucleo.atirar.getChildAt(i).removeListeners(); nucleo.atirar.removeChild(atingido); removeEventListener(Event.ENTER_FRAME, recarregar); nucleo.removeChild(this); } } } public function removeListeners():void{ removeEventListener(Event.ENTER_FRAME, recarregar); 63

Web Games com ActionScript 3.0 - 01  

Apostila para iniciantes em desenvolvimentos de jogos. Neste número utilizo a linguagem ActionScript 3.0 por se tratar de uma linguagem robu...

Web Games com ActionScript 3.0 - 01  

Apostila para iniciantes em desenvolvimentos de jogos. Neste número utilizo a linguagem ActionScript 3.0 por se tratar de uma linguagem robu...

Advertisement