Translated names from the networking protocol

This commit is contained in:
luca0N! 2021-08-16 23:17:48 -03:00
parent 18edf28ed8
commit ede1d438a9
Signed by: luca0N
GPG Key ID: 2E7B4655CF16D7D6
1 changed files with 30 additions and 30 deletions

View File

@ -166,7 +166,7 @@ wss.on('connection', ws => {
}
// Retornar um código de sucesso ao cliente, incluindo a lista de jogadores conectados, estado e o líder da sala.
ws.send(JSON.stringify(new Query("SUCCESSFUL", "SERVER", "ROOM_EXISTS", { opções: roomObj.opções, líder: roomObj.líder, estado: roomObj.estado, jogadores: jogadores })));
ws.send(JSON.stringify(new Query("SUCCESSFUL", "SERVER", "ROOM_EXISTS", { options: roomObj.opções, leader: roomObj.líder, roomStatus: roomObj.estado, players: jogadores })));
} else {
// A sala não existe. Vamos criar ela e adicionar o usuário nela.
// salas.push(new Room(sala, [cliente]));
@ -214,7 +214,7 @@ wss.on('connection', ws => {
alertarClientesEvento('EVENT_PLAYER_MESSAGE', cliente.sala, { apelido: cliente.apelido, mensagem: mensagem });
break;
}
case "INICIAR_PARTIDA":{
case "START_MATCH":{
// O cliente que está tentando iniciar a partida é do líder?
if (roomObj.líder !== cliente.apelido){
// Este cliente não é do líder da sala. Retornar um erro ao cliente e cancelar a tarefa.
@ -234,10 +234,10 @@ wss.on('connection', ws => {
roomObj.novaPartida();
alertarClientesEvento("EVENT_ROOM_STATUS_CHANGED", cliente.sala, { estado: roomObj.estado });
alertarClientesEvento("EVENT_ROOM_STATUS_CHANGED", cliente.sala, { roomStatus: roomObj.estado });
// E vamos alertar todos os clientes sobre o jogador escolhido.
alertarClientesEvento("EVENT_JOGADOR_ESCOLHIDO", cliente.sala, { jogador: roomObj.vezDe });
alertarClientesEvento("EVENT_PLAYER_CHOSEN", cliente.sala, { nickname: roomObj.vezDe });
break;
}
case "ESCOLHER_PALAVRA":{
@ -319,7 +319,7 @@ wss.on('connection', ws => {
alertarClientesEvento("EVENT_PALAVRA_ESCOLHIDA", cliente.sala, { palavra: { tamanho: resposta.extra.palavra.length, espaços: roomObj.procurar(' '), hífens: roomObj.procurar('-') }, tema: resposta.extra.tema, termoVezDe: roomObj.termoVezDe });
break;
}
case "ENVIAR_TERMO":{
case "SEND_TERM":{
// A sala está em partida?
if (roomObj.estado !== "IN_SESSION"){
ws.send(JSON.stringify(new Query("ERRO", "SERVER", "SALA_ESTADO_NÃO_EM_PARTIDA")));
@ -346,20 +346,20 @@ wss.on('connection', ws => {
}
// Verificar o tipo do termo enviado.
let letra = resposta.extra.termo.length === 1;
let letra = resposta.extra.term.length === 1;
let salaClientes = roomObj.clientes;
let e = Util.receberClientePorApelido(roomObj, roomObj.vezDe); // escolhedor
// O termo está vazio?
if (resposta.extra.termo.replace(/ /g, "") === ""){
if (resposta.extra.term.replace(/ /g, "") === ""){
ws.send(JSON.stringify(new Query("PEDIDO_CANCELADO", "SERVER", "TERMO_INVÁLIDO", { erroDescrição: "TERMO_VAZIO" })));
return;
}
// O jogador deseja pular?
if (roomObj.estadoTermo === "AGUARDANDO_TERMO" &&
resposta.extra.termo === '?'){
alertarClientesEvento("EVENT_JOGADOR_PULOU_TERMO", cliente.sala, { jogador: cliente.apelido });
resposta.extra.term === '?'){
alertarClientesEvento("EVENT_PLAYER_SKIPPED_TERM_TURN", cliente.sala, { nickname: cliente.apelido });
// Escolher outro jogador.
escolherJogadorTermo(roomObj);
return;
@ -375,9 +375,9 @@ wss.on('connection', ws => {
cliente.uas = Date.now();
roomObj.uas = Date.now();
resposta.extra.termo = resposta.extra.termo.toUpperCase();
resposta.extra.term = resposta.extra.term.toUpperCase();
let resultadoTermo = roomObj.processarTermo(resposta.extra.termo);
let resultadoTermo = roomObj.processarTermo(resposta.extra.term);
let lp = resultadoTermo.letrasPreenchidas;
let r = resultadoTermo.resultado;
@ -386,17 +386,17 @@ wss.on('connection', ws => {
let dif = 0, // diferença da nova pontuação do jogador que enviou o termo
dife = 0; // diferença da nova pontuação do jogador que enviou a palavra atual
switch (r){
case "LETRA_JÁ_ESCOLHIDA":{
alertarClientesEvento("EVENT_TERMO_ESCOLHIDO", cliente.sala, { tipo: letra ? "LETRA" : "TERMO", termo: resposta.extra.termo, resultado: r });
case "LETTER_ALREADY_CHOSEN":{
alertarClientesEvento("EVENT_TERM_CHOSEN", cliente.sala, { tipo: letra ? "LETRA" : "TERMO", termo: resposta.extra.termo, resultado: r });
tentarNovamente = true;
break;
}
case "PALAVRA_JÁ_ESCOLHIDA":{
alertarClientesEvento("EVENT_TERMO_ESCOLHIDO", cliente.sala, { tipo: letra ? "LETRA" : "TERMO", termo: resposta.extra.termo, resultado: r });
case "TERM_ALREADY_CHOSEN":{
alertarClientesEvento("EVENT_TERM_CHOSEN", cliente.sala, { tipo: letra ? "LETRA" : "TERMO", termo: resposta.extra.termo, resultado: r });
tentarNovamente = true;
break;
}
case "LETRAS_PREENCHIDAS":{
case "LETTER_PRESENT":{
alertarClientesEvento("EVENT_TERMO_ESCOLHIDO", cliente.sala, { tipo: letra ? "LETRA" : "TERMO", termo: resposta.extra.termo, resultado: r, ldc: roomObj.ldc });
// Também acrescentar pontuação ao jogador.
@ -409,12 +409,12 @@ wss.on('connection', ws => {
alertarClientesEvento("EVENT_JOGADOR_PONTUAÇÃO_ALTERADA", cliente.sala, { jogador: e.apelido, pontos: e.pontos, diferença: dife });
break;
}
case "LETRA_INEXISTENTE":{
case "LETTER_NOT_PRESENT":{
alertarClientesEvento("EVENT_TERMO_ESCOLHIDO", cliente.sala, { tipo: letra ? "LETRA" : "TERMO", termo: resposta.extra.termo, resultado: r });
if (alterarTin(roomObj)) return;
break;
}
case "PALAVRA_CORRETA":{
case "TERM_GUESSED":{
alertarClientesEvento("EVENT_TERMO_ESCOLHIDO", cliente.sala, { acertou: true, palavra: roomObj.palavra, resultado: r });
// Acrescentar pontos ao jogador por acertar a palavra.
// Pontos pelos campos que antes estavam vazios e pontos por acertar a palavra.
@ -447,7 +447,7 @@ wss.on('connection', ws => {
alertarClientesEvento("EVENT_JOGADOR_ESCOLHIDO", cliente.sala, { jogador: roomObj.vezDe });
return;
}
case "PALAVRA_INCORRETA":{
case "TERM_NOT_GUESSED":{
alterarTin(roomObj);
// Penalizar o jogador caso ele tenha errado a palavra cedo.
if (roomObj.estadoTermo === 'AGUARDANDO_LETRA')
@ -465,13 +465,13 @@ wss.on('connection', ws => {
/*alertarClientesEvento("EVENT_TERMO_ESCOLHIDO", cliente.sala, { tipo: letra ? "LETRA" : "TERMO", termo: resposta.extra.termo });*/
break;
}
case "CHUTAR_CLIENTE":{
case "KICK_PLAYER":{
// Problema #60: O cliente que enviou este pedido é o líder da sala?
if (roomObj.líder !== cliente.apelido){
ws.send(JSON.stringify(new Query("ERRO", "SERVER", "SEM_PERMISSÃO")));
return;
}
let jogador = resposta.extra.jogador;
let jogador = resposta.extra.nickname;
if (jogador === undefined){
ws.send(JSON.stringify(new Query("ERRO", "SERVER", undefined, { motivo: "PARÂMETRO_FALTANDO"})));
break;
@ -481,19 +481,19 @@ wss.on('connection', ws => {
// Encerrar conexão com o cliente alvo.
let clienteAlvo = Util.receberClientePorApelido(roomObj, jogador);
alertarClientesEvento("EVENT_CLIENTE_CHUTADO", cliente.sala, { cliente: clienteAlvo.apelido });
alertarClientesEvento("EVENT_PLAYER_KICKED", cliente.sala, { nickname: clienteAlvo.apelido });
// Remover o cliente da sala.
clienteAlvo.socket.terminate();
break;
}
case "BANIR_CLIENTE":{
case "BAN_PLAYER":{
// Problema #60: O cliente que enviou este pedido é o líder da sala?
if (roomObj.líder !== cliente.apelido){
ws.send(JSON.stringify(new Query("ERRO", "SERVER", "SEM_PERMISSÃO")));
return;
}
let jogador = resposta.extra.jogador;
let jogador = resposta.extra.nickname;
if (jogador === undefined){
ws.send(JSON.stringify(new Query("ERRO", "SERVER", undefined, { motivo: "PARÂMETRO_FALTANDO" })));
break;
@ -502,7 +502,7 @@ wss.on('connection', ws => {
// Encerrar conexão com o cliente alvo.
let clienteAlvo = Util.receberClientePorApelido(roomObj, jogador);
alertarClientesEvento("EVENT_CLIENTE_BANIDO", cliente.sala, { cliente: clienteAlvo.apelido });
alertarClientesEvento("EVENT_PLAYER_BANNED", cliente.sala, { nickname: clienteAlvo.apelido });
// Remover o cliente da sala.
clienteAlvo.socket.terminate();
@ -563,7 +563,7 @@ wss.on('connection', ws => {
ws.on('close', function(){
console.log(' [' + cliente.address + '] Conexão fechada.');
// Remover o cliente da lista de clientes.
removerCliente(cliente, 'MOTIVO_CONEXÃO_FECHADA');
removerCliente(cliente, 'REASON_CONNECTION_CLOSED');
});
let resposta = new Query("TEST_CON", "SERVER");
ws.send(JSON.stringify(resposta));
@ -603,7 +603,7 @@ function removerCliente(cliente, motivo){
//return;
// Alertar os clientes na sala sobre o jogador que está sendo removido caso um motivo tenha sido especificado.
alertarClientesEvento('EVENT_JOGADOR_SAIU', cliente.sala, { apelido: cliente.apelido, motivo: motivo });
alertarClientesEvento('EVENT_PLAYER_LEFT', cliente.sala, { nickname: cliente.apelido, reason: motivo });
if(líder) // Remover todos os jogadores da sala.
for (let x = sala.clientes.length; x > 0; x--)
@ -738,7 +738,7 @@ function verificarPossibilidadeDePartida(sala, forçar){
sala.estado = sala.clientes.length === 1 ? "AGUARDANDO_JOGADORES" : "AGUARDANDO_LÍDER";
// Alertar os clientes.
alertarClientesEvento("EVENT_ROOM_STATUS_CHANGED", sala.sala, { estado: sala.estado });
alertarClientesEvento("EVENT_ROOM_STATUS_CHANGED", sala.sala, { roomStatus: sala.estado });
return sala.clientes.length > 1;
}
@ -824,7 +824,7 @@ function checarInativos(){
if (Date.now() - clientes[x].uas >= vars["client.uas.max"]){
console.log("[" + clientes[x].endereço + "] O jogador parece estar inativo. Fechando conexão.");
// Alertar os clientes.
alertarClientesEvento("EVENT_JOGADOR_CHUTADO_POR_INATIVIDADE", clientes[x].sala, { jogador: clientes[x].apelido });
alertarClientesEvento("EVENT_PLAYER_KICKED_FOR_INACTIVITY", clientes[x].sala, { nickname: clientes[x].apelido });
clientes[x].socket.terminate();
}
}
@ -836,7 +836,7 @@ function checarInativos(){
if (Date.now() - salas[x].uas >= vars["room.uas.max"]){
console.log(salas[x].sala + ": esta sala parece estar inativa. Removendo ela.");
// Esta sala está inativa. Alertar aos clientes de que eles serão desconectados desta sala por inatividade.
alertarClientesEvento("EVENT_SALA_INATIVA", salas[x].sala);
alertarClientesEvento("EVENT_ROOM_INACTIVE", salas[x].sala);
// Terminar conexão com o líder, que automaticamente irá desconectar todos da sala.
Util.receberClientePorApelido(salas[x], salas[x].líder).socket.terminate();
}