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 PlayeractivePlayerprivate Clientclientprivate PlayerClientSidenooneThis 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 voidcleanupBattle()PlayergetActivePlayer()intgetAverageLegionPointValue()Return the average point value of all legions in the game.PlayergetBattleActivePlayer()BattleClientSidegetBattleCS()BattlePhasegetBattlePhase()intgetBattleTurnNumber()LegiongetLegionByMarkerId(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.PlayergetNoonePlayer()PlayergetPlayerByMarkerId(java.lang.String markerId)(package private) PlayergetPlayerByName(java.lang.String playerName)Resolve playerName into Player object.(package private) PlayergetPlayerByNameIgnoreNull(java.lang.String playerName)Resolve playerName into Player object.PlayergetPlayerByTag(int tag)private PlayergetPlayerUsingColor(java.lang.String shortColor)voidinitBattle(MasterHex hex, int battleTurnNumber, Player battleActivePlayer, BattlePhase battlePhase, Legion attacker, Legion defender)PlayerClientSideinitPlayerInfo(java.util.List<java.lang.String> infoStrings, java.lang.String searchedName)booleanisBattleOngoing()booleanisBattlePhase(BattlePhase phase)booleanisTurnStateStillUninitialized()ActivePlayer is set first time to something different than "noone" when setupTurnState is called first time.voidsetActivePlayer(Player player)voidsetBattleActivePlayer(Player battleActivePlayer)voidsetBattlePhase(BattlePhase battlePhase)voidsetBattleTurnNumber(int battleTurnNumber)voidsetClient(Client client)voidupdatePlayerInfo(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:
getLegionByMarkerIdin classGame
-
setActivePlayer
public void setActivePlayer(Player player)
-
getActivePlayer
public Player getActivePlayer()
- Specified by:
getActivePlayerin 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:
getBattleCSin interfaceIOracle
-
isBattleOngoing
public boolean isBattleOngoing()
-
getBattlePhase
public BattlePhase getBattlePhase()
- Specified by:
getBattlePhasein 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:
getBattleTurnNumberin classGame
-
getBattleActivePlayer
public Player getBattleActivePlayer()
- Specified by:
getBattleActivePlayerin 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:
getLegionImageNamesin interfaceIOracle
-
getLegionCreatureCertainties
public java.util.List<java.lang.Boolean> getLegionCreatureCertainties(Legion legion)
Return a list of Booleans- Specified by:
getLegionCreatureCertaintiesin interfaceIOracle
-
-