|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object soc.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 FormField 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 pirateMethod Detail |
---|
public java.lang.String getGame()
SOCMessageForGame
null
if message is in per-game structures or code.
At the server, the message treater dispatches incoming SOCMessageForGame
s
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 SOCMessageForGame
SOCMessage.GAME_NONE
public 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 |