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>
- #include <colorchat>
- new bool:g_Vip[33], gRound=0, menu,
- menu_callback_handler, skoki[33];
- public plugin_init()
- {
- register_plugin("VIP CS:GO", "1.0", "Lukovsky");
- register_clcmd("say /vip", "ShowMotd");
- register_clcmd("say /vips", "drukuj_vip");
- register_event("DeathMsg", "DeathMsg", "a");
- register_event("HLTV", "event_new_round", "a", "1=0", "2=0");
- register_event("TextMsg", "GameCommencing", "a", "2=#Game_will_restart_in");
- register_forward(FM_CmdStart, "CmdStartPre");
- RegisterHam(Ham_Spawn, "player", "SpawnedEventPre", 1);
- register_message(get_user_msgid("ScoreAttrib"), "VipStatus");
- register_message(get_user_msgid("SayText"),"handleSayText");
- }
- public client_authorized(id)
- {
- if(get_user_flags(id) & ADMIN_LEVEL_H){
- g_Vip[id]=true;
- }
- }
- public client_disconnect(id)
- {
- g_Vip[id]=false;
- }
- public drukuj_vip(id)
- {
- new licz=0, l=0, wskaz[7]=0, name[48], tekst[7][191];
- for(new i=1; i <= 32; i++)
- {
- if(!is_user_connected(i))
- continue;
- if(is_user_hltv(i))
- continue;
- if(is_user_bot(i))
- continue;
- if((get_user_flags(i) & ADMIN_LEVEL_H))
- {
- licz++;
- l = ilosc_vip();
- get_user_name(i, name, 47);
- if(licz > 0 && licz < 6)
- {
- wskaz[0] = 1;
- add(tekst[0], 190, name);
- if(licz == l) add(tekst[0], 190, ".");
- else add(tekst[0], 190, ", ");
- }
- else if(licz > 5 && licz < 11)
- {
- wskaz[1] = 1;
- add(tekst[1], 190, name);
- if(licz == l) add(tekst[1], 190, ".");
- else add(tekst[1], 190, ", ");
- }
- else if(licz > 10 && licz < 16)
- {
- wskaz[2] = 1;
- add(tekst[2], 190, name);
- if(licz == l) add(tekst[2], 190, ".");
- else add(tekst[2], 190, ", ");
- }
- else if(licz > 15 && licz < 21)
- {
- wskaz[3] = 1;
- add(tekst[3], 190, name);
- if(licz == l) add(tekst[3], 190, ".");
- else add(tekst[3], 190, ", ");
- }
- else if(licz > 20 && licz < 26)
- {
- wskaz[4] = 1;
- add(tekst[4], 190, name);
- if(licz == l) add(tekst[4], 190, ".");
- else add(tekst[4], 190, ", ");
- }
- else if(licz > 25 && licz < 31)
- {
- wskaz[5] = 1;
- add(tekst[5], 190, name);
- if(licz == l) add(tekst[5], 190, ".");
- else add(tekst[5], 190, ", ");
- }
- else if(licz > 30)
- {
- wskaz[6] = 1;
- add(tekst[6], 190, name);
- if(licz == l) add(tekst[6], 190, ".");
- else add(tekst[6], 190, ", ");
- }
- }
- }
- if(wskaz[0] == 1)
- ColorChat(id, BLUE, "Vipy online:^x04 %s", tekst[0]);
- if(wskaz[1] == 1)
- ColorChat(id, GREEN, tekst[1]);
- if(wskaz[2] == 1)
- ColorChat(id, GREEN, tekst[2]);
- if(wskaz[3] == 1)
- ColorChat(id, GREEN, tekst[3]);
- if(wskaz[4] == 1)
- ColorChat(id, GREEN, tekst[4]);
- if(wskaz[5] == 1)
- ColorChat(id, GREEN, tekst[5]);
- if(wskaz[6] == 1)
- ColorChat(id, GREEN, tekst[6]);
- }
- stock ilosc_vip()
- {
- new licz=0;
- for(new i=1; i <= 32; i++)
- {
- if(!is_user_connected(i) || is_user_bot(i) || is_user_hltv(i))
- continue;
- if(get_user_flags(i) & ADMIN_LEVEL_H){
- licz++;
- }
- }
- return licz;
- }
- public CmdStartPre(id, uc_handle)
- {
- if(g_Vip[id]){
- if(is_user_alive(id) && is_user_connected(id) && !is_user_hltv(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;
- }
- return PLUGIN_CONTINUE;
- }
- public event_new_round(){
- ++gRound;
- }
- public GameCommencing(){
- gRound=0;
- }
- public SpawnedEventPre(id)
- {
- if(is_user_hltv(id))
- return PLUGIN_HANDLED;
- if(get_user_flags(id) & ADMIN_LEVEL_H){
- g_Vip[id]=true;
- }
- if(g_Vip[id]){
- if(is_user_alive(id)){
- SpawnedEventPreVip(id);
- }
- }
- return PLUGIN_CONTINUE;
- }
- public SpawnedEventPreVip(id)
- {
- cs_set_user_armor(id, 100, CS_ARMOR_VESTHELM);
- skoki[id]=(gRound>=1?1:-1);
- show_vip_menu(id);
- if(get_user_team(id)==2){
- give_item(id, "item_thighpack");
- }
- }
- public menu_1_handler(id){
- 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;
- cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
- new sgnum=(user_has_weapon(id,CSW_SMOKEGRENADE)?cs_get_user_bpammo(id,CSW_SMOKEGRENADE):0);
- give_item(id, "weapon_smokegrenade");
- ++sgnum;
- StripWeapons(id, Secondary);
- give_item(id, "weapon_deagle");
- cs_set_user_bpammo(id, CSW_DEAGLE, 35);
- }
- public menu_2_handler(id){
- 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;
- cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
- 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);
- StripWeapons(id, Secondary);
- give_item(id, "weapon_deagle");
- give_item(id, "weapon_famas");
- cs_set_user_bpammo(id, CSW_FAMAS, 90);
- cs_set_user_bpammo(id, CSW_DEAGLE, 35);
- }
- public menu_3_handler(id){
- 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;
- cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
- 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);
- StripWeapons(id, Secondary);
- give_item(id, "weapon_deagle");
- give_item(id, "weapon_ak47");
- cs_set_user_bpammo(id, CSW_AK47, 90);
- cs_set_user_bpammo(id, CSW_DEAGLE, 35);
- }
- public menu_4_handler(id){
- 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;
- cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
- 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);
- StripWeapons(id, Secondary);
- give_item(id, "weapon_deagle");
- give_item(id, "weapon_m4a1");
- cs_set_user_bpammo(id, CSW_M4A1, 90);
- cs_set_user_bpammo(id, CSW_DEAGLE, 35);
- }
- public menu_5_handler(id){
- 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;
- cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
- 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);
- StripWeapons(id, Secondary);
- give_item(id, "weapon_deagle");
- give_item(id, "weapon_awp");
- cs_set_user_bpammo(id, CSW_AWP, 30);
- cs_set_user_bpammo(id, CSW_DEAGLE, 35);
- }
- public menu_6_handler(id){
- 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;
- cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
- 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);
- StripWeapons(id, Secondary);
- give_item(id, "weapon_deagle");
- give_item(id, "weapon_m249");
- cs_set_user_bpammo(id, CSW_M249, 200);
- cs_set_user_bpammo(id, CSW_DEAGLE, 35);
- }
- public DeathMsg()
- {
- new killer=read_data(1);
- new victim=read_data(2);
- if(is_user_hltv(killer))
- return PLUGIN_HANDLED;
- if(is_user_hltv(victim))
- return PLUGIN_HANDLED;
- if(is_user_alive(killer) && g_Vip[killer] && get_user_team(killer) != get_user_team(victim)){
- DeathMsgVip(killer,victim,read_data(3));
- }
- return PLUGIN_CONTINUE;
- }
- public DeathMsgVip(kid,vid,hs){
- set_user_health(kid, min(get_user_health(kid)+(hs?15:10),110));
- cs_set_user_money(kid, cs_get_user_money(kid)+(hs?800:500));
- }
- 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,"\wDeagle + Granaty","",0,menu_callback_handler);
- if(menu_callback(id, menu, ++num)==ITEM_ENABLED){
- active=true;
- }
- menu_additem(menu,"\wFamas + Deagle + Granaty","",0,menu_callback_handler);
- if(menu_callback(id, menu, ++num)==ITEM_ENABLED){
- active=true;
- }
- menu_additem(menu,"\wAK47 + Deagle + Granaty","",0,menu_callback_handler);
- if(menu_callback(id, menu, ++num)==ITEM_ENABLED){
- active=true;
- }
- menu_additem(menu,"\wM4A1 + Deagle + Granaty","",0,menu_callback_handler);
- if(menu_callback(id, menu, ++num)==ITEM_ENABLED){
- active=true;
- }
- menu_additem(menu,"\wAWP + Deagle + Granaty","",0,menu_callback_handler);
- if(menu_callback(id, menu, ++num)==ITEM_ENABLED){
- active=true;
- }
- menu_additem(menu,"\wKrowa + Deagle + Granaty","",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 menu_callback(id, menu, item){
- if(is_user_alive(id)){
- if(gRound>=1){
- if(item==0){
- return ITEM_ENABLED;
- }
- }
- if(gRound>=2){
- if(item==1){
- return ITEM_ENABLED;
- }
- }
- if(gRound>=3){
- if(item==2){
- return ITEM_ENABLED;
- }
- if(item==3){
- return ITEM_ENABLED;
- }
- if(item==4){
- return ITEM_ENABLED;
- }
- if(item==5){
- return ITEM_ENABLED;
- }
- }
- }
- return ITEM_DISABLED;
- }
- public menu_handler(id, menu, item){
- if(is_user_alive(id)){
- if(gRound>=1){
- if(item==0){
- menu_1_handler(id);
- }
- }
- if(gRound>=2){
- if(item==1){
- menu_2_handler(id);
- }
- }
- if(gRound>=3){
- if(item==2){
- menu_3_handler(id);
- }
- if(item==3){
- menu_4_handler(id);
- }
- if(item==4){
- menu_5_handler(id);
- }
- if(item==5){
- menu_6_handler(id);
- }
- }
- }
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- public VipStatus()
- {
- new id=get_msg_arg_int(1);
- if(is_user_alive(id) && !is_user_hltv(id) && g_Vip[id]){
- set_msg_arg_int(2, ARG_BYTE, get_msg_arg_int(2)|4);
- }
- return PLUGIN_CONTINUE;
- }
- public ShowMotd(id){
- show_motd(id, "vip.txt", "Informacje o vipie");
- }
- public handleSayText(msgId,msgDest,msgEnt)
- {
- new id = get_msg_arg_int(1);
- if(!is_user_connected(id))
- return PLUGIN_CONTINUE;
- if(g_Vip[id])
- {
- new szTmp[192],szTmp2[192];
- get_msg_arg_string(2,szTmp, charsmax( szTmp ) );
- new szPrefix[64];
- if(g_Vip[id]) formatex(szPrefix,charsmax( szPrefix ),"^x01*^x03[VIP]^x01*");
- if(!equal(szTmp,"#Cstrike_Chat_All"))
- {
- add(szTmp2, charsmax(szTmp2), "^x01");
- add(szTmp2, charsmax(szTmp2), szPrefix);
- add(szTmp2, charsmax(szTmp2), " ");
- add(szTmp2, charsmax(szTmp2), szTmp);
- }
- else
- {
- new szPlayerName[64];
- get_user_name(id, szPlayerName, charsmax(szPlayerName));
- get_msg_arg_string(4, szTmp, charsmax(szTmp));
- set_msg_arg_string(4, "");
- add(szTmp2, charsmax(szTmp2), "^x01");
- add(szTmp2, charsmax(szTmp2), szPrefix);
- add(szTmp2, charsmax(szTmp2), "^x03 ");
- add(szTmp2, charsmax(szTmp2), szPlayerName);
- add(szTmp2, charsmax(szTmp2), "^x01 : ");
- add(szTmp2, charsmax(szTmp2), szTmp)
- }
- set_msg_arg_string(2, szTmp2);
- }
- return PLUGIN_CONTINUE;
- }
- /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
- *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement