var enemies:Array = new Array();var bullets:Array = new Array();
İlk önce düşman uçaklarının ve ateşlediğimiz roketlerin instancelarını barındıracağımız 2 adet array oluşturuyoruz.var plane:Sprite = new Sprite;plane.graphics.beginFill(0x0000FF);plane.graphics.drawRect(-10.5,0,20,35);plane.graphics.endFill();addChild(plane);
Uçağımız için basit bir kare çiziyoruz. Siz isterseniz daha önceden hazırlamış olduğunuz MovieClip’i kullanabilirsiniz.plane.startDrag(true);
Bu kod uçağımızın fare ile hareket etmesini sağlayacak.var i:Number = 0;while(i<=3){var enemy:Sprite = new Sprite;enemy.graphics.beginFill(0xFF0000);enemy.graphics.drawRect(-10.5,0,20,25);enemy.graphics.endFill();enemy.x = stage.stageWidth*Math.random();enemy.y = (200*Math.random())*-1;enemies[i] = new Array(enemy, 0);addChild(enemy);i++;}
Bu bölüm kare şeklinde düşman uçaklarını oluşturan bölüm. En baştaki uçağımız gibi kare çizdirmek yerine siz movieclip kullanabilirsiniz.stage.addEventListener(Event.ENTER_FRAME, stageHandle);stage.addEventListener(MouseEvent.CLICK, fire);
Eventlerimizi başlatıyoruz. stageHandleve fire adında iki fonksiyon yazacağız şimdi.
function fire(e:MouseEvent){var bullet:Sprite = new Sprite;bullet.graphics.beginFill(0xFFFFFF);bullet.graphics.drawRect(-2.5,0,5,5);bullet.graphics.endFill();bullet.x = plane.x;bullet.y = plane.y;bullets.push(bullet);addChild(bullet);}
Ateş etmemizi sağlayan fire fonksiyonumuz.function stageHandle(e:Event){for(var en:Number = 0; en < enemies.length; en++) {var enemy = enemies[en][0];var destroyEnemy = enemies[en][1];enemy.y += 3;if(enemy.y > stage.stageHeight){enemy.y = (stage.stageHeight*Math.random())*-1;enemy.x = stage.stageWidth*Math.random();}// Bu bölüm düşman uçaklarını aşağı doğru kaydırıyor. Eğer uçak ekrandan dışarı çıkarsa sahnenin üstüne tekrar dönüyor.if(destroyEnemy == 1){enemy.y = (stage.stageHeight*Math.random())*-1;enemy.x = stage.stageWidth*Math.random();enemies[en][1] = 0;}// Eğer roket bir uçağa çarparsa destroyEnemydeğişkenini değiştirecek ve uçak ekrandan yok olacak. Onun yerine yeni bir uçak gelecek.}for(var bl:Number = 0; bl < bullets.length; bl++) {var bullet = bullets[bl];bullet.y -= 5;if(bullet.y < 0){removeChild(bullet);bullets.splice(bl,1);}// Bu kısım roketleri yokarı doğru sürüklüyor. Eğer roketler her hangi bir uçağa çarpmadan ekrandan çıkarsa removeChild Yaparak sahneden kaldırılıyor ve kullanıcının belleğinde boş yere alan işgal etmesi önleniyor.for(var ht:Number = 0; ht < enemies.length; ht++) {if(bullet.hitTestObject(enemies[ht][0])){enemies[ht][1] = 1;bullets.splice(bl,1);removeChild(bullet);}// Bu kızım roketlerin uçaklara çarpıp çarpmadığını kontrol ediyor.}}}
Kodları indir