Advertisement
Guest User

Untitled

a guest
Sep 21st, 2017
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.08 KB | None | 0 0
  1. local killingspree_message = {}
  2. killingspree_message[5] = red(">>>") .. blue("%s") .. "is on a " .. orange("KILLING SPREE!!")
  3. killingspree_message[10] = red(">>>") .. blue("%s") .. "is on a " .. orange("RAMPAGE!!")
  4. killingspree_message[15] = red(">>>") .. blue("%s") .. "is " .. orange("DOMINATING!!")
  5. killingspree_message[20] = red(">>>") .. blue("%s") .. "is " .. orange("UNSTOPPABLE!!")
  6. killingspree_message[30] = red(">>>") .. blue("%s") .. "is " .. orange("GODLIKE!!")
  7. killingspree_message[40] = red(">>>") .. blue("%s") .. "is " .. orange("INSANE!!")
  8. killingspree_message[50] = red(">>>") .. blue("%s") .. "is " .. orange("SUCKERING EVERYONE!!")
  9.  
  10. local broadcast_minimum = 10
  11. local long_killingspree = 15
  12. local multikill_timelimit = 2000
  13. local first_frag = true
  14.  
  15. local function send_first_frag_message(target, actor)
  16. if not first_frag or target == actor then return end
  17. server.msg(string.format(red(">>>") .. "%s suckered up the ") .. blue("FIRST KILL!!"), server.player_displayname(actor)))
  18. first_frag = false
  19. end
  20.  
  21. local function send_killingspree_message(target_cn, target_vars, actor_cn, actor_vars)
  22.  
  23. local actor_killingspree = actor_vars.killingspree or 0
  24. local target_killingspree = target_vars.killingspree or 0
  25.  
  26. if actor_cn ~= target_cn then
  27. actor_killingspree = actor_killingspree + 1
  28. actor_vars.killingspree = actor_killingspree
  29. else
  30. actor_killingspree = 0
  31. end
  32.  
  33. if killingspree_message[actor_killingspree] then
  34.  
  35. local message = string.format(killingspree_message[actor_killingspree], server.player_displayname(actor_cn))
  36.  
  37. if actor_killingspree < broadcast_minimum then
  38. server.player_msg(actor_cn, message)
  39. else
  40. server.msg(message)
  41. end
  42. end
  43.  
  44. if target_killingspree >= long_killingspree then
  45. server.msg(string.format((concat (red ">>>") (blue "%s") "was suckered by" (blue "%s!!")), server.player_displayname(target_cn), server.player_displayname(actor_cn)))
  46. end
  47.  
  48. target_vars.killingspree = 0
  49. end
  50.  
  51. local function send_multikills_message(target_cn, target_vars, actor_cn, actor_vars)
  52.  
  53. local lastkill = actor_vars.lastkill or 0
  54.  
  55. if actor_cn == target_cn then
  56. actor_vars.multikills = 1
  57. return
  58. end
  59.  
  60. if server.gamemillis - lastkill < multikill_timelimit then
  61.  
  62. local actor_multikills = (actor_vars.multikills or 1) + 1
  63. actor_vars.multikills = actor_multikills
  64.  
  65. if (actor_multikills == 2) and gamemodeinfo.insta then
  66.  
  67. server.player_msg(actor_cn, red(">>>") .. "You suckered " .. blue("DOUBLE KILL!!"))
  68.  
  69. elseif actor_multikills == 3 then
  70.  
  71. server.player_msg(actor_cn, red(">>>") .. "You suckered " .. blue("TRIPLE KILL!!"))
  72.  
  73. elseif actor_multikills > 3 then
  74.  
  75. server.player_msg(actor_cn, red(">>>") .. "You suckered " .. blue(string.format("%i MULTIPLE KILLS!!",actor_multikills)))
  76.  
  77. end
  78.  
  79. else -- reset
  80. actor_vars.multikills = 1
  81. end
  82.  
  83. actor_vars.lastkill = server.gamemillis
  84.  
  85. end
  86.  
  87. server.event_handler("frag", function(target_cn, actor_cn)
  88.  
  89. if server.is_teamkill(actor_cn, target_cn) then return end
  90.  
  91. send_first_frag_message(target_cn, actor_cn)
  92.  
  93. local target_vars = server.player_vars(target_cn)
  94. local actor_vars = server.player_vars(actor_cn)
  95.  
  96. send_killingspree_message(target_cn, target_vars, actor_cn, actor_vars)
  97.  
  98. send_multikills_message(target_cn, target_vars, actor_cn, actor_vars)
  99.  
  100. end)
  101.  
  102. server.event_handler("finishedgame",function()
  103. first_frag = true
  104.  
  105. for player in server.gplayers() do
  106. player:vars().killingspree = 0
  107. player:vars().multikills = 1
  108. player:vars().lastkill = 0
  109. end
  110.  
  111. end)
  112.  
  113. server.event_handler("suicide", function(cn)
  114. server.player_vars(cn).killingspree = 0
  115. server.player_vars(cn).multikills = 1
  116. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement