HLMOD.HU Forrás Megtekintés - www.hlmod.hu
  1. /* Plugin generated by AMXX-Studio */
  2.  
  3. #include <amxmodx>
  4. #include <fakemeta>
  5.  
  6. #define PLUGIN "Health Shop"
  7. #define VERSION "1.0"
  8. #define AUTHOR "ZaCkY"
  9.  
  10. #define FM_MONEY_OFFSET 115
  11.  
  12. new health40[200]
  13. new health60[200]
  14. new health80[200]
  15. new health100[200]
  16. new health120[200]
  17. new health140[200]
  18. new health160[200]
  19.  
  20. new cost_40hp, cost_60hp, cost_80hp, cost_100hp, cost_120hp, cost_140hp, cost_160hp
  21.  
  22. public plugin_init() {
  23. register_plugin(PLUGIN, VERSION, AUTHOR)
  24.  
  25. register_clcmd("say /hpshop", "show_menu_buy_hp")
  26. register_clcmd("say_team /hpshop", "show_menu_buy_hp")
  27.  
  28. register_logevent("Event_Round_Start", 2, "1=Round_Start")
  29.  
  30. cost_40hp = register_cvar("hs_40hp_cost", "2000")
  31. cost_60hp = register_cvar("hs_60hp_cost", "4000")
  32. cost_80hp = register_cvar("hs_80hp_cost", "6000")
  33. cost_100hp = register_cvar("hs_100hp_cost", "8000")
  34. cost_120hp = register_cvar("hs_120hp_cost", "10000")
  35. cost_140hp = register_cvar("hs_140hp_cost", "12000")
  36. cost_160hp = register_cvar("hs_160hp_cost", "14000")
  37. }
  38.  
  39. public show_menu_buy_hp(id)
  40. {
  41. new menu = menu_create("\rElet Vasarlas", "handle_buy_hp_menu")
  42.  
  43. formatex(health40, 199, "+40 Elet - $%d", get_pcvar_num(cost_40hp))
  44. menu_additem(menu, health40, "1")
  45.  
  46. formatex(health60, 199, "+60 Elet - $%d", get_pcvar_num(cost_60hp))
  47. menu_additem(menu, health60, "2")
  48.  
  49. formatex(health80, 199, "+80 Elet - $%d", get_pcvar_num(cost_80hp))
  50. menu_additem(menu, health80, "3")
  51.  
  52. formatex(health100, 199, "+100 Elet - $%d", get_pcvar_num(cost_100hp))
  53. menu_additem(menu, health100, "4")
  54.  
  55. formatex(health120, 199, "+120 Elet - $%d", get_pcvar_num(cost_120hp))
  56. menu_additem(menu, health120, "5")
  57.  
  58. formatex(health140, 199, "+140 Elet - $%d", get_pcvar_num(cost_140hp))
  59. menu_additem(menu, health140, "6")
  60.  
  61. formatex(health160, 199, "+160 Elet - $%d", get_pcvar_num(cost_160hp))
  62. menu_additem(menu, health160, "7")
  63.  
  64. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
  65. menu_display(id, menu, 0)
  66. }
  67.  
  68. public handle_buy_hp_menu(id, menu, item)
  69. {
  70. if (item == MENU_EXIT)
  71. {
  72. menu_destroy(menu)
  73. return PLUGIN_HANDLED
  74. }
  75.  
  76. new Data[6];
  77. new Access;
  78. new Callback;
  79. new Name[64];
  80. menu_item_getinfo(menu, item, Access, Data, 5, Name, 63, Callback)
  81.  
  82. new Key = str_to_num(Data);
  83.  
  84. switch (Key)
  85. {
  86. case 1:
  87. {
  88. if (!is_user_alive(id))
  89. {
  90. client_print(id, print_chat, "Neked elonek kell lenned hogy eletet tudjal venni")
  91. return PLUGIN_HANDLED
  92. }
  93.  
  94. new Money = fm_get_user_money(id)
  95. new Pcvar = get_pcvar_num(cost_40hp)
  96. new Health = get_user_health(id)
  97.  
  98. if (Money < Pcvar)
  99. {
  100. client_print(id, print_chat, "Neked nincs eleg penzed az elet vasarlasahoz")
  101. }
  102. else
  103. {
  104. client_print(id, print_chat, "Te sikeresen vettel +40 HP-t")
  105. fm_set_user_money(id, Money-Pcvar)
  106. fm_set_user_health (id, Health+40)
  107. }
  108. }
  109.  
  110. case 2:
  111. {
  112. if (!is_user_alive(id))
  113. {
  114. client_print(id, print_chat, "Neked elonek kell lenned hogy eletet tudjal venni")
  115. return PLUGIN_HANDLED
  116. }
  117.  
  118. new Money = fm_get_user_money(id)
  119. new Pcvar = get_pcvar_num(cost_60hp)
  120. new Health = get_user_health(id)
  121.  
  122. if (Money < Pcvar)
  123. {
  124. client_print(id, print_chat, "Neked nincs eleg penzed az elet vasarlasahoz")
  125. }
  126. else
  127. {
  128. client_print(id, print_chat, "Te sikeresen vettel +60 HP-t")
  129. fm_set_user_money(id, Money-Pcvar)
  130. fm_set_user_health (id, Health+60)
  131. }
  132. }
  133.  
  134. case 3:
  135. {
  136. if (!is_user_alive(id))
  137. {
  138. client_print(id, print_chat, "Neked elonek kell lenned hogy eletet tudjal venni")
  139. return PLUGIN_HANDLED
  140. }
  141.  
  142. new Money = fm_get_user_money(id)
  143. new Pcvar = get_pcvar_num(cost_80hp)
  144. new Health = get_user_health(id)
  145.  
  146. if (Money < Pcvar)
  147. {
  148. client_print(id, print_chat, "Neked nincs eleg penzed az elet vasarlasahoz")
  149. }
  150. else
  151. {
  152. client_print(id, print_chat, "Te sikeresen vettel +80 HP-t")
  153. fm_set_user_money(id, Money-Pcvar)
  154. fm_set_user_health (id, Health+80)
  155. }
  156. }
  157.  
  158. case 4:
  159. {
  160. if (!is_user_alive(id))
  161. {
  162. client_print(id, print_chat, "Neked elonek kell lenned hogy eletet tudjal venni")
  163. return PLUGIN_HANDLED
  164. }
  165.  
  166. new Money = fm_get_user_money(id)
  167. new Pcvar = get_pcvar_num(cost_100hp)
  168. new Health = get_user_health(id)
  169.  
  170. if (Money < Pcvar)
  171. {
  172. client_print(id, print_chat, "Neked nincs eleg penzed az elet vasarlasahoz")
  173. }
  174. else
  175. {
  176. client_print(id, print_chat, "Te sikeresen vettel +100 HP-t")
  177. fm_set_user_money(id, Money-Pcvar)
  178. fm_set_user_health (id, Health+100)
  179. }
  180. }
  181.  
  182. case 5:
  183. {
  184. if (!is_user_alive(id))
  185. {
  186. client_print(id, print_chat, "Neked elonek kell lenned hogy eletet tudjal venni")
  187. return PLUGIN_HANDLED
  188. }
  189.  
  190. new Money = fm_get_user_money(id)
  191. new Pcvar = get_pcvar_num(cost_120hp)
  192. new Health = get_user_health(id)
  193.  
  194. if (Money < Pcvar)
  195. {
  196. client_print(id, print_chat, "Neked nincs eleg penzed az elet vasarlasahoz")
  197. }
  198. else
  199. {
  200. client_print(id, print_chat, "Te sikeresen vettel +120 HP-t")
  201. fm_set_user_money(id, Money-Pcvar)
  202. fm_set_user_health (id, Health+120)
  203. }
  204. }
  205.  
  206. case 6:
  207. {
  208. if (!is_user_alive(id))
  209. {
  210. client_print(id, print_chat, "Neked elonek kell lenned hogy eletet tudjal venni")
  211. return PLUGIN_HANDLED
  212. }
  213.  
  214. new Money = fm_get_user_money(id)
  215. new Pcvar = get_pcvar_num(cost_140hp)
  216. new Health = get_user_health(id)
  217.  
  218. if (Money < Pcvar)
  219. {
  220. client_print(id, print_chat, "Neked nincs eleg penzed az elet vasarlasahoz")
  221. }
  222. else
  223. {
  224. client_print(id, print_chat, "Te sikeresen vettel +140 HP-t")
  225. fm_set_user_money(id, Money-Pcvar)
  226. fm_set_user_health (id, Health+140)
  227. }
  228. }
  229.  
  230. case 7:
  231. {
  232. if (!is_user_alive(id))
  233. {
  234. client_print(id, print_chat, "Neked elonek kell lenned hogy eletet tudjal venni")
  235. return PLUGIN_HANDLED
  236. }
  237.  
  238. new Money = fm_get_user_money(id)
  239. new Pcvar = get_pcvar_num(cost_160hp)
  240. new Health = get_user_health(id)
  241.  
  242. if (Money < Pcvar)
  243. {
  244. client_print(id, print_chat, "Neked nincs eleg penzed az elet vasarlasahoz")
  245. }
  246. else
  247. {
  248. client_print(id, print_chat, "Te sikeresen vettel +160 HP-t")
  249. fm_set_user_money(id, Money-Pcvar)
  250. fm_set_user_health (id, Health+160)
  251. }
  252. }
  253. }
  254. menu_destroy(menu)
  255. return PLUGIN_HANDLED
  256. }
  257.  
  258. public Event_Round_Start()
  259. {
  260. client_print(0, print_chat, "Ha eletet szeretnel venni az elet menu-bol csak ird be: /hpshop a chatba")
  261. }
  262.  
  263. stock fm_set_user_health(index, health)
  264. {
  265. health > 0 ? set_pev(index, pev_health, float(health)) : dllfunc(DLLFunc_ClientKill, index)
  266. return 1
  267. }
  268.  
  269. stock fm_get_user_money(index)
  270. {
  271. return get_pdata_int(index, FM_MONEY_OFFSET)
  272. }
  273.  
  274. stock fm_set_user_money(index, money, flash = 1)
  275. {
  276. set_pdata_int(index, FM_MONEY_OFFSET, money);
  277.  
  278. message_begin(MSG_ONE, get_user_msgid("Money"), _, index);
  279. write_long(money);
  280. write_byte(flash ? 1 : 0);
  281. message_end();
  282. }
  283. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  284. *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1053\\ f0\\ fs16 \n\\ par }
  285. */
  286.