hns vipmenu help
Posted: 2012 Mar 14 16:10
Sveiki, susiduriau su viena smulkmena gal galetumete padeti istaisyti? Beda yra ta, kad sis hns vip menu yra prieinamas visiems, o as noreciau, kad jis veiktu tik vipam, t.y. ADMIN_LEVEL_H
Code: Select all
#include <amxmodx>#include <cstrike>#include <engine>#include <fun>#include <hamsandwich> #define ADMIN_JBVIP#define TASK_ID 997 // Define the Plugin Versionnew const VERSION[] = { "1.0" }; // PREFIXnew const PREFIX[] = { "!g[VIP]!n" }; new VipUsed[33]; public plugin_init(){ register_plugin("VIP Menu", VERSION, "Giltinas"); RegisterHam(Ham_Spawn, "player", "FwdHamSpawn_Post", 1); RegisterHam( Ham_Item_PreFrame, "player", "FwdPreFrame_Post", 1); register_clcmd("say vipmenu", "cmdVmenu"); register_clcmd("say /vipmenu", "cmdVmenu");} public FwdPreFrame_Post(id){ if(!is_user_alive(id)) { return PLUGIN_HANDLED; } return PLUGIN_HANDLED;} public event_CurWeapon(id){ { if(read_data(2) == CSW_KNIFE) { set_task(5.0, "Heal", id + TASK_ID) } else { if(task_exists(id + TASK_ID)) remove_task(id + TASK_ID) } }} public Heal(id){ id -= TASK_ID new gyvybes gyvybes = get_user_health(id) if(is_user_alive(id)) { if(gyvybes < 255) { set_user_health(id, get_user_health(id) +5) set_task(5.0, "Heal", id + TASK_ID) } }} public FwdHamSpawn_Post(id){ VipUsed[id] = false; set_user_rendering( id, _, 0, 0, 0, _, 0 ); } public cmdVmenu(id){ if(cs_get_user_team(id) == CS_TEAM_CT && get_user_flags(id) && ADMIN_JBVIP && !VipUsed[id]) { VipCTMenu(id); } else if(cs_get_user_team(id) == CS_TEAM_T && get_user_flags(id) && ADMIN_JBVIP && !VipUsed[id]) { VipTMenu(id); } else if(VipUsed[id]) { client_printc(id, "%s Palaukite kito round'o.", PREFIX); } else { client_printc(id, "%s Pasirinkite komanda.", PREFIX); return PLUGIN_HANDLED; } return PLUGIN_HANDLED;} public VipCTMenu(id){ new menu = menu_create("\rV\wIP \rM\wenu:", "VipCTMenu_handler"); menu_additem(menu, "\wScout Be Kulku", "1", 0); menu_additem(menu, "\wGravitacija[700]", "2", 0); menu_additem(menu, "\w+110HP", "3", 0); menu_setprop(menu, MPROP_EXIT, MEXIT_ALL); menu_display(id, menu, 0);} public VipCTMenu_handler(id, menu, item){ if( item == MENU_EXIT ) { menu_destroy(menu); return PLUGIN_HANDLED; } new data[6], iName[64]; new access, callback; menu_item_getinfo(menu, item, access, data,5, iName, 63, callback); new key = str_to_num(data); switch(key) { case 1: { give_item(id, "weapon_scout"); cs_set_user_bpammo(id, CSW_SCOUT, 0); cs_set_weapon_ammo(find_ent_by_owner(1, "weapon_scout", id), 0); VipUsed[id] = true; } case 2: { set_user_gravity(id, 0.700) VipUsed[id] = true; } case 3: { set_user_health(id, get_user_health(id) + 110); VipUsed[id] = true; } } menu_destroy(menu); return PLUGIN_HANDLED;} public VipTMenu(id){ new menu = menu_create("\rV\wIP \rM\wenu:", "VipTMenu_handler"); menu_additem(menu, "\wGravitacija[700]", "1", 0); menu_additem(menu, "\w+150HP", "2", 0); menu_additem(menu, "\w+5HP/5sec", "3", 0); menu_additem(menu, "\wScout Be Kulku", "4", 0); menu_additem(menu, "\wNematomumas 60%", "5", 0); menu_setprop(menu, MPROP_EXIT, MEXIT_ALL); menu_display(id, menu, 0);} public VipTMenu_handler(id, menu, item){ if( item == MENU_EXIT ) { menu_destroy(menu); return PLUGIN_HANDLED; } new data[6], iName[64]; new access, callback; menu_item_getinfo(menu, item, access, data,5, iName, 63, callback); new key = str_to_num(data); switch(key) { case 1: { set_user_gravity(id, 0.700) VipUsed[id] = true; } case 2: { set_user_health(id, get_user_health(id) + 150); VipUsed[id] = true; } case 3: { set_user_health(id, get_user_health(id) +5) set_task(5.0, "Heal", id + TASK_ID) } case 4: { give_item(id, "weapon_scout"); cs_set_user_bpammo(id, CSW_SCOUT, 0); cs_set_weapon_ammo(find_ent_by_owner(1, "weapon_scout", id), 0); VipUsed[id] = true; } case 5: { set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 60); VipUsed[id] = true; } } menu_destroy(menu); return PLUGIN_HANDLED;} // Colour Chatstock client_printc(const id, const input[], any:...){ new count = 1, players[32]; static msg[191]; vformat(msg, 190, input, 3); replace_all(msg, 190, "!g", "^x04"); // Green Color replace_all(msg, 190, "!n", "^x01"); // Default Color replace_all(msg, 190, "!t", "^x03"); // Team Color if (id) players[0] = id; else get_players(players, count, "ch"); { for (new i = 0; i < count; i++) { if (is_user_connected(players[i])) { message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]); write_byte(players[i]); write_string(msg); message_end(); } } }}