Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Num script lua, você pode criar várias funções. É a partir dessas funções que você irá fazer a maior parte do seu script. É sempre bom que você teste as funções que citarei aqui pra ir pegando a prática e saber o que cada uma faz. Irei começar com uma função básica:
- Código:
- function eventNewGame()
- Essa função é usada para executar um determinado código sempre que um novo round/mapa for iniciado.
- Aqui um pequeno exemplo:
- Código:
- function eventNewGame()
- print("Um novo mapa começou")
- end
- Nessa função, ao colocar um mapa irá aparecer no chat Um novo mapa começou. Isso acontece porque a função eventNewGame detecta quando um novo mapa é colocado. Ou seja, sempre que um novo mapa for iniciado, tudo que estiver dentro da função será executado. Um detalhe importante: o end indica quando uma função termina. Você irá usa-lo também para terminar um if, for, elseif e etc. Aqui um outro exemplo:
- Código:
- function eventNewGame()
- jogadores = 0
- for name, player in pairs(tfm.get.room.playerList) do
- jogadores = jogadores+1
- end
- print(jogadores)
- end
- Ao executar essa função e colocar um mapa qualquer, irá aparecer no chat o número de jogadores que estavam na sala quando começou o round. Explicação:
- function eventNewGame() - Indica o início da função
- jogadores = 0 - Atribui o valor 0 para a palavra jogadores
- for name, player in pairs(tfm.get.room.playerList) do - Loop que é executado e só para quando a lista de jogadores na sala termina. Também atribui a palavra name ao nick de cada jogador da sala.
- jogadores = jogadores+1 - Soma o valor atual da palavra jogadores com o número 1 e atribui o novo valor à palavra.
- end - Termina o loop for name, player in pairs(tfm.get.room.playerList) do
- print(jogadores) - Mostra no chat o valor da palavra jogadores.
- end - Termina a função eventNewGame()
- Outro exemplo:
- Código:
- function eventNewGame()
- for name, player in pairs(tfm.get.room.playerList) do
- tfm.exec.setShaman(name)
- end
- end
- function eventNewGame() - Indica o início da função
- for name, player in pairs(tfm.get.room.playerList) do - Loop que é executado e só para quando a lista de jogadores na sala termina. Também atribui a palavra name o nick de cada jogador da sala.
- tfm.exec.setShaman(name) - Transforma o jogador em shaman
- end - Termina o loop for name, player in pairs(tfm.get.room.playerList) do
- end - Termina a função eventNewGame()
- No exemplo acima, o script vai transformar todos da sala em shaman, sempre que um novo mapa começar. Isso acontece porque como eu disse, o Loop pega o nome de cada jogador e transforma na variável name. O loop repete tudo que está dentro dele várias vezes até chegar no último jogador, e então ele para. O tfm.exec.setShaman(name) transforma em shaman o nome que está na variável name. Como ele está dentro do loop, ele é executado várias vezes tornando todos da sala em shaman.
- Obs.: Cada loop tem uma maneira de agir. Nesse caso, o loop para quando chega no último jogador, mas em outros loops, pode ser que isso não aconteça.
- Se você quisesse transformar apenas uma pessoa, você usaria: tfm.exec.setShaman("Nome"). Dessa vez a gente usou aspas porque não estamos mais trabalhando com variável e sim com o nome mesmo. E para o interpretador entender que não é uma variável, temos que usar as aspas.
- No exemplo abaixo, sempre que um novo mapa for iniciado, eu serei shaman (meu nick no caso é Darklightkk).
- Código:
- function eventNewGame()
- tfm.exec.setShaman("Darklightkk")
- end
- No exemplo a cima, como eu citei, sempre que iniciar um novo round, o nick Darklightkk será shaman. Você poderá também atribuir uma palavra a uma variável. Veja o exemplo abaixo:
- Código:
- function eventNewGame()
- nick = Darklightkk
- tfm.exec.setShaman(nick)
- end
- No exemplo, eu atribui a palavra Darklightkk a variável nick, e então usei o setShaman.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement