Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local gameFinished = true
- local gameLoaded
- local gameStarted
- local playersInRoom = 0
- local playersAlive
- local mice = {}
- local isAlive = {}
- local text = {
- en = {
- victory = "%s has won the game.";
- nocontest = "Time up! No one won.";
- },
- es = {
- victory = "%s ha ganado la partida.";
- nocontest = "ยกTiempo! Nadie ganรณ.";
- }
- }
- function main()
- tfm.exec.disableAutoShaman(true)
- tfm.exec.disableAutoNewGame(true)
- for n in pairs(tfm.get.room.playerList) do
- eventNewPlayer(n)
- end
- startGame()
- end
- function startGame()
- tfm.exec.newGame(0)
- end
- function endGame()
- gameFinished = true
- tfm.exec.setGameTime(5)
- if playersAlive == 1 then
- for name in pairs(isAlive) do
- tfm.exec.chatMessage(string.format(lang().victory, name), nil)
- tfm.exec.giveCheese(name)
- tfm.exec.playerVictory(name)
- break
- end
- elseif playersAlive > 1 then
- for name in pairs(isAlive) do
- tfm.exec.killPlayer(name)
- end
- tfm.exec.chatMessage(lang().nocontest, nil)
- end
- end
- function eventNewPlayer(name)
- playersInRoom = playersInRoom + 1
- mice[name] = {
- }
- end
- function eventPlayerLeft(name)
- playersInRoom = playersInRoom - 1
- mice[name] = nil
- end
- function eventNewGame()
- gameLoaded = true
- gameStarted = false
- gameFinished = false
- playersAlive = playersInRoom
- isAlive = {}
- for name,m in pairs(mice) do
- isAlive[name] = true
- end
- end
- function eventPlayerDied(name)
- if gameFinished then return end
- playersAlive = playersAlive - 1
- isAlive[name] = nil
- checkPlayers()
- end
- function eventPlayerWon(name)
- playersAlive = playersAlive - 1
- checkPlayers()
- end
- function checkPlayers()
- if playersAlive == 1 then
- endGame()
- end
- end
- function eventLoop(t, tr)
- if not gameLoaded then return end
- if not gameStarted then
- if t > 3000 then
- gameStarted = true
- end
- return
- end
- if not gameFinished and tr <= 0 then
- endGame()
- elseif gameFinished and tr <= 0 then
- startGame()
- end
- end
- function lang()
- return text[tfm.get.room.community] or text.en
- end
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement