Update board on transition from nameless -> named
Signed-off-by: James Ketrenos <james_eikona@ketrenos.com>
This commit is contained in:
parent
03b34f6677
commit
e6ad81502f
@ -94,42 +94,46 @@ const Board = () => {
|
||||
}
|
||||
}
|
||||
|
||||
if ('placements' in data.update) {
|
||||
if (!equal(data.update.placements, placements)) {
|
||||
if ('placements' in data.update && !equal(data.update.placements, placements)) {
|
||||
console.log(`board - placements`, data.update.placements);
|
||||
setPlacements(data.update.placements);
|
||||
}
|
||||
}
|
||||
|
||||
if ('signature' in data.update && data.update.signature !== signature) {
|
||||
/* The following are only updated if there is a new game
|
||||
* signature */
|
||||
|
||||
if ('pipOrder' in data.update) {
|
||||
if ('pipOrder' in data.update && !equal(data.update.pipOrder, pipOrder)) {
|
||||
console.log(`board - setting new pipOrder`);
|
||||
setPipOrder(data.update.pipOrder);
|
||||
}
|
||||
|
||||
if ('borderOrder' in data.update) {
|
||||
if ('borderOrder' in data.update && !equal(data.update.borderOrder, borderOrder)) {
|
||||
console.log(`board - setting new borderOrder`);
|
||||
setBorderOrder(data.update.borderOrder);
|
||||
}
|
||||
|
||||
if ('tileOrder' in data.update) {
|
||||
if ('tileOrder' in data.update && !equal(data.update.tileOrder, tileOrder)) {
|
||||
console.log(`board - setting new tileOrder`);
|
||||
setTileOrder(data.update.tileOrder);
|
||||
}
|
||||
|
||||
console.log(`Triggering new board layout`);
|
||||
if (data.update.signature !== signature) {
|
||||
console.log(`board - setting new signature`);
|
||||
setSignature(data.update.signature);
|
||||
}
|
||||
|
||||
/* This is permanent static data from the server -- do not update
|
||||
* once set */
|
||||
if ('pips' in data.update && !pips) {
|
||||
console.log(`board - setting new static pips`);
|
||||
setPips(data.update.pips);
|
||||
}
|
||||
if ('tiles' in data.update && !tiles) {
|
||||
console.log(`board - setting new static tiles`);
|
||||
setTiles(data.update.tiles);
|
||||
}
|
||||
if ('borders' in data.update && !borders) {
|
||||
console.log(`board - setting new static borders`);
|
||||
setBorders(data.update.borders);
|
||||
}
|
||||
break;
|
||||
@ -205,7 +209,11 @@ const Board = () => {
|
||||
onResize();
|
||||
|
||||
useEffect(() => {
|
||||
console.log(`Generating static corner data... should only occur once per reload.`);
|
||||
if (!ws) {
|
||||
return;
|
||||
}
|
||||
|
||||
console.log(`Generating static corner data... should only occur once per reload or socket reconnect.`);
|
||||
const onCornerClicked = (event, corner) => {
|
||||
let type;
|
||||
if (event.currentTarget.getAttribute('data-type') === 'settlement') {
|
||||
@ -290,11 +298,15 @@ const Board = () => {
|
||||
return corners;
|
||||
};
|
||||
|
||||
|
||||
setCornerElements(generateCorners());
|
||||
}, [ws, setCornerElements]);
|
||||
|
||||
useEffect(() => {
|
||||
if (!ws) {
|
||||
return;
|
||||
}
|
||||
|
||||
console.log(`Generating static road data... should only occur once per reload or socket reconnect.`);
|
||||
const Road = ({road}) => {
|
||||
const onRoadClicked = (road) => {
|
||||
console.log(`Road clicked: ${road.index}`);
|
||||
@ -399,6 +411,10 @@ const Board = () => {
|
||||
|
||||
/* Generate Pip, Tile, and Border elements */
|
||||
useEffect(() => {
|
||||
if (!ws) {
|
||||
return;
|
||||
}
|
||||
console.log(`board - Generate pip, border, and tile elements`);
|
||||
const Pip = ({pip}) => {
|
||||
const onPipClicked = (pip) => {
|
||||
if (!ws) { console.error(`board - sendPlacement - ws is NULL`); return; }
|
||||
@ -676,6 +692,7 @@ const Board = () => {
|
||||
&& turn.color === color
|
||||
&& (state === 'initial-placement' || state === 'normal'));
|
||||
|
||||
console.log(`board - tile elements`, tileElements);
|
||||
return (
|
||||
<div className="Board" ref={board}>
|
||||
<div className="BoardBox">
|
||||
|
@ -883,6 +883,8 @@ const setPlayerName = (game, session, name) => {
|
||||
unselected: getFilteredUnselected(game),
|
||||
chat: game.chat
|
||||
});
|
||||
/* Now that a name is set, send the full game to the player */
|
||||
sendGameToPlayer(game, session);
|
||||
}
|
||||
|
||||
const colorToWord = (color) => {
|
||||
|
Loading…
x
Reference in New Issue
Block a user