SVP details: Send SOCSVPTextMessage for each award from SOCServer.playerEvent; javadocs
SVP details: SOCHandPanel popup on click SVP count
SOCBoardLarge, SOCBoardLayout2 enhance: Add generic 'other layout parts' for scenarios
SC_PIRI: Add PiratePath to SOCBoardLarge at server; draw PP in SOCBoardPanel
_SC_PIRI: Place initial pieces at startGame; javadocs
_SC_PIRI: SOCBoardLarge +movePirateHexAlongPath
_SC_PIRI: Move pirate each roll. From SOCGame.rollDice, call movePirate, stealFromPlayerPirateFleet; javadocs
BL.movePirateHexAlongPath: fix off-by-one at wraparound
Refactor: Reuse SOCMoveRobberResult object in game; javadocs
forceEndTurn(PLACING_SHIP); also check that resources were returned for PLACING_ROAD
Initial pieces for scenario: Send piece counts after, not before, avoid extra decrement at client; also send fortress in joinGame
SOCGame.forceEndTurn(WAITING_FOR_ROB_CLOTH_OR_RESOURCE, STARTS_WAITING_FOR_PICK_GOLD_RESOURCE); javadocs
SOCGame.forceEndTurnStartState indents, comment ret types; whitespace
_SC_PIRI: SOCGame.rollDice: Report pirate fleet attack loss; javadocs RollResult, movePirate
_SC_PIRI: handleROLLDICE: Report pirate fleet attack loss
SOCServer +messageToGameExcept(txt)
SOCRobotBrain.debugPrintBrainStatus: all-caps for TRUE flag values
_SC_PIRI: rbrain: check scenario at DISCARDREQUEST to prevent forceEndTurn; continues 376966a
rbrain.cancelWrongPiecePlacement: Clear waitingForGameState when gstate PLAY; clear counter at CHOOSEPLAYERREQUEST
_SC_PIRI: SOCPlayer +numWarships