public interface EarlyServerProxy
| Modifier and Type | Method and Description |
|---|---|
NetGameModel |
acceptTrade(boolean willAccept)
Notifies the server whether this player has decided to accept or reject a trade
|
void |
addAI(AIType aiType)
Adds an AI to the game
|
NetGameModel |
buildCity(VertexLocation vertexLocation)
Notifies the server that the user has decided to build a city
|
NetGameModel |
buildRoad(EdgeLocation edgeLocation,
boolean free)
Notifies the server that the user has decided to build a road
|
NetGameModel |
buildSettlement(VertexLocation vertexLocation,
boolean free)
Notifies the server that the user has decided to build a settlement
|
NetGameModel |
buyDevCard()
Notifies the server that the user has bought a development card
|
NetGame |
createGame(boolean randomTiles,
boolean randomNumbers,
boolean randomPorts,
java.lang.String name)
Creates a game on the server
|
NetGameModel |
discardCards(java.util.List<java.lang.Integer> resourceList)
Notifies the server that the user has discarded cards
|
NetGameModel |
finishTurn()
Notifies the server that the user has finished his turn
|
NetGameModel |
getGameModel()
Retrieves the game model from the server
|
int |
getUserId()
Gets the player ID
|
java.lang.String |
getUserName()
Gets the current user's name
|
void |
joinGame(int id,
CatanColor color) |
java.util.List<AIType> |
listAI() |
java.util.List<NetGame> |
listGames()
Fetches a list of ongoing games
|
boolean |
loginUser(java.lang.String username,
java.lang.String password)
Logs the specified user in and returns a User object if the user was
successfully logged in.
|
NetGameModel |
maritimeTrade(int ratio,
ResourceType inputResource,
ResourceType outputResource)
Notifies the server that the user has decided to initiate a maritime trade
|
NetGameModel |
monopolyCard(ResourceType resource)
Notifies the server that the user has played a monopoly card
|
NetGameModel |
monumentCard()
Notifies the server that the user has played a monument card
|
NetGameModel |
offerTrade(java.util.List<java.lang.Integer> resourceList,
int receiver)
Notifies the server that the user has decided to offer a trade to another player
|
boolean |
registerUser(java.lang.String username,
java.lang.String password)
Registers a user with the specified username and password
|
NetGameModel |
roadBuildingCard(EdgeLocation location1,
EdgeLocation location2)
Notifies the server that the user has played a road building card
|
NetGameModel |
robPlayer(int victimIndex,
HexLocation location)
Notifies the server that the user has decided to rob another player
|
NetGameModel |
rollNumber(int roll)
Reports the result of a dice roll to the server
|
NetGameModel |
sendChat(java.lang.String content)
Sends a chat message from the specified user to the server
|
NetGameModel |
soldierCard(int victimIndex,
HexLocation hexLocation)
Notifies the server that the user has played a soldier card
|
NetGameModel |
yearOfPlentyCard(ResourceType resource1,
ResourceType resource2)
Notifies the server that the user has played a year of plenty card
|
boolean loginUser(java.lang.String username,
java.lang.String password)
throws ServerProxyException
username - The username of the user to log inpassword - The password of the user to log inServerProxyException - if the user could not be logged inboolean registerUser(java.lang.String username,
java.lang.String password)
throws ServerProxyException
username - The username of the user to be registeredpassword - The password of the user to be registeredServerProxyException - if this user could not be registeredjava.util.List<NetGame> listGames() throws ServerProxyException
ServerProxyExceptionjava.lang.String getUserName()
throws ServerProxyException
ServerProxyException - if not logged inint getUserId()
NetGame createGame(boolean randomTiles, boolean randomNumbers, boolean randomPorts, java.lang.String name) throws ServerProxyException
randomTiles - Whether the server should place random tilesrandomNumbers - Whether the server should place random number chitsrandomPorts - Whether the server should place random portsname - The name of the game to be createdServerProxyException - if something goes wrongvoid joinGame(int id,
CatanColor color)
throws ServerProxyException
color - the color the user wishes to represent himServerProxyException - if something goes wrongNetGameModel getGameModel() throws ServerProxyException
ServerProxyException - if something goes wrongvoid addAI(AIType aiType) throws ServerProxyException
aiType - the type of AI the user wishes to addServerProxyException - if there is no logged in userjava.util.List<AIType> listAI() throws ServerProxyException
ServerProxyException - if there is no logged in userNetGameModel sendChat(java.lang.String content) throws ServerProxyException
content - The content of the chat messageServerProxyException - if there is no logged in userNetGameModel rollNumber(int roll) throws ServerProxyException
roll - The result of the user's rollServerProxyException - if there is no logged in userNetGameModel robPlayer(int victimIndex, HexLocation location) throws ServerProxyException
victimIndex - The index of the victim of the user's robbinglocation - The new hex location of the robberServerProxyException - if there is no logged in userNetGameModel finishTurn() throws ServerProxyException
user - The User who has finished his turnServerProxyException - if there is no logged in userNetGameModel buyDevCard() throws ServerProxyException
ServerProxyException - if there is no logged in userNetGameModel yearOfPlentyCard(ResourceType resource1, ResourceType resource2) throws ServerProxyException
resource1 - The first chosen resourceresource2 - The second chosen resourceServerProxyException - if there is no logged in userNetGameModel roadBuildingCard(EdgeLocation location1, EdgeLocation location2) throws ServerProxyException
location1 - The EdgeLocation location of the first roadlocation2 - The EdgeLocation location of the second cardServerProxyException - if there is no logged in userNetGameModel soldierCard(int victimIndex, HexLocation hexLocation) throws ServerProxyException
victimIndex - The index of the player who is being robbedhexLocation - The new hex location of the robberServerProxyException - if there is no logged in userNetGameModel monopolyCard(ResourceType resource) throws ServerProxyException
resource - The resource that the player has chosen to have a monopoly onServerProxyException - if there is no logged in userNetGameModel monumentCard() throws ServerProxyException
ServerProxyException - if there is no logged in userNetGameModel buildRoad(EdgeLocation edgeLocation, boolean free) throws ServerProxyException
edgeLocation - The edge location of the roadfree - Whether this road was free (only true during the set up phases)ServerProxyException - if there is no logged in userNetGameModel buildSettlement(VertexLocation vertexLocation, boolean free) throws ServerProxyException
vertexLocation - The vertex location of the settlementfree - Whether this settlement was free (only true during the set up phases)ServerProxyException - if there is no logged in userNetGameModel buildCity(VertexLocation vertexLocation) throws ServerProxyException
vertexLocation - The vertex location of the cityServerProxyException - if there is no logged in userNetGameModel offerTrade(java.util.List<java.lang.Integer> resourceList, int receiver) throws ServerProxyException
resourceList - A list of the resources that the user wishes to trade, in this order: brick, ore, sheep,
wheat, and wood. Negative values denotes that this user will give these resources, and positive values denote
the resources that will be receivedreceiver - The index of the player who will receive this trade offerServerProxyException - if there is no logged in userNetGameModel acceptTrade(boolean willAccept) throws ServerProxyException
willAccept - true if the user will accept the trade, false if notServerProxyException - if there is no logged in userNetGameModel maritimeTrade(int ratio, ResourceType inputResource, ResourceType outputResource) throws ServerProxyException
ratio - The ratio of resources demanded by the harborinputResource - The resources traded awayoutputResource - The resource receivedServerProxyException - if there is no logged in userNetGameModel discardCards(java.util.List<java.lang.Integer> resourceList) throws ServerProxyException
resourceList - A list of integers that denotes how many of each resource the user will discard. The
order is brick, ore, sheep, wheat, and woodServerProxyException - if there is no logged in user