HLMOD.HU Forrás Megtekintés - www.hlmod.hu
  1. #include <amxmodx>
  2. #include <nvault>
  3. #include <colorchat>
  4. #include <fun>
  5. #include <hamsandwich>
  6.  
  7. public plugin_precache()
  8. RegisterHam(Ham_Spawn,"func_buyzone","buyZoneSpawn")
  9.  
  10. #define MOD_NEV "Extra menu/MOD"
  11. #define PLUGIN_VERZIO "1.0"
  12. #define PLUGIN_IRO "Tomii~'."
  13.  
  14. new pont[33], vault, cim[33]
  15. new elite[33]=1, fiveseven[33]=1, dezi[33]=1, hp[33]=1, gyorsasag[33]=1, ujraeledes[33]=1
  16.  
  17. public plugin_init(){
  18. register_plugin(MOD_NEV,PLUGIN_VERZIO,PLUGIN_IRO)
  19. register_clcmd("say /menu", "fmenu")
  20. register_event("DeathMsg","pontok","a")
  21. RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1)
  22. register_event("ResetHUD","RoundStart","b")
  23. set_task(random_float(30.0,60.0), "hirdetes",_,_,_,"b")
  24. }
  25.  
  26. public buyZoneSpawn(id)
  27. return HAM_SUPERCEDE;
  28.  
  29.  
  30. public pontok(id){
  31. new killer = read_data(1)
  32. new victim = read_data(2)
  33. new team = get_user_team(killer)
  34. if(killer != victim && team != get_user_team(victim) && read_data(3)){
  35. pont[killer]++
  36. }
  37. else if(killer != victim && team != get_user_team(victim)){
  38. pont[killer] += 2
  39. }
  40. }
  41.  
  42. public hirdetes()
  43. {
  44. ColorChat(0, RED, "A MOD-ot Tomii~'. ^4keszitette!")
  45. }
  46.  
  47.  
  48. public fmenu(id){
  49. new acim[121]
  50. format(acim, charsmax(acim), "\w|Fomenu| \r|Aranyad|: %d", pont[id])
  51. new menu = menu_create(acim, "Menu" )
  52.  
  53. menu_additem(menu, "\rKi\ds \rfegyverek", "1", 0); // case 1
  54. menu_additem(menu, "\wNa\rgy \wfegy\dverek (Adminoknak!)", "2", 0); // case 2
  55. menu_additem(menu, "\rBO\yLT", "3", 0); // case 3
  56. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  57. menu_setprop(menu, MPROP_PERPAGE, 6);
  58. menu_setprop(menu, MPROP_BACKNAME, "Vissza");
  59. menu_setprop(menu, MPROP_EXITNAME, "Kilepes");
  60.  
  61. menu_display(id, menu, 0);
  62. return PLUGIN_HANDLED;
  63. }
  64. public Menu(id, menu, item){
  65. if( item == MENU_EXIT ){
  66. menu_destroy(menu);
  67. return PLUGIN_HANDLED;
  68. }
  69.  
  70. new data[8], szName[64];
  71. new access, callback;
  72. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  73. new key = str_to_num(data);
  74. switch(key){
  75. case 1:{
  76. menua(id)
  77. }
  78.  
  79. case 2:{
  80. if(get_user_flags(id) & ADMIN_KICK)
  81. nmenu(id)
  82. else
  83. ColorChat(id, RED, "Ezt csak adminok hasznalhatjak.")
  84. }
  85.  
  86. case 3:{
  87. kmenu(id)
  88. }
  89. }
  90.  
  91. menu_destroy(menu)
  92. return PLUGIN_HANDLED;
  93. }
  94.  
  95. public kmenu(id){
  96. new tcim[121]
  97. format(tcim, charsmax(tcim), "\yExtra \wcuccok^n |Aranyad|: %d", pont[id])
  98. new menu = menu_create(tcim, "menu_hu" )
  99.  
  100. menu_additem(menu, "\y+20 HP [10 arany]", "1", 0)
  101. menu_additem(menu, "\rGyorsasag [5 arany]", "2", 0)
  102. menu_additem(menu, "\rUjraeledes [7 arany]", "3", 0)
  103. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  104. menu_setprop(menu, MPROP_PERPAGE, 6);
  105. menu_setprop(menu, MPROP_BACKNAME, "Vissza");
  106. menu_setprop(menu, MPROP_EXITNAME, "Kilepés");
  107.  
  108. menu_display(id, menu, 0);
  109. return PLUGIN_HANDLED;
  110. }
  111. public menu_hu(id, menu, item){
  112. if( item == MENU_EXIT ){
  113. menu_destroy(menu);
  114. return PLUGIN_HANDLED;
  115. }
  116. new data[8], szName[64];
  117. new access, callback;
  118. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  119. new key = str_to_num(data);
  120. switch(key){
  121. case 1:{
  122. if(get_user_frags(id)>=10&&hp[id]==1){
  123. hp[id]=0
  124. set_user_health(id,get_user_health(id)+20)
  125. set_user_frags(id,get_user_frags(id)-10)
  126. ColorChat(id, RED, "^3[+HP]^4 Nincs elegendo aranyad!")
  127. }else return PLUGIN_CONTINUE
  128.  
  129.  
  130. if(get_user_frags(id)>=5&&gyorsasag[id]==1){
  131. gyorsasag[id]=0
  132. set_user_maxspeed(id, 900.0)
  133. set_user_frags(id,get_user_frags(id)-5)
  134. ColorChat(id, RED, "^3[Gyorsasag]^4 Nincs elegendo aranyad!")
  135. }else return PLUGIN_CONTINUE
  136.  
  137.  
  138. if(get_user_frags(id)>=7&&ujraeledes[id]==1){
  139. ujraeledes[id]=0
  140. ExecuteHamB(Ham_CS_RoundRespawn, id);
  141. set_user_frags(id,get_user_frags(id)-7)
  142. ColorChat(id, RED, "^3[Ujraeledes]^4 Nincs elegendo aranyad!")
  143. }else return PLUGIN_CONTINUE
  144.  
  145. }
  146. }
  147.  
  148. menu_destroy(menu)
  149. return PLUGIN_HANDLED;
  150. }
  151.  
  152. public nmenu(id){
  153. new tcim[121]
  154. format(tcim, charsmax(tcim), "Nagy fegyverek^n |Aranyad|: %d", pont[id])
  155. new menu = menu_create(tcim, "h_menu" )
  156.  
  157. menu_additem(menu, "\wAK47 \r[6000 arany]", "1", 0)
  158. menu_additem(menu, "\rM4a1 \y[5000 arany]", "2", 0)
  159. menu_additem(menu, "\yMP5 \r[2500 arany]", "3", 0)
  160. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  161. menu_setprop(menu, MPROP_PERPAGE, 6);
  162. menu_setprop(menu, MPROP_BACKNAME, "Vissza");
  163. menu_setprop(menu, MPROP_EXITNAME, "Kilepés");
  164.  
  165. menu_display(id, menu, 0);
  166. return PLUGIN_HANDLED;
  167. }
  168. public h_menu(id, menu, item){
  169. if( item == MENU_EXIT ){
  170. menu_destroy(menu);
  171. return PLUGIN_HANDLED;
  172. }
  173. new data[8], szName[64];
  174. new access, callback;
  175. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  176. new key = str_to_num(data);
  177. switch(key){
  178. case 1:{
  179. if(pont[id] >= 6000)
  180. give_item(id, "weapon_ak47")
  181. else
  182. ColorChat(id, RED, "^3[Ak47]^4 Nincs elegendo aranyad!")
  183. }
  184. case 2:{
  185. if(pont[id] >= 5000)
  186. give_item(id, "weapon_m4a1")
  187. else
  188. ColorChat(id, RED, "^3[M4a1]^4 Nincs elegendo aranyad!")
  189. }
  190. case 3:{
  191. if(pont[id] >= 2500)
  192. give_item(id, "weapon_mp5")
  193. else
  194. ColorChat(id, RED, "^3[MP5]^4 Nincs elegendo aranyad!")
  195. }
  196. }
  197.  
  198. menu_destroy(menu)
  199. return PLUGIN_HANDLED;
  200. }
  201.  
  202. public menua(id){
  203. format(cim, charsmax(cim), "Pisztoly Menu By:Tomii~'.^nAranyad: %d",pont[id])
  204. new menu = menu_create(cim, "menu_h" )
  205. format(elite, charsmax(elite), "Elite [Ket pisztoly] [%d/500 arany]",pont[id])
  206. format(fiveseven, charsmax(fiveseven), "Fiveseven [%d/1000 arany]",pont[id])
  207. format(dezi, charsmax(dezi), "Deagle [%d/2000 arany]",pont[id])
  208.  
  209. if(pont[id] >= 500)
  210. menu_additem(menu,"Elite [Ket pisztoly] [Feloldva]","1",0)
  211. else
  212. menu_additem(menu, elite, "1", 0)
  213. if(pont[id] >= 1000)
  214. menu_additem(menu,"Fiveseven [Feloldva]","2",0)
  215. else
  216. menu_additem(menu, fiveseven, "2", 0)
  217. if(pont[id] >= 2000)
  218. menu_additem(menu,"Deagle [Feloldva]","3",0)
  219. else
  220. menu_additem(menu, dezi, "3", 0)
  221. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  222. menu_display(id, menu, 0);
  223. }
  224.  
  225.  
  226. public menu_h(id, menu, item)
  227. {
  228. if( item == MENU_EXIT )
  229. {
  230. menu_destroy(menu);
  231. return PLUGIN_HANDLED;
  232. }
  233. new data[8], szName[64];
  234. new access, callback;
  235. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  236. new key = str_to_num(data);
  237.  
  238. switch(key)
  239. {
  240. case 1:{
  241. if(pont[id] >= 500)
  242. give_item(id, "weapon_elite")
  243. else
  244. ColorChat(id, RED, "^3[Elite]^4 Nincs elegendo pontod!")
  245. }
  246. case 2:{
  247. if(pont[id] >= 1000)
  248. give_item(id, "weapon_fiveseven")
  249. else
  250. ColorChat(id, RED, "^3[Fiveseven]^4 Nincs elegendo pontod!")
  251. }
  252. case 3:{
  253. if(pont[id] >= 2000)
  254. give_item(id, "weapon_deagle")
  255. else
  256. ColorChat(id, GREEN, "^3[Deagle]^4 Nincs elegendo pontod!")
  257. }
  258. }
  259. menu_destroy(menu)
  260. return PLUGIN_HANDLED
  261. }
  262.  
  263. public client_putinserver(id){
  264. betoltes(id)
  265. }
  266.  
  267. public client_disconnect(id){
  268. mentes(id)
  269. }
  270.  
  271. public mentes(id){
  272. new vaultkey[64],vaultdata[256], name[32]
  273. get_user_name(id, name, 31)
  274. format(vaultkey,63,"%s-PONTOK", name)
  275. format(vaultdata,255,"%d", pont[id])
  276. nvault_set(vault,vaultkey,vaultdata)
  277. return PLUGIN_CONTINUE
  278. }
  279.  
  280. public betoltes(id){
  281. new vaultkey[64],vaultdata[256], name[32]
  282. get_user_name(id, name, 31)
  283. format(vaultkey,63,"%s-PONTOK", name)
  284. nvault_get(vault,vaultkey,vaultdata,255)
  285. pont[id] = str_to_num(vaultdata)
  286. return PLUGIN_CONTINUE
  287. }
  288.  
  289. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  290. *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1038\\ f0\\ fs16 \n\\ par }
  291. */
  292.