Biblioteca

Ações e métodos

Tudo o que o host pode fazer: sala, partida, moderação, times e host.

Todos os métodos abaixo são fire-and-forget: enviam o packet ao servidor e retornam. Para saber o resultado, ouça os eventos correspondentes (veja Estado e eventos).

Sala

ts
room.setRoomName('Novo Nome');
room.setRoomPassword('nova_senha');  // '' remove a senha
room.chat('Olá!');

Partida

ts
room.startGame();              // veja "Partidas e IS blob" para o estado inicial
room.stopGame();               // volta todos ao lobby
room.startCountdown(3);        // contagem de 3 s (padrão: 3)
room.abortCountdown();

room.setMode('b', 'b');        // engine, mode
room.setRounds(5);
room.setMap(lzStringBlob);     // troca o mapa da sala
room.setReady(true);           // marca o próprio bot como pronto
room.allReadyReset();          // reseta o "pronto" de todos

Moderação

ts
room.kickPlayer(id);   // expulsa sem banir
room.banPlayer(id);    // ban permanente

Times e host

ts
// time: 0 spec · 1 ffa · 2 vermelho · 3 azul · 4 verde · 5 amarelo
room.setTeam(id, 3);            // move OUTRO jogador (só o host)
room.joinTeam(0);               // move o PRÓPRIO bot

room.lockTeams();               // trava: jogadores não trocam de time sozinhos
room.unlockTeams();
room.setTeamsEnabled(true);     // liga/desliga o modo de times

room.giveHost(id);              // passa o host
room.setNoHostSwap(true);       // impede a troca automática de host

Detalhes sobre travar times em Times e lock.

Anti-AFK

ts
room.enableAntiAfk({ thresholdMs: 12_000 });
room.isAfk(playerId);
room.disableAntiAfk();

Veja Anti-AFK.

Desconectar

ts
room.disconnect();   // idempotente: limpa timers, listeners internos e estado

Limites de taxa

O servidor limita a frequência de vários comandos (troca de time, lock, mudança de modo, contagem regressiva). Quando isso acontece você recebe um status-message com um código como rate_limit_tl. A biblioteca já evita rajadas onde é possível (por exemplo, chamar lockTeams() repetidas vezes envia o packet uma única vez), mas se você dispara comandos em laço, espace as chamadas.