public void associateBombs() { UFO ufo = (UFO)FactoryManager.getUfoFactry().cParent.pChild; if (ufo.launch) { if (ufo.x > 50) { Random random = new Random(DateTime.UtcNow.Millisecond); int number = random.Next(1, 3); if (number == 2) { Bomb bomb = getActivatedBomb(); bomb.x = ufo.x; bomb.y = ufo.y; associated = true; } } } if (!associated) { int colCount = FactoryManager.getAlienFactry().columnCount; if (colCount > 0) { Random random = new Random(DateTime.UtcNow.Millisecond); int number = random.Next(1, colCount); PCSTree columnPcsTree = FactoryManager.getAlienFactry().cPCSTree; GameObject column = (GameObject)columnPcsTree.getRoot().pChild; while (column != null) { number--; if (number == 0) { GameObject alien = (GameObject)column.pChild; if (bomb == null) { Bomb bomb = getActivatedBomb(); //bomb = (Bomb)GhostManager.find(GameObject.GameObjectName.Bomb); //GhostManager.remove(bomb); //BombFactory bombF = FactoryManager.getBombFactry(); //bombF.activate(bomb); if (bomb == null) { Debug.WriteLine("bomb null"); } } bomb.x = alien.x; bomb.y = alien.y; break; } column = (GameObject)column.pSibling; } } } associated = false; }
public override void execute(float deltaTime) { Column col = (Column)alien.pParent; alien.remove(); AlienFactory af = FactoryManager.getAlienFactry(); af.reduceCount(alien); if (af.alienCount == 20) { Unit.level1Mid(); AlienGrid ag = (AlienGrid)af.cPCSTree.getRoot(); ag.updateDelta(); } if (af.alienCount == 5) { Unit.level1Last(); AlienGrid ag = (AlienGrid)af.cPCSTree.getRoot(); ag.updateDelta(); } //Commnetd for level 2 if (col.death) { af.reduceCount(col); col.remove(); } }
public static void update() { GameObject alienGrid = (GameObject)FactoryManager.getAlienFactry().cPCSTree.getRoot(); if (alienGrid.pChild == null && currentPlayer.death == false) { currentPlayer.level = new Level2(); currentPlayer.level.load(); } if (currentPlayer.death == true) { // FontManager.add(Font.FontName.GameOver, SpriteBatch.SpriteBatchName.Text, "Game Over", Glyph.Name.Consolas36pt, 400, 500, Unit.redColor); } if (currentPlayer.playerType == Player.PlayerType.Player1) { Font text = FontManager.find(Font.FontName.ScoreNum1); Debug.Assert(text != null); text.updateText("<" + currentPlayer.score + ">"); } else { Font text = FontManager.find(Font.FontName.ScoreNum2); Debug.Assert(text != null); text.updateText("<" + currentPlayer.score + ">"); } }
public void loadAliens() { AlienFactory alienFactory = FactoryManager.getAlienFactry(); AlienGrid alienGrid = (AlienGrid)alienFactory.createAlien(Alien.AlienType.AlienGrid, GameObject.GameObjectName.AlienGrid, 0); alienFactory.setParent(alienGrid); for (int i = 0; i < 11; i++) { alienFactory.setParent(alienGrid); Alien pColumn = alienFactory.createAlien(Alien.AlienType.Column, GameObject.GameObjectName.Column, i + 1, 0.0f, 0.0f); //set Parent alienFactory.setParent(pColumn); float x = Unit.alienPosX; float y = Unit.alienPosY; alienFactory.createAlien(Alien.AlienType.Crab, GameObject.GameObjectName.Crab, i + 2, x + i * 50.0f, y); alienFactory.createAlien(Alien.AlienType.Squid, GameObject.GameObjectName.Squid, i + 3, x + i * 50.0f, y - 60); alienFactory.createAlien(Alien.AlienType.Squid, GameObject.GameObjectName.Squid, i + 4, x + i * 50.0f, y - 120); alienFactory.createAlien(Alien.AlienType.Octopus, GameObject.GameObjectName.Octopus, i + 5, x + i * 50.0f, y - 180); alienFactory.createAlien(Alien.AlienType.Octopus, GameObject.GameObjectName.Octopus, i + 6, x + i * 50.0f, y - 240); } IrrKlang.ISoundEngine sndEngine = FactoryManager.getSoundEngine(); AlienGridAnimation alienGridAni = new AlienGridAnimation(alienGrid, sndEngine); TimerManager.sortedAdd(TimerEvent.TimerEventName.SpriteAnimation, alienGridAni, Unit.AlienGridMoveEventTime); }
public override void load() { Unit.level2Start(); AlienFactory alienFactory = FactoryManager.getAlienFactry(); AlienGrid alienGrid = (AlienGrid)FactoryManager.getAlienFactry().cPCSTree.getRoot(); alienGrid.updateDelta(); PCSTree pcsTree = FactoryManager.getAlienFactry().cPCSTree; SpriteBatch cSpriteBatch = FactoryManager.getAlienFactry().cSpriteBatch; for (int i = 0; i < 11; i++) { FactoryManager.getAlienFactry().setParent(alienGrid); Alien pColumn = (Alien)GhostManager.find(GameObject.GameObjectName.Column); GhostManager.remove(pColumn); pColumn.set(Sprite.SpriteName.NullObject, i + 1, 0, 0); alienFactory.activate(pColumn); alienFactory.setParent(pColumn); float x = Unit.alienPosX; float y = Unit.alienPosY; Alien alien = (Alien)GhostManager.find(GameObject.GameObjectName.Crab); GhostManager.remove(alien); alien.set(Sprite.SpriteName.Crab, i + 2, x + i * 60.0f, y); alienFactory.activate(alien); Alien alien2 = (Alien)GhostManager.find(GameObject.GameObjectName.Squid); GhostManager.remove(alien2); alien2.set(Sprite.SpriteName.Squid, i + 2, x + i * 60.0f, y - 60); alienFactory.activate(alien2); Alien alien3 = (Alien)GhostManager.find(GameObject.GameObjectName.Squid); GhostManager.remove(alien3); alien3.set(Sprite.SpriteName.Squid, i + 2, x + i * 60.0f, y - 120); alienFactory.activate(alien3); Alien alien4 = (Alien)GhostManager.find(GameObject.GameObjectName.Octopus); GhostManager.remove(alien4); alien4.set(Sprite.SpriteName.Octopus, i + 2, x + i * 60.0f, y - 180); alienFactory.activate(alien4); Alien alien5 = (Alien)GhostManager.find(GameObject.GameObjectName.Octopus); GhostManager.remove(alien5); alien5.set(Sprite.SpriteName.Octopus, i + 6, x + i * 60.0f, y - 240); alienFactory.activate(alien5); // alienFactory.createAlien(Alien.AlienType.Squid, GameObject.GameObjectName.Squid, i + 3, x + i * 60.0f, y - 60); // alienFactory.createAlien(Alien.AlienType.Squid, GameObject.GameObjectName.Squid, i+4, x + i * 60.0f, y-120); // alienFactory.createAlien(Alien.AlienType.Octopus, GameObject.GameObjectName.Octopus, i+5, x + i * 60.0f, y-180); // alienFactory.createAlien(Alien.AlienType.Octopus, GameObject.GameObjectName.Octopus, i+6, x + i * 60.0f, y-240); } }
public override void load() { Unit.level1(); AlienFactory alienFactory = FactoryManager.getAlienFactry(); AlienGrid alienGrid = (AlienGrid)alienFactory.cPCSTree.getRoot(); alienGrid.updateDelta(); PCSTree pcsTree = FactoryManager.getAlienFactry().cPCSTree; SpriteBatch cSpriteBatch = alienFactory.cSpriteBatch; for (int i = 0; i < 6; i++) { FactoryManager.getAlienFactry().setParent(alienGrid); Alien pColumn = (Alien)GhostManager.find(GameObject.GameObjectName.Column); GhostManager.remove(pColumn); pColumn.set(Sprite.SpriteName.NullObject, i + 1, 0, 0); alienFactory.activate(pColumn); alienFactory.setParent(pColumn); float x = Unit.alienPosX; float y = Unit.alienPosY; Alien alien = (Alien)GhostManager.find(GameObject.GameObjectName.Crab); GhostManager.remove(alien); alien.set(Sprite.SpriteName.Crab, i + 2, x + i * 60.0f, y); alienFactory.activate(alien); Alien alien2 = (Alien)GhostManager.find(GameObject.GameObjectName.Squid); GhostManager.remove(alien2); alien2.set(Sprite.SpriteName.Squid, i + 2, x + i * 60.0f, y - 60); alienFactory.activate(alien2); Alien alien3 = (Alien)GhostManager.find(GameObject.GameObjectName.Squid); GhostManager.remove(alien3); alien3.set(Sprite.SpriteName.Squid, i + 2, x + i * 60.0f, y - 120); alienFactory.activate(alien3); Alien alien4 = (Alien)GhostManager.find(GameObject.GameObjectName.Octopus); GhostManager.remove(alien4); alien4.set(Sprite.SpriteName.Octopus, i + 2, x + i * 60.0f, y - 180); alienFactory.activate(alien4); Alien alien5 = (Alien)GhostManager.find(GameObject.GameObjectName.Octopus); GhostManager.remove(alien5); alien5.set(Sprite.SpriteName.Octopus, i + 6, x + i * 60.0f, y - 240); alienFactory.activate(alien5); } ShipFactory shipFactory = FactoryManager.getShipFactry(); ShipRoot shipGrid = (ShipRoot)shipFactory.cPCSTree.getRoot(); CannonShip Ship = Ship = (CannonShip)GhostManager.find(GameObject.GameObjectName.CannonShip); GhostManager.remove(Ship); shipFactory.activate(Ship); Ship.x = Unit.shipPosX; Ship.y = Unit.shipPosY; Ship = (CannonShip)GhostManager.find(GameObject.GameObjectName.CannonShip); GhostManager.remove(Ship); shipFactory.activate(Ship); Ship.x = 40; Ship.y = 30; Ship = (CannonShip)GhostManager.find(GameObject.GameObjectName.CannonShip); GhostManager.remove(Ship); shipFactory.activate(Ship); Ship.x = 110; Ship.y = 30; //42 brics //7 col //4 bricks ShieldFactory shieldFactory = FactoryManager.getShieldFactry(); ShieldGrid shieldGrid = (ShieldGrid)shieldFactory.cPCSTree.getRoot(); shieldFactory.setParent(shieldGrid); for (int x = 0; x < 8; x = x + 2) { shieldFactory.setParent(shieldGrid); Shield shieldUnit = shieldFactory.createShield(Shield.ShieldType.ShieldUnit, GameObject.GameObjectName.ShieldUnit); shieldFactory.setParent(shieldUnit); Shield pColumn; pColumn = shieldFactory.createShield(Shield.ShieldType.ShieldColumn, GameObject.GameObjectName.ShieldColumn, 0); shieldFactory.setParent(pColumn); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (60 + (x * 100)), 150); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (60 + (x * 100)), 140); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (60 + (x * 100)), 130); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (60 + (x * 100)), 120); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (60 + (x * 100)), 110); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (60 + (x * 100)), 100); shieldFactory.setParent(shieldUnit); pColumn = shieldFactory.createShield(Shield.ShieldType.ShieldColumn, GameObject.GameObjectName.Column, 0); shieldFactory.setParent(pColumn); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (70 + (x * 100)), 160); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (70 + (x * 100)), 150); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (70 + (x * 100)), 140); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (70 + (x * 100)), 130); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (70 + (x * 100)), 120); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (70 + (x * 100)), 110); shieldFactory.setParent(shieldUnit); pColumn = shieldFactory.createShield(Shield.ShieldType.ShieldColumn, GameObject.GameObjectName.Column, 0); shieldFactory.setParent(pColumn); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (80 + (x * 100)), 170); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (80 + (x * 100)), 160); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (80 + (x * 100)), 150); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (80 + (x * 100)), 140); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (80 + (x * 100)), 130); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (80 + (x * 100)), 120); shieldFactory.setParent(shieldUnit); pColumn = shieldFactory.createShield(Shield.ShieldType.ShieldColumn, GameObject.GameObjectName.Column, 0); shieldFactory.setParent(pColumn); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (90 + (x * 100)), 170); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (90 + (x * 100)), 160); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (90 + (x * 100)), 150); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (90 + (x * 100)), 140); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (90 + (x * 100)), 130); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (90 + (x * 100)), 120); shieldFactory.setParent(shieldUnit); pColumn = shieldFactory.createShield(Shield.ShieldType.ShieldColumn, GameObject.GameObjectName.Column, 0); shieldFactory.setParent(pColumn); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (100 + (x * 100)), 170); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (100 + (x * 100)), 160); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (100 + (x * 100)), 150); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (100 + (x * 100)), 140); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (100 + (x * 100)), 130); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (100 + (x * 100)), 120); shieldFactory.setParent(shieldUnit); pColumn = shieldFactory.createShield(Shield.ShieldType.ShieldColumn, GameObject.GameObjectName.Column, 0); shieldFactory.setParent(pColumn); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (110 + (x * 100)), 160); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (110 + (x * 100)), 150); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (110 + (x * 100)), 140); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (110 + (x * 100)), 130); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (110 + (x * 100)), 120); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (110 + (x * 100)), 110); shieldFactory.setParent(shieldUnit); pColumn = shieldFactory.createShield(Shield.ShieldType.ShieldColumn, GameObject.GameObjectName.ShieldColumn, 0); shieldFactory.setParent(pColumn); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (120 + (x * 100)), 150); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (120 + (x * 100)), 140); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (120 + (x * 100)), 130); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (120 + (x * 100)), 120); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (120 + (x * 100)), 110); shieldFactory.createShield(Shield.ShieldType.ShieldBrick, GameObject.GameObjectName.ShieldBrick, 0, (120 + (x * 100)), 100); } }