Advertisement
Guest User

Untitled

a guest
Sep 21st, 2017
47
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.21 KB | None | 0 0
  1. local leaguegame = { ["events"] = {} }
  2. local teams = {
  3. [1] = {},
  4. [2] = {}
  5. }
  6. local teamnames = {
  7. [1] = "good",
  8. [2] = "evil"
  9. }
  10. local maploaded = 0
  11. local players = {}
  12. local running = false
  13. local playercount = 0
  14. local function addplayer(cn, team)
  15. players[cn] = true
  16. teams[team][cn] = cn
  17. server.unspec(cn)
  18. server.changeteam(cn, teamnames[team])
  19. local cdown1 = 10
  20. server.interval(1000, function()
  21. cdown1 = cdown1 - 1
  22. server.msg(tostring("\f6>>>\f1[ LEAGUEGAME ]\f7The map will load in "..orange(cdown1).." seconds"))
  23. if countdown == 0 then
  24. server.pausegame(false)
  25. return -1
  26. end
  27. end)
  28. end
  29. local stopped = true
  30.  
  31.  
  32. function leaguegame.reset ()
  33. teams = { [1] = {}, [2] = {} }
  34. running = false
  35. playercount = 0
  36. maploaded = 0
  37. server.reassignteams = true
  38. ended= false
  39. end
  40.  
  41. local function onmapchange()
  42. if stopped then leaguegame.unload(); return end
  43. server.pausegame(true)
  44. stopped = true
  45. local countdown = 15
  46. server.interval(1000, function()
  47. countdown = countdown - 1
  48. server.msg(tostring("\f6>>>\f1[ LEAGUEGAME ]\f7The game will start in "..orange(countdown).." seconds"))
  49. if countdown == 0 then
  50. server.pausegame(false)
  51. return -1
  52. end
  53. end)
  54.  
  55.  
  56. end
  57. function leaguegame.unload()
  58. stopped = true
  59. for i,event in ipairs(leaguegame.events) do
  60. server.cancel_handler(event)
  61. end
  62. leaguegame.events = {}
  63. server.reassignteams = true
  64. leaguegame.reset()
  65. end
  66. function leaguegame.init(arg)
  67. for player in server.gplayers() do
  68. player:spec()
  69. end
  70. local addteam = 1
  71. for _, i in ipairs(arg) do
  72. if i == "|" then
  73. addteam = 2
  74. else
  75. if not server.valid_cn(i) then i = server.name_to_cn_list_matches(cn,i) end
  76. if not server.valid_cn(i) then leaguegame.unload(); stopped = true end
  77. addplayer(i, addteam)
  78. playercount = playercount + 1
  79. end
  80.  
  81. end
  82. server.reassignteams = false
  83. stopped = false
  84. leaguegame.events.mapchange = server.event_handler("mapchange", onmapchange)
  85. leaguegame.events.intermission = server.event_handler("intermission", leaguegame.unload)
  86.  
  87. end
  88.  
  89. return function(cn, map, mode, ...)
  90. if map == "stop" or mode == "stop" or mode == 0 or map == o then
  91. leaguegame.unload()
  92. else
  93. server.msg("\f6>>>\f1LEAGUEGAME\f7 Map: "..blue(map).." Mode: "..blue(mode))
  94. leaguegame.init(arg)
  95. server.changemap(map, mode)
  96. end
  97. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement