diff --git a/client/src/Activities.css b/client/src/Activities.css
index 69d9108..089967a 100644
--- a/client/src/Activities.css
+++ b/client/src/Activities.css
@@ -30,11 +30,25 @@
align-items: center;
}
-.Activity b,
-.Activity .Dice {
+.Activities > div.Go {
+ background-color: rgba(36, 148, 46, 0.5);
+ filter: drop-shadow(0px 0px 10px rgb(54, 219, 68));
+}
+
+.Activities > div.Requirement {
+ background-color: rgba(219, 208, 54, 0.5);
+ filter: drop-shadow(0px 0px 10px rgb(219, 208, 54));
+}
+
+.Activities b,
+.Activities .Dice {
margin-left: 0.25em;
}
+.Activities b {
+ margin-right: 0.25em;
+}
+
.Activities > div:last-child {
border-top: 1px solid black;
}
diff --git a/client/src/Activities.js b/client/src/Activities.js
index 4d3ea37..5df5e39 100644
--- a/client/src/Activities.js
+++ b/client/src/Activities.js
@@ -63,7 +63,8 @@ const Activities = ({ table }) => {
game = table.game,
isTurn = (game.turn && game.turn.color === game.color) ? true : false,
normalPlay = (game.state === 'initial-placement' || game.state === 'normal'),
- mustDiscard = game.player ? (parseInt(game.player.mustDiscard ? game.player.mustDiscard : 0) !== 0) : false;
+ mustDiscard = game.player ? parseInt(game.player.mustDiscard ? game.player.mustDiscard : 0) : 0,
+ mustPlaceRobber = (game.turn && !game.turn.placedRobber && game.turn.robberInAction);
const list = game.activities
.filter(activity => game.timestamp - activity.date < 11000)
@@ -74,17 +75,24 @@ const Activities = ({ table }) => {
return (
{ list }
-
- { !isTurn && normalPlay && !mustDiscard &&
-
Waiting for
{table.game.turn.name} to complete their turn.
+ { !isTurn && normalPlay && game.player && mustDiscard === 0 && mustPlaceRobber &&
+
{table.game.turn.name} must move the Robber.
}
- { isTurn && normalPlay && game.player && mustDiscard &&
-
You must discard.
+ { isTurn && normalPlay && game.player && mustDiscard === 0 && mustPlaceRobber &&
+
You must move the Robber.
+ }
+
+ { normalPlay && game.player && mustDiscard !== 0 &&
+
You must discard {mustDiscard} cards.
}
+ { !isTurn && normalPlay &&
+
It is
{table.game.turn.name}'s turn.
+ }
+
{ isTurn && normalPlay &&
-
+
}
);
diff --git a/client/src/Board.css b/client/src/Board.css
index 85b3eba..a4e66a7 100644
--- a/client/src/Board.css
+++ b/client/src/Board.css
@@ -164,7 +164,13 @@ div[disabled] .Option {
.Option .Tile-Shape,
.Option .Corner-Shape,
.Option .Road-Shape {
- background-color: rgba(255, 255, 255, 0.5);
+ background-color: rgba(255, 255, 255, 0.5) !important;
+}
+
+.Option .Tile-Shape:hover,
+.Option .Corner-Shape:hover,
+.Option .Road-Shape :hover{
+ background-color: rgba(255, 255, 255, 0.75) !important;
}
.Robber .Pip-Shape {
diff --git a/server/routes/games.js b/server/routes/games.js
index e52a3fc..85e9fd0 100755
--- a/server/routes/games.js
+++ b/server/routes/games.js
@@ -399,7 +399,7 @@ const processRoll = (game, dice) => {
}
} else {
mustDiscard.forEach(player =>
- addChatMessage(game, null, `${getPlayerName(game, player)} must discard ${player.mustDiscard} resource cards the robber steals while fleeing!`)
+ addChatMessage(game, null, `The robber was rolled and ${getPlayerName(game, player)} must discard ${player.mustDiscard} resource cards!`)
);
}
} else {
@@ -2454,7 +2454,7 @@ router.put("/:id/:action/:value?", async (req, res) => {
}
addChatMessage(game, null, `${session.name} discarded ${sum} resource cards.`);
if (player.mustDiscard) {
- addChatMessage(game, null, `${session.name} must discard ${player.mustDiscard} more cards.`);
+ addChatMessage(game, null, `${session.name} did not discard enough and must discard ${player.mustDiscard} more cards.`);
break;
}