SHARE
TWEET

[PAWN] Zombie Biohazard v1.1 by MiljanX

a guest Jul 3rd, 2012 647 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <biohazard>
  4. #include <cstrike>
  5. #include <engine>
  6. #include <fun>
  7. #include <fakemeta>
  8. #include <colorchat>
  9.  
  10. #define PLUGIN_NAME "Zombie Biohazard VIP"
  11. #define PLUGIN_VERSION "1.0"
  12. #define PLUGIN_AUTHOR "MiljanX"
  13.  
  14. #define FALL_VELOCITY 350.0
  15.  
  16. enum Cvarovi
  17. {
  18.         VIP_INVISIBL,
  19.         VIP_INVISIBL_COST,
  20.         VIP_RE_HP,
  21.         VIP_RE_HP_COST,
  22.         VIP_ARMOR,
  23.         VIP_ARMOR_COST,
  24.         VIP_HEALTH_SHOP,
  25.         VIP_STO_HP_COST,
  26.         VIP_DVESTA_HP_COST,
  27.         VIP_PESTO_HP_COST,
  28.         VIP_HILJADU_HP_COST,
  29.         VIP_ARMOR_SHOP,
  30.         VIP_STO_AM_COST,
  31.         VIP_DVESTA_AM_COST,
  32.         VIP_PESTO_AM_COST
  33. }
  34.  
  35. new const g_Imena[Cvarovi][] =
  36. {
  37.         "bh_vip_invisibility", //
  38.         "bh_vip_invisibility_cost", //
  39.         "bh_vip_regenerate_hp", //
  40.         "bh_vip_regenerate_hp_cost", //
  41.         "bh_vip_regenerate_armor", //
  42.         "bh_vip_regenerate_armor_cost", //
  43.         "bh_vip_health_shop", //
  44.         "bh_vip_sto_hp_cost", //
  45.         "bh_vip_dvesta_hp_cost", //
  46.         "bh_vip_pesto_hp_cost", //
  47.         "bh_vip_hiljadu_hp_cost", //
  48.         "bh_vip_armor_shop", //
  49.         "bh_vip_sto_am_cost",
  50.         "bh_vip_dvesta_am_cost",
  51.         "bh_vip_pesto_am_cost"
  52. };
  53.  
  54. new const g_Vrednost[Cvarovi][] =
  55. {
  56.         "1", //
  57.         "7000", //
  58.         "1", //
  59.         "3500", //
  60.         "1", //
  61.         "4500", //
  62.         "1", //
  63.         "900", //
  64.         "1800", //
  65.         "3000", //
  66.         "9000", //
  67.         "1", //
  68.         "5000",
  69.         "10000",
  70.         "16000"
  71. };
  72.  
  73. #if cellbits == 32
  74. const OFFSET_CLIPAMMO = 51
  75. #else
  76. const OFFSET_CLIPAMMO = 65
  77. #endif
  78. const OFFSET_LINUX_WEAPONS = 4
  79.  
  80. new const MAXCLIP[] = { -1, 13, -1, 10, 1, 7, -1, 30, 30, 1, 30, 20, 25, 30, 35, 25, 12, 20,
  81.                         10, 30, 100, 8, 30, 30, 20, 2, 7, 30, 30, -1, 50 }
  82.  
  83. new g_SviCvarovi[Cvarovi];
  84. new has_imm[33]
  85. new bool:falling[33];
  86. new g_has_unlimited_clip[33]
  87.  
  88. new g_cfgputanja[]="addons/amxmodx/confgis/bh_vip.cfg"
  89. new const narudzba[] = "addons/amxmodx/configs/vip_narudzbe.txt"
  90.  
  91. public plugin_init()
  92. {
  93.         register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR)
  94.  
  95.         register_clcmd("say /vm","vmenu")
  96.         register_clcmd("say /vip","openmotd")
  97.         register_clcmd("say /buyvip","buyvip")
  98.         register_clcmd("UNESITE_VAS_EMAIL", "type_mail")
  99.  
  100.         register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
  101.         register_message(get_user_msgid("CurWeapon"), "message_cur_weapon")
  102.        
  103.         register_logevent("StartRunde", 2, "1=Round_Start")
  104.        
  105.         for ( new Cvarovi:i = VIP_INVISIBL ; i < Cvarovi ; i++ )
  106.                 g_SviCvarovi[i] = register_cvar(g_Imena[i] , g_Vrednost[i]);
  107.        
  108.         set_task(180.0,"Adv_pub" , _ , _ , _ , "b")
  109.        
  110.         if(!cvar_exists("mp_falldamage"))
  111.         {
  112.                 register_cvar("mp_falldamage", "0");
  113.         }
  114. }
  115.  
  116. public client_putinserver(player)
  117. {
  118.         set_task(5.0,"vip_connect")
  119.        
  120.         if(get_user_flags(player) & ADMIN_LEVEL_H)
  121.                 g_has_unlimited_clip[player] = true
  122. }
  123.  
  124. public plugin_precache()
  125. {
  126.         if(!file_exists(g_cfgputanja))
  127.         {
  128.                 write_file(g_cfgputanja, ";Zombie Biohazard VIP by MiljanX")
  129.                 write_file(g_cfgputanja, ";-------------------")
  130.                 write_file(g_cfgputanja, "// VIP Menu - Cvars")
  131.                 write_file(g_cfgputanja, "bh_vip_invisibility ^"1^" // Da li je ukljucen VIP Invisibility u VIP meniju ? (1 - Da, 0 - Ne)")
  132.                 write_file(g_cfgputanja, "bh_vip_regenerate_hp ^"1^" // Da li je ukljucen Regenerate Health u VIP meniju ? (1 - Da, 0 - Ne)")
  133.                 write_file(g_cfgputanja, "bh_vip_regenerate_armor ^"1^" // Da li je ukljucen Regenerate Armor u VIP meniju ? (1 - Da, 0 - Ne)")
  134.                 write_file(g_cfgputanja, "bh_vip_health_shop ^"1^" // Da li je ukljucen Health Shop u VIP meniju ? (1 - Da, 0 - Ne)")
  135.                 write_file(g_cfgputanja, "bh_vip_armor_shop ^"1^" // Da li je ukljucen Armor Shop u VIP meniju ? (1 - Da, 0 - Ne)")
  136.                 write_file(g_cfgputanja, "")
  137.                 write_file(g_cfgputanja, "// Cene Itema")
  138.                 write_file(g_cfgputanja, "bh_vip_invisibility_cost ^"7000^" // Koliko kosta VIP Invisibility (default 7000$)")
  139.                 write_file(g_cfgputanja, "bh_vip_regenerate_hp_cost ^"3500^" // Koliko kosta Regenerate Health (default 3500$)")
  140.                 write_file(g_cfgputanja, "bh_vip_regenerate_armor_cost ^"4500^" // Koliko kosta Regenerate Armor (default 4500$)")
  141.                 write_file(g_cfgputanja, "")
  142.                 write_file(g_cfgputanja, "// Health Shop - Cene")
  143.                 write_file(g_cfgputanja, "bh_vip_sto_hp_cost ^"900^" // Koliko kosta 100HP (default 900$)")
  144.                 write_file(g_cfgputanja, "bh_vip_dvesta_hp_cost ^"1800^" // Koliko kosta 200HP (default 1800$)")
  145.                 write_file(g_cfgputanja, "bh_vip_pesto_hp_cost ^"3000^" // Koliko kosta 500HP (default 3000$)")
  146.                 write_file(g_cfgputanja, "bh_vip_hiljadu_hp_cost ^"9000^" // Koliko kosta 1000HP (default 9000$)")
  147.                 write_file(g_cfgputanja, "")
  148.                 write_file(g_cfgputanja, "// Armor Shop - Cene")
  149.                 write_file(g_cfgputanja, "bh_vip_sto_am_cost ^"5000^" // Koliko kosta 100AM (default 5000$)")
  150.                 write_file(g_cfgputanja, "bh_vip_dvesta_am_cost ^"10000^" // Koliko kosta 200AM (default 10000$)")
  151.                 write_file(g_cfgputanja, "bh_vip_pesto_am_cost ^"16000^" // Koliko kosta 500AM (default 16000$)")
  152.         }
  153.        
  154.         if(!file_exists(narudzba))
  155.         {
  156.                 write_file(narudzba,"Ovde mozete videti sve narudzbe VIP-a preko vaseg servera.")
  157.                 write_file(narudzba,"Zloupotrebe slobodno mozete banovati posto vam pise STEAM ID igraca.")
  158.                 write_file(narudzba,"Porudzbinu VIP-a odgovarate na mail koji su ovde upisali.")
  159.                 write_file(narudzba,"==================================================")
  160.                 write_file(narudzba," ")
  161.         }
  162. }
  163.  
  164. public vmenu(id)
  165. {
  166.         if(is_user_zombie(id) || !is_user_alive(id))
  167.         {
  168.                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Trenutno ne mozes koristiti ovu komandu")
  169.                 return PLUGIN_HANDLED
  170.         }
  171.  
  172.         if(get_user_flags(id) & ADMIN_LEVEL_H)
  173.         {
  174.                 new szText[555 char]
  175.                 formatex(szText, charsmax(szText), "\rVIP Extra Items")
  176.                 new menu = menu_create(szText, "vm_items")
  177.  
  178.                 formatex(szText, charsmax(szText), "\yVIP Invisibility \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_INVISIBL_COST]))
  179.                 menu_additem(menu, szText, "1", 0)
  180.  
  181.                 formatex(szText, charsmax(szText), "\yRegenerate Health \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_RE_HP_COST]))
  182.                 menu_additem(menu, szText, "2", 0)
  183.  
  184.                 formatex(szText, charsmax(szText), "\yRegenerate Armor \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_ARMOR_COST]))
  185.                 menu_additem(menu, szText, "3", 0)
  186.  
  187.                 formatex(szText, charsmax(szText), "\rHealth Shop")
  188.                 menu_additem(menu, szText, "4", 0)
  189.  
  190.                 formatex(szText, charsmax(szText), "\rArmor Shop")
  191.                 menu_additem(menu, szText, "5", 0)
  192.  
  193.                 formatex(szText, charsmax(szText), "\rChoose Glow Color")
  194.                 menu_additem(menu, szText, "6", 0)
  195.  
  196.                 menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
  197.                 menu_display(id, menu) 
  198.  
  199.                 return PLUGIN_HANDLED
  200.         }
  201.  
  202.         else
  203.         {
  204.                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Niste VIP clan")
  205.                 return PLUGIN_HANDLED
  206.         }
  207.         return PLUGIN_HANDLED
  208. }
  209.  
  210. public vm_items(id,menu,item)
  211. {
  212.         if(item ==MENU_EXIT)
  213.         {
  214.                 menu_destroy(menu)
  215.                 return PLUGIN_CONTINUE
  216.         }
  217.         new data[6], iName[64], access, callback
  218.         menu_item_getinfo(menu, item, access, data, charsmax(data), iName, charsmax(iName), callback )
  219.         new key = str_to_num(data)
  220.         new money = cs_get_user_money(id)
  221.         switch(key)
  222.         {
  223.                 case 1:
  224.                 {
  225.                         if(get_pcvar_num(g_SviCvarovi[VIP_INVISIBL]) == 1)
  226.                         {
  227.                                 if(money < get_pcvar_num(g_SviCvarovi[VIP_INVISIBL_COST]))
  228.                                 {
  229.                                         ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  230.                                         return PLUGIN_HANDLED
  231.                                 }
  232.                
  233.                                 else
  234.                                 {
  235.                                         set_task(10.0,"Turn_Off_Invisibility",id)
  236.                                         has_imm[id] = true
  237.                                         cs_set_user_money(id,money - get_pcvar_num(g_SviCvarovi[VIP_INVISIBL_COST]))
  238.                                         ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste ^3VIP Invisibility ^1, traje jos 10 sekundi")
  239.                                 }
  240.                         }
  241.                         else
  242.                         {
  243.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Server je iskljucio ovu opciju")
  244.                                 return PLUGIN_HANDLED
  245.                         }
  246.                 }
  247.  
  248.                 case 2:
  249.                 {
  250.                         if(get_pcvar_num(g_SviCvarovi[VIP_RE_HP]) == 1)
  251.                         {
  252.                                 if(money < get_pcvar_num(g_SviCvarovi[VIP_RE_HP_COST]))
  253.                                 {
  254.                                         ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  255.                                         return PLUGIN_HANDLED
  256.                                 }
  257.                
  258.                                 else
  259.                                 {
  260.                                         set_user_health(id, 100)
  261.                                         cs_set_user_money(id,money - get_pcvar_num(g_SviCvarovi[VIP_RE_HP_COST]))
  262.                                         ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Vasa Helta je vracena na 100")
  263.                                 }
  264.                         }
  265.                         else
  266.                         {
  267.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Server je iskljucio ovu opciju")
  268.                                 return PLUGIN_HANDLED
  269.                         }
  270.                 }
  271.  
  272.                 case 3:
  273.                 {
  274.                         if(get_pcvar_num(g_SviCvarovi[VIP_ARMOR]) == 1)
  275.                         {
  276.                                 if(money < get_pcvar_num(g_SviCvarovi[VIP_ARMOR_COST]))
  277.                                 {
  278.                                         ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  279.                                         return PLUGIN_HANDLED
  280.                                 }
  281.                
  282.                                 else
  283.                                 {
  284.                                         set_user_armor(id, 100)
  285.                                         cs_set_user_money(id,money - get_pcvar_num(g_SviCvarovi[VIP_ARMOR_COST]))
  286.                                         ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Vas Armor je vracen na 100")
  287.                                 }
  288.                         }
  289.                         else
  290.                         {
  291.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Server je iskljucio ovu opciju")
  292.                                 return PLUGIN_HANDLED
  293.                         }
  294.                 }
  295.  
  296.                 case 4:
  297.                 {
  298.                         if(get_pcvar_num(g_SviCvarovi[VIP_HEALTH_SHOP]) == 1)
  299.                         {
  300.                                 new szText[555 char]
  301.                                 formatex(szText, charsmax(szText), "\rVIP health Shop")
  302.                                 new menu = menu_create(szText, "vm_hp_items")
  303.                                 formatex(szText, charsmax(szText), "\y100HP \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_STO_HP_COST]))
  304.                                 menu_additem(menu, szText, "1", 0)
  305.                                 formatex(szText, charsmax(szText), "\y200HP \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_DVESTA_HP_COST]))
  306.                                 menu_additem(menu, szText, "2", 0)
  307.                                 formatex(szText, charsmax(szText), "\y500HP \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_PESTO_HP_COST]))
  308.                                 menu_additem(menu, szText, "3", 0)
  309.                                 formatex(szText, charsmax(szText), "\y1000HP \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_HILJADU_HP_COST]))
  310.                                 menu_additem(menu, szText, "4", 0)
  311.                                 menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
  312.                                 menu_display(id, menu) 
  313.                                 return PLUGIN_HANDLED
  314.                         }
  315.                         else
  316.                         {
  317.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Server je iskljucio ovu opciju")
  318.                                 return PLUGIN_HANDLED
  319.                         }
  320.                 }
  321.  
  322.                 case 5:
  323.                 {
  324.                         if(get_pcvar_num(g_SviCvarovi[VIP_ARMOR_SHOP]) == 1)
  325.                         {
  326.                                 new szText[555 char]
  327.                                 formatex(szText, charsmax(szText), "\rVIP Armor Shop")
  328.                                 new menu = menu_create(szText, "vm_am_items")
  329.                                 formatex(szText, charsmax(szText), "\y100AM \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_STO_AM_COST]))
  330.                                 menu_additem(menu, szText, "1", 0)
  331.                                 formatex(szText, charsmax(szText), "\y200AM \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_DVESTA_AM_COST]))
  332.                                 menu_additem(menu, szText, "2", 0)
  333.                                 formatex(szText, charsmax(szText), "\y5000AM \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_PESTO_AM_COST]))
  334.                                 menu_additem(menu, szText, "3", 0)
  335.                                 menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
  336.                                 menu_display(id, menu) 
  337.                                 return PLUGIN_HANDLED
  338.                         }
  339.                         else
  340.                         {
  341.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Server je iskljucio ovu opciju")
  342.                                 return PLUGIN_HANDLED
  343.                         }
  344.                 }
  345.  
  346.                 case 6:
  347.                 {
  348.                         new szText[555 char]
  349.                         formatex(szText, charsmax(szText), "\rChoose Glow Color")
  350.                         new menu = menu_create(szText, "vm_glow_items")
  351.                         formatex(szText, charsmax(szText), "\yRed")
  352.                         menu_additem(menu, szText, "1", 0)
  353.                         formatex(szText, charsmax(szText), "\yBlue")
  354.                         menu_additem(menu, szText, "2", 0)
  355.                         formatex(szText, charsmax(szText), "\yYellow")
  356.                         menu_additem(menu, szText, "3", 0)
  357.                         formatex(szText, charsmax(szText), "\yGreen")
  358.                         menu_additem(menu, szText, "4", 0)
  359.                         formatex(szText, charsmax(szText), "\yPink")
  360.                         menu_additem(menu, szText, "5", 0)
  361.                         formatex(szText, charsmax(szText), "\rBlack")
  362.                         menu_additem(menu, szText, "6", 0)
  363.                         menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
  364.                         menu_display(id, menu) 
  365.                         return PLUGIN_HANDLED
  366.                 }
  367.         }
  368.         return PLUGIN_HANDLED
  369. }
  370.  
  371. public event_infect(victim)
  372. {
  373.         if(has_imm[victim])
  374.         {
  375.                 cure_user(victim)
  376.         }
  377. }
  378. public Turn_Off_Invisibility(id)
  379. {
  380.         if(is_user_connected(id))
  381.         {
  382.                 has_imm[id]=false
  383.         }
  384. }
  385.  
  386.  
  387. public vm_hp_items(id,menu,item)
  388. {
  389.         if(item ==MENU_EXIT)
  390.         {
  391.                 menu_destroy(menu)
  392.                 return PLUGIN_CONTINUE
  393.         }
  394.         new data[6], iName[64], access, callback
  395.         menu_item_getinfo(menu, item, access, data, charsmax(data), iName, charsmax(iName), callback )
  396.         new key = str_to_num(data)
  397.         new money = cs_get_user_money(id)
  398.         new health = get_user_health(id)
  399.         switch(key)
  400.         {
  401.                 case 1:
  402.                 {
  403.                         if(money < get_pcvar_num(g_SviCvarovi[VIP_STO_HP_COST]))
  404.                         {
  405.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  406.                                 return PLUGIN_HANDLED
  407.                         }
  408.                        
  409.                         else
  410.                         {
  411.                                 set_user_health(id, health + 100)
  412.                                 cs_set_user_money(id, money - get_pcvar_num(g_SviCvarovi[VIP_STO_HP_COST]))
  413.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste 100HP")
  414.                         }
  415.                 }
  416.                 case 2:
  417.                 {
  418.                         if(money < get_pcvar_num(g_SviCvarovi[VIP_DVESTA_HP_COST]))
  419.                         {
  420.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  421.                                 return PLUGIN_HANDLED
  422.                         }
  423.                        
  424.                         else
  425.                         {
  426.                                 set_user_health(id, health + 200)
  427.                                 cs_set_user_money(id, money - get_pcvar_num(g_SviCvarovi[VIP_DVESTA_HP_COST]))
  428.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste 200HP")
  429.                         }
  430.                 }
  431.                 case 3:
  432.                 {
  433.                         if(money < get_pcvar_num(g_SviCvarovi[VIP_PESTO_HP_COST]))
  434.                         {
  435.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  436.                                 return PLUGIN_HANDLED
  437.                         }
  438.                        
  439.                         else
  440.                         {
  441.                                 set_user_health(id, health + 500)
  442.                                 cs_set_user_money(id, money - get_pcvar_num(g_SviCvarovi[VIP_PESTO_HP_COST]))
  443.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste 500HP")
  444.                         }
  445.                 }
  446.                 case 4:
  447.                 {
  448.                         if(money < get_pcvar_num(g_SviCvarovi[VIP_HILJADU_HP_COST]))
  449.                         {
  450.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  451.                                 return PLUGIN_HANDLED
  452.                         }
  453.                        
  454.                         else
  455.                         {
  456.                                 set_user_health(id, health + 1000)
  457.                                 cs_set_user_money(id, money - get_pcvar_num(g_SviCvarovi[VIP_HILJADU_HP_COST]))
  458.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste 1000HP")
  459.                         }
  460.                 }
  461.         }
  462.         return PLUGIN_HANDLED
  463. }
  464.  
  465.  
  466. public vm_am_items(id,menu,item)
  467. {
  468.         if(item ==MENU_EXIT)
  469.         {
  470.                 menu_destroy(menu)
  471.                 return PLUGIN_CONTINUE
  472.         }
  473.         new data[6], iName[64], access, callback
  474.         menu_item_getinfo(menu, item, access, data, charsmax(data), iName, charsmax(iName), callback )
  475.         new key = str_to_num(data)
  476.         new money = cs_get_user_money(id)
  477.         new armor = get_user_armor(id)
  478.         switch(key)
  479.         {
  480.                 case 1:
  481.                 {
  482.                         if(money < get_pcvar_num(g_SviCvarovi[VIP_STO_AM_COST]))
  483.                         {
  484.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  485.                                 return PLUGIN_HANDLED
  486.                         }
  487.                        
  488.                         else
  489.                         {
  490.                                 set_user_armor(id, armor + 100)
  491.                                 cs_set_user_money(id, money - get_pcvar_num(g_SviCvarovi[VIP_STO_AM_COST]))
  492.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste 100AM")
  493.                         }
  494.                 }
  495.                 case 2:
  496.                 {
  497.                         if(money < get_pcvar_num(g_SviCvarovi[VIP_DVESTA_AM_COST]))
  498.                         {
  499.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  500.                                 return PLUGIN_HANDLED
  501.                         }
  502.                        
  503.                         else
  504.                         {
  505.                                 set_user_armor(id, armor + 200)
  506.                                 cs_set_user_money(id, money - get_pcvar_num(g_SviCvarovi[VIP_DVESTA_AM_COST]))
  507.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste 200AM")
  508.                         }
  509.                 }
  510.                 case 3:
  511.                 {
  512.                         if(money < get_pcvar_num(g_SviCvarovi[VIP_PESTO_AM_COST]))
  513.                         {
  514.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  515.                                 return PLUGIN_HANDLED
  516.                         }
  517.                        
  518.                         else
  519.                         {
  520.                                 set_user_armor(id, armor + 500)
  521.                                 cs_set_user_money(id, money - get_pcvar_num(g_SviCvarovi[VIP_PESTO_AM_COST]))
  522.                                 ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste 500AM")
  523.                         }
  524.                 }
  525.         }
  526.         return PLUGIN_HANDLED
  527. }
  528.  
  529.  
  530. public vm_glow_items(id,menu,item)
  531. {
  532.         if(item ==MENU_EXIT)
  533.         {
  534.                 menu_destroy(menu)
  535.                 return PLUGIN_CONTINUE
  536.         }
  537.         new data[6], iName[64], access, callback
  538.         menu_item_getinfo(menu, item, access, data, charsmax(data), iName, charsmax(iName), callback )
  539.         new key = str_to_num(data)
  540.         switch(key)
  541.         {
  542.                 case 1: set_user_rendering(id, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 25)       
  543.                 case 2: set_user_rendering(id, kRenderFxGlowShell, 0, 0, 255, kRenderNormal, 25)
  544.                 case 3: set_user_rendering(id, kRenderFxGlowShell, 255, 255, 0, kRenderNormal, 25)
  545.                 case 4: set_user_rendering(id, kRenderFxGlowShell, 0, 255, 0, kRenderNormal, 25)       
  546.                 case 5: set_user_rendering(id, kRenderFxGlowShell, 255, 0, 255, kRenderNormal, 25)     
  547.                 case 6: set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 25)
  548.         }
  549.         return PLUGIN_HANDLED
  550. }
  551.  
  552.  
  553. public client_PreThink(id)
  554. {
  555.         if(get_cvar_num("mp_falldamage") == 0 && is_user_alive(id) && is_user_connected(id))
  556.         {
  557.                 if(entity_get_float(id, EV_FL_flFallVelocity) >= FALL_VELOCITY)
  558.                 {
  559.                         falling[id] = true;
  560.                 }
  561.                 else
  562.                 {
  563.                         falling[id] = false;
  564.                 }
  565.         }
  566. }
  567.  
  568. public client_PostThink(id)
  569. {
  570.         if(get_cvar_num("mp_falldamage") == 0 && is_user_alive(id) && is_user_connected(id))
  571.         {
  572.                 if(get_user_flags(id) & ADMIN_LEVEL_H)
  573.                 {
  574.                         if(falling[id])
  575.                         {
  576.                                 entity_set_int(id, EV_INT_watertype, -3);
  577.                         }
  578.                 }
  579.         }
  580. }
  581.  
  582. public event_round_start()
  583. {
  584.         for (new id; id <= 32; id++) g_has_unlimited_clip[id] = false;
  585. }
  586.  
  587. public message_cur_weapon(msg_id, msg_dest, msg_entity)
  588. {
  589.         if (!g_has_unlimited_clip[msg_entity])
  590.                 return;
  591.        
  592.         if (!is_user_alive(msg_entity) || get_msg_arg_int(1) != 1 || is_user_zombie(msg_entity))
  593.                 return;
  594.        
  595.         static weapon, clip
  596.         weapon = get_msg_arg_int(2)
  597.         clip = get_msg_arg_int(3)
  598.        
  599.         if (MAXCLIP[weapon] > 2)
  600.         {
  601.                 set_msg_arg_int(3, get_msg_argtype(3), MAXCLIP[weapon])
  602.                
  603.                 if (clip < 2)
  604.                 {
  605.                         static wname[32], weapon_ent
  606.                         get_weaponname(weapon, wname, sizeof wname - 1)
  607.                         weapon_ent = fm_find_ent_by_owner(-1, wname, msg_entity)
  608.                        
  609.                         fm_set_weapon_ammo(weapon_ent, MAXCLIP[weapon])
  610.                 }
  611.         }
  612. }
  613.  
  614. stock fm_find_ent_by_owner(entity, const classname[], owner)
  615. {
  616.         while ((entity = engfunc(EngFunc_FindEntityByString, entity, "classname", classname)) && pev(entity, pev_owner) != owner) {}
  617.        
  618.         return entity;
  619. }
  620.  
  621. stock fm_set_weapon_ammo(entity, amount)
  622. {
  623.         set_pdata_int(entity, OFFSET_CLIPAMMO, amount, OFFSET_LINUX_WEAPONS);
  624. }
  625.  
  626. public openmotd(id)
  627. {
  628.         new configsdir[200]
  629.         new MOTDfile[200]
  630.  
  631.         get_configsdir(configsdir,199)
  632.         format(MOTDfile,199,"%s/vip.html",configsdir)
  633.    
  634.         show_motd(id,MOTDfile)
  635.    
  636.         return PLUGIN_HANDLED
  637. }
  638.  
  639. public vip_connect(id)
  640. {
  641.         if(is_user_connected(id))
  642.         {
  643.                 if(get_user_flags(id) & ADMIN_LEVEL_H)
  644.                 {
  645.                         new ime[32]
  646.                         get_user_name(id, ime, 31)
  647.                         set_hudmessage(255, 0, 0, 0.06, 0.73, 0, 6.0, 10.0)
  648.                         show_hudmessage(0, "VIP %s je dosao na server",ime)
  649.                 }
  650.                 return PLUGIN_HANDLED
  651.         }
  652.         return PLUGIN_HANDLED
  653. }
  654.  
  655. public StartRunde()
  656. {
  657.         ColorChat(0,NORMAL,"^4[VIP] ^1Da vidis VIP privilegije say ^3/vip^1")
  658.         ColorChat(0,NORMAL,"^4[VIP] ^1Da otvoris VIP menu say ^3/vm^1")
  659.         ColorChat(0,NORMAL,"^4[VIP] ^1Ako zelite da narucite VIP-a say ^3/buyvip^1")
  660.         return PLUGIN_HANDLED
  661. }
  662.  
  663. public Adv_pub()
  664. {
  665.         ColorChat(0,NORMAL,"^4[VIP] ^1Ovaj server koristi ^3Zombie Biohazard VIP ^1by ^3MiljanX^1")
  666.         return PLUGIN_HANDLED
  667. }
  668.  
  669.  
  670. public buyvip(id)
  671. {
  672.         client_cmd(id, "messagemode UNESITE_VAS_EMAIL")
  673.         set_hudmessage(0, 255, 0, -1.0, 0.38, 0, 6.0, 10.0)
  674.         show_hudmessage(id, "Ukucajte vas E-Mail")
  675.         ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Ukucajte vas E-mail")
  676.         ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Svaka zloupotreba se kaznjava")
  677.         return PLUGIN_CONTINUE
  678. }
  679.  
  680. public type_mail(id)
  681. {
  682.         new receno[192]
  683.         new ime[33]
  684.         new steam[33]
  685.         new nesto[192]
  686.         read_args(receno,191)
  687.         get_user_name(id,ime,32)
  688.         get_user_authid(id,steam,32)
  689.         remove_quotes(receno)
  690.         format(nesto, 191, "Nick: ^"%s^" je narucio VIP-a. STEAM_ID: ^"%s^". E-Mail: ^"%s^"", ime, steam, receno)
  691.         write_file(narudzba, nesto)
  692.         write_file(narudzba, " ")
  693.         ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Uspesno ste narucili VIP-a.")
  694.         ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Head Admin ce pregledati vasu porudzbinu i odgovoriti vam na mail u najkracem roku.")
  695.         return PLUGIN_HANDLED
  696. }
  697. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  698. *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par }
  699. */
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top