completely changed how that bad boy works
This commit is contained in:
@@ -9,14 +9,16 @@ function computeTurn()
|
||||
GAMEUSERS OBJECT
|
||||
{
|
||||
uid: uid,
|
||||
username: name,
|
||||
turn: bool,
|
||||
|
||||
name: name,
|
||||
score: int,
|
||||
me: bool,
|
||||
turn: bool
|
||||
}
|
||||
NOTES
|
||||
- In play order
|
||||
*/
|
||||
let Users = {};
|
||||
let Users = [];
|
||||
// just shorthand, so long as i remember to keep it updated lmao
|
||||
let MyTurn = false;
|
||||
|
||||
function initGame(boardstate, tileset, myplayer, players)
|
||||
@@ -49,12 +51,27 @@ function initGame(boardstate, tileset, myplayer, players)
|
||||
}
|
||||
addPiecesToDrawer(drawerStructure);
|
||||
|
||||
// populate Users
|
||||
for (player of players)
|
||||
{
|
||||
Users.push({
|
||||
uid: player.uid,
|
||||
name: player.name,
|
||||
score: player.score,
|
||||
me: myplayer.uid === player.uid,
|
||||
turn: false
|
||||
});
|
||||
}
|
||||
Users[0].turn = true;
|
||||
if (Users[0].me)
|
||||
MyTurn = true;
|
||||
|
||||
console.log(Users, MyTurn);
|
||||
|
||||
// construct UI
|
||||
initUI();
|
||||
|
||||
console.log(players);
|
||||
setupUsersUI(Users, 0);
|
||||
|
||||
setupUsersUI(players, 0);
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -64,11 +81,16 @@ function startMyTurn()
|
||||
|
||||
}
|
||||
|
||||
function
|
||||
function startOthersTurn(useruid)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
function playMyTurn(stagedpieces)
|
||||
{
|
||||
if (!MyTurn) return;
|
||||
if (!MyTurn) return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function processOthersTurn()
|
||||
|
||||
@@ -342,11 +342,11 @@
|
||||
|
||||
<script src="index.js"></script>
|
||||
<script src="network.js"></script>
|
||||
<script src="ui.js"></script>
|
||||
<script src="dragable.js"></script>
|
||||
<script src="board.js"></script>
|
||||
<script src="pieces.js"></script>
|
||||
<script src="game.js"></script>
|
||||
<script src="ui.js"></script>
|
||||
<script src="events.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -210,7 +210,8 @@ function onGameBegin(socket, args)
|
||||
{
|
||||
ConnectionState.forEach(e => {
|
||||
e.innerHTML = localeString('error-game-begin');
|
||||
}); return;
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
const status = initGame(boardstate, tileset, myplayer, players);
|
||||
|
||||
@@ -20,7 +20,7 @@ function initUI()
|
||||
ChatBox.value = '';
|
||||
}
|
||||
|
||||
const UserUIReplacer = (p, n, s) => `<div class="p${p} player">
|
||||
const UserUIReplacer = (p, u, n, s) => `<div class="p${p} player${u} player">
|
||||
<div class="p${0}-name player-name">${n}</div>
|
||||
Score:<div class="p${p}-score player-score">${s}</div>
|
||||
</div>`;
|
||||
@@ -31,7 +31,7 @@ function setupUsersUI(users, turn)
|
||||
let elements = [];
|
||||
for (const user in users)
|
||||
{
|
||||
elements.push(UserUIReplacer(user, users[user].name, users[user].score));
|
||||
elements.push(UserUIReplacer(user, users[user].uid, users[user].name, users[user].score));
|
||||
}
|
||||
IPlayerScores.forEach(e => {
|
||||
e.innerHTML += elements.join('');
|
||||
@@ -39,28 +39,35 @@ function setupUsersUI(users, turn)
|
||||
|
||||
console.log(users[turn].uid, JSON.parse(sessionStorage.getItem('user')).uid)
|
||||
|
||||
if (MyTurn)
|
||||
{
|
||||
document.querySelectorAll(`.p${turn}`).forEach(e => {
|
||||
e.classList.toggle('myturn');
|
||||
});
|
||||
} else
|
||||
{
|
||||
document.querySelectorAll(`.p${turn}`).forEach(e => {
|
||||
e.classList.toggle('theirturn');
|
||||
});
|
||||
}
|
||||
updateUsersUI();
|
||||
}
|
||||
|
||||
function updateUsersUI(users, turn)
|
||||
// takes users object from
|
||||
function updateUsersUI(users)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
function changeTurn()
|
||||
{
|
||||
if (MyTurn) {
|
||||
|
||||
for (const user of Users)
|
||||
{
|
||||
if (user.turn && user.me)
|
||||
{
|
||||
document.querySelectorAll(`.player${user.uid}`).forEach(e => {
|
||||
e.classList.add('myturn');
|
||||
});
|
||||
} else if (user.turn)
|
||||
{
|
||||
document.querySelectorAll(`.player${user.uid}`).forEach(e => {
|
||||
e.classList.add('theirturn');
|
||||
});
|
||||
} else
|
||||
{
|
||||
document.querySelectorAll(`.player${user.uid}`).forEach(e => {
|
||||
if (e.classList.contains('myturn'))
|
||||
e.classList.remove('myturn');
|
||||
if (e.classList.contains('myturnprocess'))
|
||||
e.classList.remove('myturnprocess');
|
||||
if (e.classList.contains('theirturn'))
|
||||
e.classList.remove('theirturn');
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -95,7 +102,15 @@ function onPlayTurn()
|
||||
{
|
||||
// get all staged pieces
|
||||
const stagedPieces = getAllStagedPieces();
|
||||
playMyTurn(stagedPieces);
|
||||
const status = playMyTurn(stagedPieces);
|
||||
|
||||
if (!status)
|
||||
{
|
||||
alert('Invalid turn!')
|
||||
} else
|
||||
{
|
||||
// switch state to processing
|
||||
}
|
||||
}
|
||||
|
||||
function onMessageSend()
|
||||
|
||||
Reference in New Issue
Block a user