UNPKG

@andreabiagini5/applicazioni-e-servizi-web-project

Version:
51 lines 1.94 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.guestMatchmaking = exports.authMatchmaking = void 0; const matchmaking_1 = require("../controllers/matchmaking"); const socket_1 = require("../sockets/socket"); const authMatchmaking = (socket) => { socket.on('requestMatch', async (data) => { await (0, matchmaking_1.requestMatch)(socket, socket.data.username); }); socket.on('requestMatchWithBot', async (data) => { await (0, matchmaking_1.requestMatchWithBot)(socket, socket.data.username); }); }; exports.authMatchmaking = authMatchmaking; const guestMatchmaking = (socket) => { socket.on('requestMatch', async (data) => { let guestUsername = socket.data.guestUsername; if (!guestUsername) { guestUsername = setGuestUsername(socket); } await (0, matchmaking_1.requestMatch)(socket, guestUsername); }); socket.on('requestMatchWithBot', async (data) => { let guestUsername = socket.data.guestUsername; if (!guestUsername) { guestUsername = setGuestUsername(socket); } await (0, matchmaking_1.requestMatchWithBot)(socket, guestUsername); }); }; exports.guestMatchmaking = guestMatchmaking; const setGuestUsername = (socket) => { let guestUsername; if (!socket.data.guestUsername) { guestUsername = getGuestUsername(socket, 0); socket.data.username = guestUsername; } return guestUsername; }; const getGuestUsername = (socket, postfix) => { const candidateUsername = postfix === 0 ? `guest-${socket.id}` : `guest-${socket.id}-${postfix}`; if ((0, socket_1.getPlayerSockets)().has(candidateUsername)) { // Username exists, try next postfix return getGuestUsername(socket, postfix + 1); } else { // Username is available return candidateUsername; } }; //# sourceMappingURL=matchmaking.js.map