Package net.sf.colossus.client
Class GameClientSide
- java.lang.Object
-
- net.sf.colossus.game.Game
-
- net.sf.colossus.client.GameClientSide
-
-
Field Summary
Fields Modifier and Type Field Description private Player
activePlayer
private Client
client
private PlayerClientSide
noone
This is used as a placeholder for activePlayer and battleActivePlayer since they are sometimes accessed when they are not available.-
Fields inherited from class net.sf.colossus.game.Game
battle, phase, players, turnNumber
-
-
Constructor Summary
Constructors Constructor Description GameClientSide(Variant variant, java.lang.String[] playerNames)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
cleanupBattle()
Player
getActivePlayer()
int
getAverageLegionPointValue()
Return the average point value of all legions in the game.Player
getBattleActivePlayer()
BattleClientSide
getBattleCS()
BattlePhase
getBattlePhase()
int
getBattleTurnNumber()
Legion
getLegionByMarkerId(java.lang.String markerId)
java.util.List<java.lang.Boolean>
getLegionCreatureCertainties(Legion legion)
Return a list of Booleansjava.util.List<java.lang.String>
getLegionImageNames(Legion legion)
Return a list of Strings.Player
getNoonePlayer()
Player
getPlayerByMarkerId(java.lang.String markerId)
(package private) Player
getPlayerByName(java.lang.String playerName)
Resolve playerName into Player object.(package private) Player
getPlayerByNameIgnoreNull(java.lang.String playerName)
Resolve playerName into Player object.Player
getPlayerByTag(int tag)
private Player
getPlayerUsingColor(java.lang.String shortColor)
void
initBattle(MasterHex hex, int battleTurnNumber, Player battleActivePlayer, BattlePhase battlePhase, Legion attacker, Legion defender)
PlayerClientSide
initPlayerInfo(java.util.List<java.lang.String> infoStrings, java.lang.String searchedName)
boolean
isBattleOngoing()
boolean
isBattlePhase(BattlePhase phase)
boolean
isTurnStateStillUninitialized()
ActivePlayer is set first time to something different than "noone" when setupTurnState is called first time.void
setActivePlayer(Player player)
void
setBattleActivePlayer(Player battleActivePlayer)
void
setBattlePhase(BattlePhase battlePhase)
void
setBattleTurnNumber(int battleTurnNumber)
void
setClient(Client client)
void
updatePlayerInfo(java.util.List<java.lang.String> infoStrings)
-
Methods inherited from class net.sf.colossus.game.Game
addPlayer, clearEngagementData, containsOpposingLegions, createEngagement, findEngagements, findLegionsWithSummonables, getAllLegions, getAttacker, getBattle, getBattleActiveLegion, getBattleSite, getBattleStrike, getCaretaker, getDefender, getEnemyLegions, getEnemyLegions, getEngagement, getFirstEnemyLegion, getFirstFriendlyLegion, getFirstLegion, getFriendlyLegions, getGameOverMessage, getLegionsByHex, getMovementRoll, getNumEnemyLegions, getNumFriendlyLegions, getNumHumansRemaining, getNumLegions, getNumLivingCreatures, getNumLivingPlayers, getNumPlayers, getNumRemoteRemaining, getPhase, getPlayers, getPreliminaryPlayerNames, getTurnNumber, getVariant, isEngagementInProgress, isEngagementOngoing, isGameOver, isOccupied, isPhase, onlyAIsRemain, setGameOver, setMovementRoll, setPhase, setTurnNumber
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.sf.colossus.client.IOracle
getEngagement, getNumPlayers, getTurnNumber
-
-
-
-
Field Detail
-
client
private Client client
-
noone
private final PlayerClientSide noone
This is used as a placeholder for activePlayer and battleActivePlayer since they are sometimes accessed when they are not available. TODO this is a hack. Those members should just not be accessed at times where they are not available. It seems to happen during startup (the not yet set case) and in some GUI parts after battles, when battleActivePlayer has been reset already.
-
activePlayer
private Player activePlayer
-
-
Constructor Detail
-
GameClientSide
public GameClientSide(Variant variant, java.lang.String[] playerNames)
-
-
Method Detail
-
setClient
public void setClient(Client client)
-
initPlayerInfo
public PlayerClientSide initPlayerInfo(java.util.List<java.lang.String> infoStrings, java.lang.String searchedName)
-
getNoonePlayer
public Player getNoonePlayer()
-
updatePlayerInfo
public void updatePlayerInfo(java.util.List<java.lang.String> infoStrings)
-
getPlayerByNameIgnoreNull
Player getPlayerByNameIgnoreNull(java.lang.String playerName)
Resolve playerName into Player object. Name might be null, then returns null.- Parameters:
playerName
-- Returns:
- The player object for given player name, null if name was null
-
getPlayerByName
Player getPlayerByName(java.lang.String playerName)
Resolve playerName into Player object. Name must not be null. If no player for given name found, it would throw IllegalArgumentException- Parameters:
playerName
-- Returns:
- Player object for given name.
-
getPlayerByTag
public Player getPlayerByTag(int tag)
-
getPlayerUsingColor
private Player getPlayerUsingColor(java.lang.String shortColor)
-
getPlayerByMarkerId
public Player getPlayerByMarkerId(java.lang.String markerId)
-
getAverageLegionPointValue
public int getAverageLegionPointValue()
Return the average point value of all legions in the game.
-
getLegionByMarkerId
public Legion getLegionByMarkerId(java.lang.String markerId)
- Overrides:
getLegionByMarkerId
in classGame
-
setActivePlayer
public void setActivePlayer(Player player)
-
getActivePlayer
public Player getActivePlayer()
- Specified by:
getActivePlayer
in interfaceIOracle
-
isTurnStateStillUninitialized
public boolean isTurnStateStillUninitialized()
ActivePlayer is set first time to something different than "noone" when setupTurnState is called first time.- Returns:
- true if activePlayer is still "noone".
-
initBattle
public void initBattle(MasterHex hex, int battleTurnNumber, Player battleActivePlayer, BattlePhase battlePhase, Legion attacker, Legion defender)
-
getBattleCS
public BattleClientSide getBattleCS()
- Specified by:
getBattleCS
in interfaceIOracle
-
isBattleOngoing
public boolean isBattleOngoing()
-
getBattlePhase
public BattlePhase getBattlePhase()
- Specified by:
getBattlePhase
in interfaceIOracle
-
setBattlePhase
public void setBattlePhase(BattlePhase battlePhase)
-
isBattlePhase
public boolean isBattlePhase(BattlePhase phase)
-
setBattleActivePlayer
public void setBattleActivePlayer(Player battleActivePlayer)
-
setBattleTurnNumber
public void setBattleTurnNumber(int battleTurnNumber)
-
getBattleTurnNumber
public int getBattleTurnNumber()
- Overrides:
getBattleTurnNumber
in classGame
-
getBattleActivePlayer
public Player getBattleActivePlayer()
- Specified by:
getBattleActivePlayer
in interfaceIOracle
-
cleanupBattle
public void cleanupBattle()
-
getLegionImageNames
public java.util.List<java.lang.String> getLegionImageNames(Legion legion)
Return a list of Strings. Use the proper string for titans and unknown creatures.- Specified by:
getLegionImageNames
in interfaceIOracle
-
getLegionCreatureCertainties
public java.util.List<java.lang.Boolean> getLegionCreatureCertainties(Legion legion)
Return a list of Booleans- Specified by:
getLegionCreatureCertainties
in interfaceIOracle
-
-