Advertisement
Guest User

Untitled

a guest
Sep 2nd, 2012
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.68 KB | None | 0 0
  1. ///////////////////////////////////////////////////
  2. // AMXMOD[X] //
  3. // ::Ultimate sounds:: //
  4. // by Hephaistos (hephaistos@djeyl.net) //
  5. // edited by Dizzy (dizzythermal@gmail.com) //
  6. // //
  7. // cvar: //
  8. // streak_mode < flags > //
  9. // "a" - messages //
  10. // "b" - sounds //
  11. // //
  12. // kniff_mode < flags > //
  13. // "a" - messages //
  14. // "b" - sounds //
  15. // //
  16. // hs_mode < flags > //
  17. // "a" - messages //
  18. // "b" - sounds //
  19. // //
  20. // lastman_mode < flags > //
  21. // "a" - messages //
  22. // "b" - hp //
  23. // "c" - sounds //
  24. ///////////////////////////////////////////////////
  25.  
  26. #include <amxmodx>
  27.  
  28. #define KNIFFMESSAGES 4
  29. #define LEVELS 7
  30. #define MESSAGESNOHP 4
  31. #define MESSAGESHP 4
  32.  
  33. new kills[33] = {0,...};
  34. new deaths[33] = {0,...};
  35. new alone_ann = 0
  36. new levels[7] = {3, 5, 7, 9, 10, 13, 15};
  37.  
  38. new stksounds[7][] = {
  39. "misc/multikill",
  40. "misc/ultrakill",
  41. "misc/monsterkill",
  42. "misc/killingspree",
  43. "misc/rampage",
  44. "misc/holyshit",
  45. "misc/godlike"};
  46.  
  47. new stkmessages[7][] = {
  48. "%s: Multi-Kill!",
  49. "%s: Ultra-Kill!",
  50. "%s: Monster-Kill!",
  51. "%s: Killing Spree!",
  52. "%s: Rampage!",
  53. "%s: Holy Shit!",
  54. "%s: Godlike!"};
  55.  
  56.  
  57. new kniffmessages[KNIFFMESSAGES][] = {
  58. "%s Sliced And Diced %s!",
  59. "%s Shanked %s!",
  60. "%s Pulled A Knife On %s!",
  61. "%s Knived %s!"}
  62.  
  63. new messagesnohp[MESSAGESNOHP][] = {
  64. "%i terrorist vs %i CT^n%s: Now All Depends On You!",
  65. "%i terrorist vs %i CT^n%s: I Hope You Still Have A Healthpack.",
  66. "%i terrorist vs %i CT^n%s: All Your Teammates Were Killed. Good Luck!",
  67. "%i terrorist vs %i CT^n%s: Now You Are Alone. Have Fun!"}
  68.  
  69. new messageshp[MESSAGESHP][] = {
  70. "%i terrorist vs %i CT^n%s (%i hp): Now All Depend On You!",
  71. "%i terrorist vs %i CT^n%s (%i hp): I Hope You Still Have A Healthpack.",
  72. "%i terrorist vs %i CT^n%s (%i hp): All Your Teammates Were Killed. Good Luck!",
  73. "%i terrorist vs %i CT^n%s (%i hp): Now You Are alone. Have Fun!"}
  74.  
  75. get_streak()
  76. {
  77. new streak[3]
  78. get_cvar_string("streak_mode",streak,2)
  79. return read_flags(streak)
  80. }
  81.  
  82. public death_event(id)
  83. {
  84. new streak = get_streak()
  85.  
  86. if ((streak&1) || (streak&2))
  87. {
  88. new killer = read_data(1);
  89. new victim = read_data(2);
  90.  
  91. kills[killer] += 1;
  92. kills[victim] = 0;
  93. deaths[killer] = 0;
  94. deaths[victim] += 1;
  95.  
  96. for (new i = 0; i < LEVELS; i++)
  97. {
  98. if (kills[killer] == levels[i])
  99. {
  100. announce(killer, i);
  101. return PLUGIN_CONTINUE;
  102. }
  103. }
  104. }
  105. return PLUGIN_CONTINUE;
  106. }
  107.  
  108. announce(killer, level)
  109. {
  110. new streak = get_streak()
  111.  
  112. if (streak&1)
  113. {
  114. new name[32];
  115.  
  116. get_user_name(killer, name, 32);
  117. set_hudmessage(0, 100, 200, 0.05, 0.65, 2, 0.02, 6.0, 0.01, 0.1, 2);
  118. show_hudmessage(0, stkmessages[level], name);
  119. }
  120.  
  121. if (streak&2){
  122. client_cmd(0, "spk %s", stksounds[level]);
  123. }
  124. }
  125.  
  126. public reset_hud(id)
  127. {
  128. new streak = get_streak()
  129.  
  130. if (streak&1)
  131. {
  132.  
  133. if (kills[id] > levels[0])
  134. {
  135. client_print(id, print_chat,
  136. "* You are on a killstreak with %d kills.", kills[id]);
  137.  
  138. }
  139.  
  140. else if (deaths[id] > 1)
  141. {
  142. client_print(id, print_chat,
  143. "* Take care, you are on a deathstreak with %d deaths in a row.", deaths[id]);
  144. }
  145. }
  146. }
  147.  
  148. public client_connect(id)
  149. {
  150. new streak = get_streak()
  151.  
  152. if ((streak&1) || (streak&2))
  153. {
  154. kills[id] = 0;
  155. deaths[id] = 0;
  156. }
  157. }
  158.  
  159. public knife_kill()
  160. {
  161. new kniffmode[4]
  162. get_cvar_string("kniff_mode",kniffmode,4)
  163. new kniffmode_bit = read_flags(kniffmode)
  164.  
  165. if (kniffmode_bit & 1)
  166. {
  167. new killer_id = read_data(1)
  168. new victim_id = read_data(2)
  169. new killer_name[33], victim_name[33]
  170.  
  171. get_user_name(killer_id,killer_name,33)
  172. get_user_name(victim_id,victim_name,33)
  173.  
  174.  
  175. set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1)
  176. show_hudmessage(0,kniffmessages[ random_num(0,KNIFFMESSAGES-1) ],killer_name,victim_name)
  177. }
  178.  
  179. if (kniffmode_bit & 2)
  180. {
  181. client_cmd(0,"spk misc/humiliation")
  182. }
  183. }
  184.  
  185.  
  186. public roundend_msg(id)
  187.  
  188. alone_ann = 0
  189.  
  190. public death_msg(id)
  191. {
  192.  
  193. new lmmode[8]
  194. get_cvar_string("lastman_mode",lmmode,8)
  195. new lmmode_bit = read_flags(lmmode)
  196.  
  197. new players_ct[32], players_t[32], ict, ite, last
  198. get_players(players_ct,ict,"ae","CT")
  199. get_players(players_t,ite,"ae","TERRORIST")
  200.  
  201. if (ict==1&&ite==1)
  202. {
  203. new name1[32], name2[32]
  204. get_user_name(players_ct[0],name1,32)
  205. get_user_name(players_t[0],name2,32)
  206. set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1)
  207.  
  208. if (lmmode_bit & 1)
  209. {
  210. if (lmmode_bit & 2)
  211. {
  212. show_hudmessage(0,"%s (%i hp) vs. %s (%i hp)",name1,get_user_health(players_ct[0]),name2,get_user_health(players_t[0]))
  213. }
  214.  
  215. else
  216. {
  217. show_hudmessage(0,"%s vs. %s",name1,name2)
  218. }
  219.  
  220. if (lmmode_bit & 4)
  221. {
  222. client_cmd(0,"spk misc/maytheforce")
  223. }
  224. }
  225. }
  226. else
  227. {
  228. if (ict==1&&ite>1&&alone_ann==0&&(lmmode_bit & 4))
  229. {
  230. last=players_ct[0]
  231. client_cmd(last,"spk misc/oneandonly")
  232. }
  233.  
  234. else if (ite==1&&ict>1&&alone_ann==0&&(lmmode_bit & 4))
  235. {
  236. last=players_t[0]
  237. client_cmd(last,"spk misc/oneandonly")
  238. }
  239.  
  240. else
  241. {
  242. return PLUGIN_CONTINUE
  243. }
  244. alone_ann = last
  245. new name[32]
  246. get_user_name(last,name,32)
  247.  
  248. if (lmmode_bit & 1)
  249. {
  250. set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1)
  251.  
  252. if (lmmode_bit & 2)
  253. {
  254. show_hudmessage(0,messageshp[ random_num(0,MESSAGESHP-1) ],ite ,ict ,name,get_user_health(last))
  255. }
  256.  
  257. else
  258. {
  259. show_hudmessage(0,messagesnohp[ random_num(0,MESSAGESNOHP-1) ],ite ,ict ,name )
  260. }
  261. }
  262.  
  263. if (lmmode_bit & 4)
  264. {
  265. client_cmd(last,"spk misc/maytheforce")
  266. }
  267. }
  268. return PLUGIN_CONTINUE
  269. }
  270.  
  271.  
  272. public hs()
  273. {
  274. new hsmode[4]
  275. get_cvar_string("hs_mode",hsmode,4)
  276. new hsmode_bit = read_flags(hsmode)
  277.  
  278. if (hsmode_bit & 1)
  279. {
  280. new killer_id = read_data(1)
  281. new victim_id = read_data(2)
  282. new victim_name[33]
  283.  
  284. get_user_name(victim_id,victim_name,33)
  285.  
  286. set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 3.0, 3.0, 0.15, 0.15, 1)
  287. show_hudmessage(killer_id,"::HEADSHOT::^nYou Owned %s !!",victim_name)
  288. }
  289.  
  290. if (hsmode_bit & 2)
  291. {
  292. client_cmd(0,"spk misc/headshot")
  293. }
  294. }
  295.  
  296. public plugin_precache()
  297. {
  298. precache_sound("misc/monsterkill.wav")
  299. precache_sound("misc/godlike.wav")
  300. precache_sound("misc/headshot.wav")
  301. precache_sound("misc/humiliation.wav")
  302. precache_sound("misc/killingspree.wav")
  303. precache_sound("misc/multikill.wav")
  304. precache_sound("misc/ultrakill.wav")
  305. precache_sound("misc/maytheforce.wav")
  306. precache_sound("misc/oneandonly.wav")
  307. precache_sound("misc/prepare.wav")
  308. precache_sound("misc/rampage.wav")
  309. precache_sound("misc/holyshit.wav")
  310.  
  311. return PLUGIN_CONTINUE
  312. }
  313.  
  314.  
  315.  
  316. public plugin_init()
  317. {
  318. register_plugin("Ultimate Sound","1.5","Dizzy")
  319. register_event("DeathMsg","hs","a","3=1")
  320. register_event("DeathMsg","knife_kill","a","4&kni")
  321. register_event("ResetHUD", "reset_hud", "b");
  322. register_event("DeathMsg", "death_event", "a")
  323. register_event("SendAudio","roundend_msg","a","2=%!MRAD_terwin","2=%!MRAD_ctwin","2=%!MRAD_rounddraw")
  324. register_event("TextMsg","roundend_msg","a","2&#Game_C","2&#Game_w")
  325. register_event("DeathMsg","death_msg","a")
  326. register_cvar("lastman_mode","abc")
  327. register_cvar("streak_mode","ab")
  328. register_cvar("kniff_mode","ab")
  329. register_cvar("hs_mode","ab")
  330.  
  331. return PLUGIN_CONTINUE
  332. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement