evil-inside/src/ei/game/scene/units/Unit.java
Jesper Lundin edaf440d2b
2007-04-04 17:56:15 +00:00

44 lines
1,020 B
Java

package ei.game.scene.units;
import ei.engine.math.Vector2f;
import ei.engine.math.Vector2i;
import ei.engine.scene.Sprite;
import ei.game.gamestate.InGameState;
import ei.game.player.Human;
import ei.game.scene.GameEntity;
import ei.game.scene.weapons.Weapon;
public abstract class Unit extends GameEntity{
private Sprite looks;
private Weapon weapon;
private Vector2i oldPos;
public Unit(int l) {
super(l);
looks = new Sprite("none");
InGameState.getHuman().addUnit(this);
setPos(0, 0);
}
public Sprite getSprite(){
return looks;
}
public void setSprite(Sprite image) {
looks = image;
}
public void setPos(int x, int y) {
oldPos = new Vector2i(x, y);
InGameState.getMap().setPos(this, x, y);
}
public void move(int x, int y) {
if(oldPos!=null) {
InGameState.getMap().removePos(oldPos.getX(), oldPos.getY());
}
setPos(x, y);
looks.move(InGameState.getMap().getPixelByPos((int)x, (int)y));
oldPos = new Vector2i(x, y);
}
}