Class BattleUnit
java.lang.Object
net.sf.colossus.game.BattleUnit
- All Implemented Interfaces:
BattleCritter
Class BattleUnit represents a Creature in a specific Battle.
GUI aspects moved to new Class GUIBattleChit.
TODO This should at some point extend Creature, or perhaps Creature can
take care of all so no extend is needed; but right now, Creature handles
some things (e.g. how to change the hexes) differently than how it's done
here, so can not "just delegate it" - needs investigation and checking.
- Author:
- David Ripton, Clemens Katzer (strip GUI issues out, to own new Class)
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionclassListeners who needs to be notified if (currently) hits or dead values change, to trigger repaint: a GUIBattleChit representing this creature -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final CreatureTypeprivate BattleHexprivate booleanprivate final booleanprivate intprivate final Stringprivate final Legionprivate final Set<BattleUnit.Listener> Listeners to be informed when something changes, e.g.private static final Loggerprivate booleanprivate intprivate intprivate intprivate intprivate BattleHexprivate booleanprivate final int -
Constructor Summary
ConstructorsConstructorDescriptionBattleUnit(String id, boolean defender, int tag, BattleHex currentHex, CreatureType type, Legion legion) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddListener(BattleUnit.Listener listener) voidaddPoisonDamage(int damage) voidaddSlowed(int slowValue) intgetHits()getId()intintintintintgetPower()intgetSkill()intintgetSlows()intgetTag()intintgetType()booleanhasMoved()booleanbooleanisDead()booleanbooleanbooleanisLord()booleanbooleanisTitan()voidvoidvoidremoveListener(BattleUnit.Listener listener) voidsetCurrentHex(BattleHex hex) voidsetDead(boolean dead) voidsetHits(int hits) voidsetMoved(boolean moved) voidsetPoison(int damage) voidsetPoisonDamage(int damage) voidsetSlowed(int slowValue) voidsetSlows(int slowValue) voidsetStruck(boolean struck) toString()booleanbooleanwouldDieFrom(int hits)
-
Field Details
-
LOGGER
-
tag
private final int tag -
id
-
defender
private final boolean defender -
creatureType
-
legion
-
hits
private int hits -
poisonDamage
private int poisonDamage -
poison
private int poison -
slows
private int slows -
slowed
private int slowed -
currentHex
-
startingHex
-
moved
private boolean moved -
struck
private boolean struck -
dead
private boolean dead -
listeners
Listeners to be informed when something changes, e.g. right now only GUIBattleChit that needs to repaint if dead or hits change.
-
-
Constructor Details
-
BattleUnit
public BattleUnit(String id, boolean defender, int tag, BattleHex currentHex, CreatureType type, Legion legion)
-
-
Method Details
-
getLegion
-
getTag
public int getTag()- Specified by:
getTagin interfaceBattleCritter
-
getHits
public int getHits()- Specified by:
getHitsin interfaceBattleCritter
-
setHits
public void setHits(int hits) - Specified by:
setHitsin interfaceBattleCritter
-
setPoison
public void setPoison(int damage) -
setPoisonDamage
public void setPoisonDamage(int damage) - Specified by:
setPoisonDamagein interfaceBattleCritter
-
addPoisonDamage
public void addPoisonDamage(int damage) - Specified by:
addPoisonDamagein interfaceBattleCritter
-
setSlowed
public void setSlowed(int slowValue) - Specified by:
setSlowedin interfaceBattleCritter
-
addSlowed
public void addSlowed(int slowValue) - Specified by:
addSlowedin interfaceBattleCritter
-
setSlows
public void setSlows(int slowValue) -
wouldDieFrom
public boolean wouldDieFrom(int hits) - Specified by:
wouldDieFromin interfaceBattleCritter
-
setDead
public void setDead(boolean dead) - Specified by:
setDeadin interfaceBattleCritter
-
isDead
public boolean isDead()- Specified by:
isDeadin interfaceBattleCritter
-
getCurrentHex
- Specified by:
getCurrentHexin interfaceBattleCritter
-
getStartingHex
- Specified by:
getStartingHexin interfaceBattleCritter
-
setCurrentHex
- Specified by:
setCurrentHexin interfaceBattleCritter
-
moveToHex
- Specified by:
moveToHexin interfaceBattleCritter
-
hasMoved
public boolean hasMoved()- Specified by:
hasMovedin interfaceBattleCritter
-
setMoved
public void setMoved(boolean moved) - Specified by:
setMovedin interfaceBattleCritter
-
hasStruck
public boolean hasStruck()- Specified by:
hasStruckin interfaceBattleCritter
-
setStruck
public void setStruck(boolean struck) - Specified by:
setStruckin interfaceBattleCritter
-
getType
- Specified by:
getTypein interfaceBattleCritter
-
isDefender
public boolean isDefender()- Specified by:
isDefenderin interfaceBattleCritter
-
getId
-
isTitan
public boolean isTitan()- Specified by:
isTitanin interfaceBattleCritter
-
isLord
public boolean isLord()- Specified by:
isLordin interfaceBattleCritter
-
isDemiLord
public boolean isDemiLord()- Specified by:
isDemiLordin interfaceBattleCritter
-
getPower
public int getPower()- Specified by:
getPowerin interfaceBattleCritter
-
getTitanPower
public int getTitanPower()- Specified by:
getTitanPowerin interfaceBattleCritter
-
getIdBasedTitanPower
public int getIdBasedTitanPower() -
getTitanPowerViaLegionAndPlayer
public int getTitanPowerViaLegionAndPlayer() -
getSkill
public int getSkill()- Specified by:
getSkillin interfaceBattleCritter
-
getPointValue
public int getPointValue()- Specified by:
getPointValuein interfaceBattleCritter
-
getPoison
public int getPoison()- Specified by:
getPoisonin interfaceBattleCritter
-
getPoisonDamage
public int getPoisonDamage()- Specified by:
getPoisonDamagein interfaceBattleCritter
-
getSlowed
public int getSlowed()- Specified by:
getSlowedin interfaceBattleCritter
-
getSlows
public int getSlows()- Specified by:
getSlowsin interfaceBattleCritter
-
isRangestriker
public boolean isRangestriker()- Specified by:
isRangestrikerin interfaceBattleCritter
-
useMagicMissile
public boolean useMagicMissile()- Specified by:
useMagicMissilein interfaceBattleCritter
-
getDescription
- Specified by:
getDescriptionin interfaceBattleCritter
-
toString
-
addListener
-
removeListener
-
notifyListeners
public void notifyListeners()
-