package games.strategy.engine.gamePlayer; import games.strategy.engine.data.PlayerID; /** * A player of the game. * * <p> * Game players communicate to the game through a PlayerBridge. * </p> */ public interface IGamePlayer extends IRemotePlayer { /** * Called before the game starts. */ void initialize(IPlayerBridge bridge, PlayerID id); /** * @return The name of the game player (what nation we are). */ String getName(); /** * @return The type of player we are (human or a kind of ai). */ String getType(); /** * Start the given step. stepName appears as it does in the game xml file. * The game step will finish executing when this method returns. */ void start(String stepName); /** * Called when the game is stopped (like if we are closing the window or leaving the game). */ void stopGame(); /* * (now in superclass) * * @return the id of this player. This id is initialized by the initialize method in IGamePlayer. * public PlayerID getPlayerID(); */ }