Agora vamos começar a fazer scripts realmente úteis. Nesse tópico, iremos usar as funções: eventPlayerDied, eventPlayerWon, eventLoop e eventNewGame. E também iremos criar nossa própia função que se chama nextRound.
Vamos lá:
No topo do script, vamos colocar os mapas que iremos rodar e vamos desabilitar a rotação de mapas do jogo.
Para desabilitar a rotação do jogo, utilizamos:
Se eu quisesse colocar um mapa específico, eu utilizaria: tfm.exec.newGame("@1054567"), mas eu quero por um mapa aleatório de uma lista de mapas, então vamos fazer assim: tfm.exec.newGame(mapas[math.random(#mapas)]);
O math.random é que vai pegar aleatoriamente um mapa da nossa lista.
Agora vamos usar o eventPlayerDied e o eventPlayerWon. O primeiro serve pra executar um certo código quando um jogador morre e o segundo, quando um jogador entra na toca. Eles servirão para o script contar quantos ratos ainda estão vivos e, quando não tiver nenhum, ele passar para o próximo mapa.
E no final, iremos digitar nextRound(). Isso vai servir pra quando o script for executado pela primeira vez, ele já colocar um mapa para a gente.
Vamos lá:
No topo do script, vamos colocar os mapas que iremos rodar e vamos desabilitar a rotação de mapas do jogo.
Para desabilitar a rotação do jogo, utilizamos:
- Código:
tfm.exec.disableAutoNewGame(true);
- Código:
mapas={"1", "2", "3", "4", "5", "6", "7", "8", "9", "10"}
Se eu quisesse colocar um mapa específico, eu utilizaria: tfm.exec.newGame("@1054567"), mas eu quero por um mapa aleatório de uma lista de mapas, então vamos fazer assim: tfm.exec.newGame(mapas[math.random(#mapas)]);
O math.random é que vai pegar aleatoriamente um mapa da nossa lista.
- Código:
function nextRound()
tfm.exec.newGame(mapas[math.random(#mapas)]);
end
- Código:
function eventNewGame()
vivo=0
for name,player in pairs(tfm.get.room.playerList) do
vivo=vivo+1
end
end
Agora vamos usar o eventPlayerDied e o eventPlayerWon. O primeiro serve pra executar um certo código quando um jogador morre e o segundo, quando um jogador entra na toca. Eles servirão para o script contar quantos ratos ainda estão vivos e, quando não tiver nenhum, ele passar para o próximo mapa.
- Código:
function eventPlayerDied(name)
vivo=vivo-1
end
function eventPlayerWon(name)
vivo=vivo-1
end
- Código:
function eventLoop(tempoPassado, tempoFaltando)
if vivo == 0 or tempoFaltando < 1000 then
nextRound();
end
end
E no final, iremos digitar nextRound(). Isso vai servir pra quando o script for executado pela primeira vez, ele já colocar um mapa para a gente.
- Código:
nextRound();
- Código:
tfm.exec.disableAutoNewGame(true);
mapas={"1", "2", "3", "4", "5", "6", "7", "8", "9", "10"}
function nextRound()
tfm.exec.newGame(mapas[math.random(#mapas)]);
end
function eventNewGame()
vivo=0
for name,player in pairs(tfm.get.room.playerList) do
vivo=vivo+1
end
end
function eventPlayerDied(name)
vivo=vivo-1
end
function eventPlayerWon(name)
vivo=vivo-1
end
function eventLoop(tempoPassado, tempoFaltando)
if vivo == 0 or tempoFaltando < 1000 then
nextRound();
end
end
nextRound();