Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <amxmodx>
- #include <cstrike>
- #include <engine>
- #include <fakemeta>
- #include <fun>
- #include <hamsandwich>
- #include <stripweapons>
- forward amxbans_admin_connect(id);
- new CsArmorType:armortype, bool:g_Vip[33], gRound=0, menu, menu_callback_handler,
- skoki[33], weapon_id;
- public plugin_init(){
- register_plugin("VIP Ultimate", "12.3.0.2", "benio101 & speedkill");
- register_forward(FM_CmdStart, "CmdStartPre");
- RegisterHam(Ham_Spawn, "player", "SpawnedEventPre", 1);
- register_event("HLTV", "event_new_round", "a", "1=0", "2=0");
- register_logevent("GameCommencing", 2, "1=Game_Commencing");
- register_message(get_user_msgid("ScoreAttrib"), "VipStatus");
- register_message(get_user_msgid("SayText"),"handleSayText");
- }
- public client_authorized(id){
- if(get_user_flags(id) & 262144 == 262144){
- client_authorized_vip(id);
- }
- }
- public client_authorized_vip(id){
- g_Vip[id]=true;
- }
- public client_disconnect(id){
- if(g_Vip[id]){
- client_disconnect_vip(id);
- }
- }
- public client_disconnect_vip(id){
- g_Vip[id]=false;
- }
- public CmdStartPre(id, uc_handle){
- if(g_Vip[id]){
- if(is_user_alive(id)){
- CmdStartPreVip(id, uc_handle);
- }
- }
- }
- public CmdStartPreVip(id, uc_handle){
- new flags = pev(id, pev_flags);
- if((get_uc(uc_handle, UC_Buttons) & IN_JUMP) && !(flags & FL_ONGROUND) && !(pev(id, pev_oldbuttons) & IN_JUMP) && skoki[id]>0){
- --skoki[id];
- new Float:velocity[3];
- pev(id, pev_velocity,velocity);
- velocity[2] = random_float(265.0,285.0);
- set_pev(id,pev_velocity,velocity);
- } else if(flags & FL_ONGROUND && skoki[id]!=-1){
- skoki[id] = 1;
- }
- }
- public SpawnedEventPre(id){
- if(g_Vip[id]){
- if(is_user_alive(id)){
- SpawnedEventPreVip(id);
- }
- }
- }
- public SpawnedEventPreVip(id){
- skoki[id]=1;
- show_vip_menu(id);
- if(get_user_team(id)==2){
- give_item(id, "item_thighpack");
- }
- }
- public menu_1_handler(id){
- cs_set_user_armor(id, min(cs_get_user_armor(id,armortype)+100, 100), armortype);
- new henum=(user_has_weapon(id,CSW_HEGRENADE)?cs_get_user_bpammo(id,CSW_HEGRENADE):0);
- give_item(id, "weapon_hegrenade");
- ++henum;
- new fbnum=(user_has_weapon(id,CSW_FLASHBANG)?cs_get_user_bpammo(id,CSW_FLASHBANG):0);
- give_item(id, "weapon_flashbang");
- ++fbnum;
- new sgnum=(user_has_weapon(id,CSW_SMOKEGRENADE)?cs_get_user_bpammo(id,CSW_SMOKEGRENADE):0);
- give_item(id, "weapon_smokegrenade");
- ++sgnum;
- StripWeapons(id, Primary);
- give_item(id, "weapon_m4a1");
- give_item(id, "ammo_556nato");
- weapon_id=find_ent_by_owner(-1, "weapon_m4a1", id);
- if(weapon_id)cs_set_weapon_ammo(weapon_id, 30);
- cs_set_user_bpammo(id, CSW_M4A1, 90);
- }
- public menu_2_handler(id){
- cs_set_user_armor(id, min(cs_get_user_armor(id,armortype)+100, 100), armortype);
- new henum=(user_has_weapon(id,CSW_HEGRENADE)?cs_get_user_bpammo(id,CSW_HEGRENADE):0);
- give_item(id, "weapon_hegrenade");
- ++henum;
- new fbnum=(user_has_weapon(id,CSW_FLASHBANG)?cs_get_user_bpammo(id,CSW_FLASHBANG):0);
- give_item(id, "weapon_flashbang");
- ++fbnum;
- new sgnum=(user_has_weapon(id,CSW_SMOKEGRENADE)?cs_get_user_bpammo(id,CSW_SMOKEGRENADE):0);
- give_item(id, "weapon_smokegrenade");
- ++sgnum;
- StripWeapons(id, Primary);
- give_item(id, "weapon_ak47");
- give_item(id, "ammo_762nato");
- weapon_id=find_ent_by_owner(-1, "weapon_ak47", id);
- if(weapon_id)cs_set_weapon_ammo(weapon_id, 30);
- cs_set_user_bpammo(id, CSW_AK47, 90);
- }
- public menu_3_handler(id){
- cs_set_user_armor(id, min(cs_get_user_armor(id,armortype)+100, 100), armortype);
- new henum=(user_has_weapon(id,CSW_HEGRENADE)?cs_get_user_bpammo(id,CSW_HEGRENADE):0);
- give_item(id, "weapon_hegrenade");
- ++henum;
- new fbnum=(user_has_weapon(id,CSW_FLASHBANG)?cs_get_user_bpammo(id,CSW_FLASHBANG):0);
- give_item(id, "weapon_flashbang");
- ++fbnum;
- new sgnum=(user_has_weapon(id,CSW_SMOKEGRENADE)?cs_get_user_bpammo(id,CSW_SMOKEGRENADE):0);
- give_item(id, "weapon_smokegrenade");
- ++sgnum;
- StripWeapons(id, Primary);
- give_item(id, "weapon_awp");
- give_item(id, "ammo_338magnum");
- weapon_id=find_ent_by_owner(-1, "weapon_awp", id);
- if(weapon_id)cs_set_weapon_ammo(weapon_id, 10);
- cs_set_user_bpammo(id, CSW_AWP, 30);
- }
- public menu_4_handler(id){
- new fbnum=(user_has_weapon(id,CSW_FLASHBANG)?cs_get_user_bpammo(id,CSW_FLASHBANG):0);
- give_item(id, "weapon_flashbang");
- ++fbnum;
- StripWeapons(id, Secondary);
- give_item(id, "weapon_deagle");
- give_item(id, "ammo_50ae");
- weapon_id=find_ent_by_owner(-1, "weapon_deagle", id);
- if(weapon_id)cs_set_weapon_ammo(weapon_id, 7);
- cs_set_user_bpammo(id, CSW_DEAGLE, 35);
- }
- public show_vip_menu(id){
- menu=menu_create("\rMenu VIPa","menu_handler");
- menu_callback_handler=menu_makecallback("menu_callback");
- new bool:active=false, num=-1;
- menu_additem(menu,"\wM4A1+Kevlar+He,Fb,Sg","",0,menu_callback_handler);
- if(menu_callback(id, menu, ++num)==ITEM_ENABLED){
- active=true;
- }
- menu_additem(menu,"\wAK47+Kevlar+He,Fb,Sg","",0,menu_callback_handler);
- if(menu_callback(id, menu, ++num)==ITEM_ENABLED){
- active=true;
- }
- menu_additem(menu,"\wAWP+Kevlar+He,Fb,Sg","",0,menu_callback_handler);
- if(menu_callback(id, menu, ++num)==ITEM_ENABLED){
- active=true;
- }
- menu_additem(menu,"\wdEagle+Fb","",0,menu_callback_handler);
- if(menu_callback(id, menu, ++num)==ITEM_ENABLED){
- active=true;
- }
- if(active){
- menu_setprop(menu,MPROP_EXITNAME,"Wyjscie");
- menu_setprop(menu,MPROP_TITLE,"\yMenu Vipa");
- menu_setprop(menu,MPROP_NUMBER_COLOR,"\r");
- menu_display(id, menu);
- } else {
- menu_destroy(menu);
- }
- }
- public event_new_round(){
- ++gRound;
- }
- public GameCommencing(){
- gRound=0;
- }
- public menu_callback(id, menu, item){
- if(is_user_alive(id)){
- if(gRound>=2){
- if(item==0){
- return ITEM_ENABLED;
- }
- if(item==1){
- return ITEM_ENABLED;
- }
- }
- if(gRound>=3){
- if(item==2){
- return ITEM_ENABLED;
- }
- }
- if(gRound>=1){
- if(gRound<=2){
- if(item==3){
- return ITEM_ENABLED;
- }
- }
- }
- }
- return ITEM_DISABLED;
- }
- public menu_handler(id, menu, item){
- if(is_user_alive(id)){
- if(gRound>=2){
- if(item==0){
- menu_1_handler(id);
- }
- if(item==1){
- menu_2_handler(id);
- }
- }
- if(gRound>=3){
- if(item==2){
- menu_3_handler(id);
- }
- }
- if(gRound>=1){
- if(gRound<=2){
- if(item==3){
- menu_4_handler(id);
- }
- }
- }
- }
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- public VipStatus(){
- new id=get_msg_arg_int(1);
- if(is_user_alive(id) && g_Vip[id]){
- set_msg_arg_int(2, ARG_BYTE, get_msg_arg_int(2)|4);
- }
- }
- public handleSayText(msgId,msgDest,msgEnt){
- new id = get_msg_arg_int(1);
- if(is_user_connected(id) && g_Vip[id]){
- new szTmp[256],szTmp2[256];
- get_msg_arg_string(2,szTmp, charsmax(szTmp))
- new szPrefix[64] = "^x04[VIP]";
- if(!equal(szTmp,"#Cstrike_Chat_All")){
- add(szTmp2,charsmax(szTmp2),szPrefix);
- add(szTmp2,charsmax(szTmp2)," ");
- add(szTmp2,charsmax(szTmp2),szTmp);
- }
- else{
- add(szTmp2,charsmax(szTmp2),szPrefix);
- add(szTmp2,charsmax(szTmp2),"^x03 %s1^x01 : %s2");
- }
- set_msg_arg_string(2,szTmp2);
- }
- return PLUGIN_CONTINUE;
- }
- public amxbans_admin_connect(id){
- client_authorized(id);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement