From 9138ec840224d534aba04595d9b5292b645b2a28 Mon Sep 17 00:00:00 2001 From: Ziver Koc Date: Mon, 7 May 2007 15:33:49 +0000 Subject: [PATCH] fixed factory --- raw/media/buildings/commandCenter.max | Bin 1748992 -> 1748992 bytes src/ei/game/gamestate/LoadingState.java | 9 +++++ src/ei/game/player/PlayerHandler.java | 4 +++ src/ei/game/scene/buildings/Building.java | 2 +- src/ei/game/scene/map/Factory.java | 38 +++++++++++++++++----- 5 files changed, 44 insertions(+), 9 deletions(-) diff --git a/raw/media/buildings/commandCenter.max b/raw/media/buildings/commandCenter.max index 76d842230095999ec3cea28b17702860a03c2b24..38bef0668356b1a37a1929440162d14a16fd3f76 100644 GIT binary patch delta 9410 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 delta 9130 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 diff --git a/src/ei/game/gamestate/LoadingState.java b/src/ei/game/gamestate/LoadingState.java index 0460a73..b9354b9 100644 --- a/src/ei/game/gamestate/LoadingState.java +++ b/src/ei/game/gamestate/LoadingState.java @@ -32,6 +32,15 @@ public class LoadingState extends GameState{ "data/map/sand.jpg", "data/map/factory/factory_1.png", "data/map/factory/factory_2.png", + "data/map/parking/parking_01.png", + "data/map/parking/parking_04.png", + "data/map/parking/parking_07.png", + "data/map/parking/parking_02.png", + "data/map/parking/parking_05.png", + "data/map/parking/parking_08.png", + "data/map/parking/parking_03.png", + "data/map/parking/parking_06.png", + "data/map/parking/parking_09.png", "data/map/redstone/redstone0000.png", "data/map/redstone/redstone0001.png", "data/map/redstone/redstone0002.png", diff --git a/src/ei/game/player/PlayerHandler.java b/src/ei/game/player/PlayerHandler.java index a3c3460..598cbd1 100644 --- a/src/ei/game/player/PlayerHandler.java +++ b/src/ei/game/player/PlayerHandler.java @@ -119,6 +119,10 @@ public class PlayerHandler { } public void setGaiaPlayer(Player p){ + if(gaia != null && playerNode.contains(gaia.getNode())){ + playerNode.remove(gaia.getNode()); + } gaia = p; + playerNode.add(gaia.getNode()); } } diff --git a/src/ei/game/scene/buildings/Building.java b/src/ei/game/scene/buildings/Building.java index 1478ad3..0b51a3d 100644 --- a/src/ei/game/scene/buildings/Building.java +++ b/src/ei/game/scene/buildings/Building.java @@ -180,7 +180,7 @@ public abstract class Building extends GameEntity{ buildQueue.peek().getNode().setLocation(moveFrom); } Vector2i temp = Map.getPosByPixel(moveTo.getX()+unitNode.getLocation().getX(), moveTo.getY()+unitNode.getLocation().getY()); - System.out.println("lol "+temp+" "+moveTo.getX()); + if(!InGameState.getMap().isPosEmpty(temp.getX(),temp.getY())){ InGameState.getMap().getPos(temp.getX(),temp.getY()).move(false, oldPos.getX()+(size/2), oldPos.getY()-(size/2)); } diff --git a/src/ei/game/scene/map/Factory.java b/src/ei/game/scene/map/Factory.java index 0b30d4a..0c1cea1 100644 --- a/src/ei/game/scene/map/Factory.java +++ b/src/ei/game/scene/map/Factory.java @@ -5,24 +5,26 @@ import ei.engine.math.Vector2i; import ei.engine.scene.Entity; import ei.engine.scene.Sprite; import ei.game.player.Player; +import ei.game.scene.SelectBox; +import ei.game.scene.buildings.Building; +import ei.game.scene.weapons.Explotion; +import ei.game.scene.weapons.WeaponHandler; -public class Factory extends MapEntity{ +public class Factory extends Building{ private static final String[] img = { "data/map/factory/factory_1.png", "data/map/factory/factory_2.png" }; - + private SelectBox selectionBox; private Sprite factory; public Factory(Vector2i pos, Player p) { - super(500, pos, p); - } - - @Override - public void init() { + super(500, pos, p, 4); factory = new Sprite("Factory",img[(int)(Math.random()*img.length)]); - factory.setSize(new Vector2f(50,50)); + factory.setSize(new Vector2f(200,200)); getNode().add(factory); + + selectionBox = new SelectBox(0,200,200,getMaxLife()); } @Override @@ -33,6 +35,26 @@ public class Factory extends MapEntity{ @Override public int getMaintenanceCost() { return 0; + } + + @Override + public Entity getGroundSprite() { + return null; + } + + @Override + public void attack(Vector2i target, boolean play) { + + } + + @Override + public void destroyed() { + WeaponHandler.getInstance().addWeapon(new Explotion(new Vector2f(getNode().getLocation().getX(), getNode().getLocation().getY()))); + } + + @Override + protected SelectBox getSelection() { + return selectionBox; } }