You cannot skip/done until Robber is finished!
Signed-off-by: James Ketrenos <james_eikona@ketrenos.com>
This commit is contained in:
parent
3fe70fa739
commit
3aebd0325a
@ -354,6 +354,7 @@ const processRoll = (game, dice) => {
|
||||
game.turn.roll = game.dice[0] + game.dice[1];
|
||||
if (game.turn.roll === 7) {
|
||||
addChatMessage(game, null, `ROBBER! ROBBER! ROBBER!`);
|
||||
game.turn.robberDone = false;
|
||||
delete game.turn.placedRobber;
|
||||
for (let id in game.sessions) {
|
||||
const player = game.sessions[id].player;
|
||||
@ -870,7 +871,16 @@ router.put("/:id/:action/:value?", async (req, res) => {
|
||||
case 'pass':
|
||||
if (game.turn.name !== name) {
|
||||
error = `You cannot pass when it isn't your turn.`
|
||||
break;
|
||||
}
|
||||
|
||||
/* If the current turn is a robber placement, and everyone has
|
||||
* discarded, set the limits for where the robber can be placed */
|
||||
if (game.turn && game.turn.roll === 7 && !game.turn.robberDone) {
|
||||
error = `Robber is in action. Turn can not stop until all Robber tasks are resolved.`;
|
||||
break;
|
||||
}
|
||||
|
||||
if (!error) {
|
||||
const next = getNextPlayer(game, name);
|
||||
game.turn = {
|
||||
@ -922,6 +932,7 @@ router.put("/:id/:action/:value?", async (req, res) => {
|
||||
addChatMessage(game, session, `${session.name} must select player to steal resource from.`);
|
||||
} else {
|
||||
game.turn.actions = [];
|
||||
game.turn.robberDone = true;
|
||||
delete game.turn.limits;
|
||||
addChatMessage(game, session, `The Robber was moved to a terrain with no other players.`);
|
||||
}
|
||||
@ -955,6 +966,7 @@ router.put("/:id/:action/:value?", async (req, res) => {
|
||||
addChatMessage(game, session,
|
||||
`${session.name} randomly stole ${type} from ${playerNameFromColor(game, value)}.`);
|
||||
}
|
||||
game.turn.robberDone = true;
|
||||
break;
|
||||
case 'place-settlement':
|
||||
if (game.state !== 'initial-placement' && game.state !== 'normal') {
|
||||
|
Loading…
x
Reference in New Issue
Block a user