Advertisement
Guest User

Snow War 0.3

a guest
Oct 20th, 2015
25
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. tfm.exec.disableAutoShaman(true)
  2. tfm.exec.newGame ('<C><P F="5" /><Z><S><S H="251" P="0,0,0,0.2,0,0,0,0" L="17" X="391" Y="277" T="1" /><S H="205" P="0,0,0,0.2,0,0,0,0" L="10" X="220" Y="298" T="1" /><S H="211" P="0,0,0,0.2,0,0,0,0" L="10" X="530" Y="301" T="1" /><S H="111" P="0,0,0,0.2,0,0,0,0" L="10" X="80" Y="345" T="1" /><S H="137" P="0,0,0,0.2,0,0,0,0" L="10" X="671" Y="334" T="1" /></S><D><DS Y="138" X="392" /><DC Y="145" X="392" /></D><O /></Z></C>')
  3. tfm.exec.disableAutoNewGame(true)
  4. tfm.exec.setGameTime(9999)
  5.  
  6. players={}
  7. toDespawn={}
  8.  
  9. function eventNewPlayer(name)
  10. for i,key in ipairs({32,40,83}) do
  11. tfm.exec.bindKeyboard(name,key,true,true)
  12. end
  13. players[name]={
  14. timestamp=os.time(),
  15. offsets={x=2, y=10}
  16. }
  17. end
  18.  
  19. function eventKeyboard(name,key,down,x,y)
  20. if (key==32 or key==40 or key==83) and not tfm.get.room.playerList[name].isDead and started then
  21. if players[name].timestamp < os.time()-1000 then
  22. local id=tfm.exec.addShamanObject(34, x+(tfm.get.room.playerList[name].isFacingRight and players[name].offsets.x or -players[name].offsets.x), y+players[name].offsets.y, tfm.get.room.playerList[name].isFacingRight and 90 or 270)
  23. tfm.exec.moveObject(id,x+(tfm.get.room.playerList[name].isFacingRight and -2 or 2),y+20,false, tfm.get.room.playerList[name].isFacingRight and 250 or -250)
  24. players[name].timestamp=os.time()
  25. table.insert(toDespawn,{os.time(),id})
  26. end
  27. end
  28. end
  29.  
  30. function eventNewGame()
  31. started=false
  32. end
  33.  
  34. function eventLoop(time,remaining)
  35. if time >= 3000 and not started then
  36. started=true
  37. end
  38. if remaining<=0 then
  39. tfm.exec.newGame ('<C><P F="5" /><Z><S><S H="251" P="0,0,0,0.2,0,0,0,0" L="17" X="391" Y="277" T="1" /><S H="205" P="0,0,0,0.2,0,0,0,0" L="10" X="220" Y="298" T="1" /><S H="211" P="0,0,0,0.2,0,0,0,0" L="10" X="530" Y="301" T="1" /><S H="111" P="0,0,0,0.2,0,0,0,0" L="10" X="80" Y="345" T="1" /><S H="137" P="0,0,0,0.2,0,0,0,0" L="10" X="671" Y="334" T="1" /></S><D><DS Y="138" X="392" /><DC Y="145" X="392" /></D><O /></Z></C>')
  40. end
  41. for i,cannon in ipairs(toDespawn) do
  42. if cannon[1] <= os.time()-3000 then
  43. tfm.exec.removeObject(cannon[2])
  44. table.remove(toDespawn,i)
  45. end
  46. end
  47. end
  48.  
  49. function eventPlayerDied(name)
  50. local i=0
  51. local n
  52. for pname,player in pairs(tfm.get.room.playerList) do
  53. if not player.isDead then
  54. i=i+1
  55. n=pname
  56. end
  57. end
  58. if i==0 then
  59. elseif i==1 then
  60. for u in pairs(tfm.get.room.playerList) do
  61. tfm.exec.respawnPlayer(u)
  62. end
  63. tfm.exec.giveCheese(n)
  64. tfm.exec.playerVictory(n)
  65. tfm.exec.respawnPlayer(n)
  66. tfm.exec.setGameTime(9999)
  67. elseif i==2 then
  68. tfm.exec.disableAutoNewGame(true)
  69. tfm.exec.setGameTime(9999)
  70. end
  71. end
  72.  
  73.  
  74.  
  75. for name,player in pairs(tfm.get.room.playerList) do
  76. eventNewPlayer(name)
  77. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement