package net.sf.colossus.game; import net.sf.colossus.variant.BattleHex; import net.sf.colossus.variant.CreatureType; /** * * @author Romain Dolbeau */ public interface BattleCritter { CreatureType getType(); BattleHex getCurrentHex(); String getDescription(); int getHits(); int getPointValue(); int getPower(); int getPoisonDamage(); int getPoison(); int getSlows(); int getSlowed(); int getSkill(); BattleHex getStartingHex(); int getTag(); int getTitanPower(); boolean hasMoved(); boolean hasStruck(); void moveToHex(BattleHex hex); boolean isDead(); boolean isDefender(); boolean isLord(); boolean isDemiLord(); boolean isRangestriker(); boolean isTitan(); void setDead(boolean dead); void setCurrentHex(BattleHex hex); void setHits(int hits); void setMoved(boolean moved); void setPoisonDamage(int damage); void setSlowed(int slowValue); void addPoisonDamage(int damage); void addSlowed(int slowValue); void setStruck(boolean struck); boolean useMagicMissile(); boolean wouldDieFrom(int hits); }