|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectsoc.message.SOCMessage
soc.message.SOCMoveRobber
public class SOCMoveRobber
This message (from client to server) means that a client player wants to move the robber or pirate ship, or (from server to all players) a player has moved the robber or pirate ship.
From the server, the message will be followed by other messages
about gaining/losing resources. So for this message, the client
should only call SOCBoard.setRobberHex(int, boolean)
and not SOCGame.moveRobber(int, int).
Once the robber is placed on the board, it cannot be taken off the board.
The pirate can be taken off by sending coordinate = 0.
This message uses positive coordinates when moving the robber, and negative
when moving the pirate. Moving the pirate to hex 0x0104 is done with a
SOCMoveRobber(-0x0104) message, which would cause the client to call
board.setPirateHex(0x0104, boolean).
SOCMovePiece,
Serialized Form| Field Summary | |
|---|---|
private int |
coordinates
the hex coordinates of the piece (positive for robber, negative for pirate) |
private java.lang.String |
game
the name of the game |
private int |
playerNumber
the number of the player moving the robber |
private static long |
serialVersionUID
|
| Constructor Summary | |
|---|---|
SOCMoveRobber(java.lang.String na,
int pn,
int co)
create a MoveRobber message |
|
| Method Summary | |
|---|---|
int |
getCoordinates()
Get the robber or pirate's new location. |
java.lang.String |
getGame()
Name of game this message is for. |
int |
getPlayerNumber()
|
static SOCMoveRobber |
parseDataStr(java.lang.String s)
parse the command string into a MoveRobber message |
java.lang.String |
toCmd()
Command string: MOVEROBBER sep game sep2 playerNumber sep2 coordinates |
static java.lang.String |
toCmd(java.lang.String na,
int pn,
int co)
Command string: MOVEROBBER sep game sep2 playerNumber sep2 coordinates |
java.lang.String |
toString()
Simple human-readable representation, used for debug purposes. |
| Methods inherited from class soc.message.SOCMessage |
|---|
arrayIntoStringBuf, enumIntoStringBuf, getClassNameShort, getMaximumVersion, getMinimumVersion, getType, isSingleLineAndSafe, isSingleLineAndSafe, toMsg |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface soc.message.SOCMessageForGame |
|---|
getType |
| Field Detail |
|---|
private static final long serialVersionUID
private java.lang.String game
private int playerNumber
private int coordinates
| Constructor Detail |
|---|
public SOCMoveRobber(java.lang.String na,
int pn,
int co)
na - name of the gamepn - player numberco - hex coordinates: positive for robber, negative for pirate| Method Detail |
|---|
public java.lang.String getGame()
SOCMessageForGamenull if message is in per-game structures or code.
At the server, the message treater dispatches incoming SOCMessageForGames
based on their getGame():
null: Message is ignored
SOCMessage.GAME_NONE: Message is handled by SOCServer itself
GameHandler for that game's type. If no game with that name is found,
the message is ignored.
getGame in interface SOCMessageForGameSOCMessage.GAME_NONEpublic int getPlayerNumber()
public int getCoordinates()
public java.lang.String toCmd()
toCmd in class SOCMessage
public static java.lang.String toCmd(java.lang.String na,
int pn,
int co)
na - the name of the gamepn - player numberco - coordinates
public static SOCMoveRobber parseDataStr(java.lang.String s)
s - the String to parse
public java.lang.String toString()
SOCMessage
toString in class SOCMessage
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||