avatar display on game pages
+ multiples user.status bug unresolved, temp rollback in generateToken() + STATUS enum fix game.service.ts + multiples smalls refactoring
This commit is contained in:
@@ -94,10 +94,15 @@ async function clientAnnounceListener(this: WebSocket, data: string)
|
||||
"Content-Type": "application/json",
|
||||
},
|
||||
body: JSON.stringify(body)
|
||||
});
|
||||
if (!response.ok)
|
||||
})
|
||||
.catch(error => console.log("ERROR : " + error));
|
||||
if (!response || !response.ok)
|
||||
{
|
||||
this.send(JSON.stringify( new ev.EventError((await response.json()).message) ));
|
||||
let errMessage = "validate token error";
|
||||
if (response) {
|
||||
errMessage = (await response.json()).message;
|
||||
}
|
||||
this.send(JSON.stringify( new ev.EventError(errMessage) ));
|
||||
clientTerminate(clientsMap.get(this.id));
|
||||
return;
|
||||
}
|
||||
@@ -154,6 +159,8 @@ function publicMatchmaking(player: ClientPlayer)
|
||||
|
||||
const compatiblePlayers: ClientPlayer[] = [];
|
||||
compatiblePlayers.push(player);
|
||||
|
||||
/* // Replace with this code to enable the possibility to play against self
|
||||
for (const [id, client] of matchmakingMap)
|
||||
{
|
||||
if (client.matchOptions === matchOptions)
|
||||
@@ -163,10 +170,9 @@ function publicMatchmaking(player: ClientPlayer)
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
} */
|
||||
|
||||
// TODO: Replace with this code to disable the possibility to play against self
|
||||
/* for (const [id, client] of matchmakingMap)
|
||||
for (const [id, client] of matchmakingMap)
|
||||
{
|
||||
if (client.matchOptions === matchOptions && client.username !== player.username)
|
||||
{
|
||||
@@ -175,7 +181,7 @@ function publicMatchmaking(player: ClientPlayer)
|
||||
break;
|
||||
}
|
||||
}
|
||||
} */
|
||||
}
|
||||
|
||||
if (compatiblePlayers.length >= minPlayersNumber) {
|
||||
compatiblePlayers.forEach((client) => {
|
||||
@@ -231,7 +237,6 @@ function privateMatchmaking(player: ClientPlayer)
|
||||
token : player.token
|
||||
})
|
||||
})
|
||||
.then(x => x.json())
|
||||
.catch(error => console.log("ERROR : " + error));
|
||||
clientTerminate(player);
|
||||
}
|
||||
@@ -252,18 +257,26 @@ function createGameSession(playersArr: ClientPlayer[], matchOptions: en.MatchOpt
|
||||
gameSession.unreadyPlayersMap.set(client.id, client);
|
||||
client.socket.once("message", playerReadyConfirmationListener);
|
||||
});
|
||||
|
||||
let gameSessionPlayersIterator = gameSession.playersMap.values();
|
||||
const eventMatchmakingComplete = new ev.EventMatchmakingComplete(
|
||||
(<ClientPlayer>gameSessionPlayersIterator.next().value).username,
|
||||
(<ClientPlayer>gameSessionPlayersIterator.next().value).username
|
||||
);
|
||||
|
||||
// REFACTORING: Not pretty, hardcoded two players.
|
||||
// Could be done in gameSession maybe ?
|
||||
const gameSessionPlayersIterator = gameSession.playersMap.values();
|
||||
gameSessionPlayersIterator = gameSession.playersMap.values();
|
||||
let player: ClientPlayer;
|
||||
player = (<ClientPlayer>gameSessionPlayersIterator.next().value);
|
||||
player.racket = gameSession.components.playerLeft;
|
||||
player.socket.send(JSON.stringify( new ev.EventMatchmakingComplete(en.PlayerSide.left) ));
|
||||
eventMatchmakingComplete.side = en.PlayerSide.left;
|
||||
player.socket.send(JSON.stringify( eventMatchmakingComplete ));
|
||||
|
||||
player = (<ClientPlayer>gameSessionPlayersIterator.next().value);
|
||||
player.racket = gameSession.components.playerRight;
|
||||
player.socket.send(JSON.stringify( new ev.EventMatchmakingComplete(en.PlayerSide.right) ));
|
||||
eventMatchmakingComplete.side = en.PlayerSide.right;
|
||||
player.socket.send(JSON.stringify( eventMatchmakingComplete ));
|
||||
// REFACTORING
|
||||
|
||||
setTimeout(function abortMatch() {
|
||||
|
||||
@@ -18,10 +18,13 @@ export class EventAssignId extends ServerEvent {
|
||||
}
|
||||
|
||||
export class EventMatchmakingComplete extends ServerEvent {
|
||||
side: en.PlayerSide;
|
||||
constructor(side: en.PlayerSide) {
|
||||
side: en.PlayerSide = en.PlayerSide.noSide;
|
||||
playerOneUsername: string;
|
||||
playerTwoUsername: string;
|
||||
constructor(playerOneUsername: string, playerTwoUsername: string) {
|
||||
super(en.EventTypes.matchmakingComplete);
|
||||
this.side = side;
|
||||
this.playerOneUsername = playerOneUsername;
|
||||
this.playerTwoUsername = playerTwoUsername;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user