Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <amxmodx>
- #include <amxmisc>
- #include <engine>
- #include <cstrike>
- #include <fun>
- #include <fakemeta>
- #include <fakemeta_util>
- #include <hamsandwich>
- //#include <sockets>
- //#include <nvault>
- #define PLUGIN "V.I.P CLASSIC"
- #define VERSION "6.0"
- #define AUTHOR "PedoBear"
- new vipcmd;
- new g_Round, g_Weapon[33];
- new cvar_round, cvar_open, cvar_show, cvar_chat, cvar_pistols, cvar_funk, cvar_tab;
- new vip_opened[33];
- new pistols[6] = {CSW_USP, CSW_GLOCK18, CSW_ELITE, CSW_FIVESEVEN, CSW_P228, CSW_DEAGLE}
- new bool: g_chosen[33] = false;
- //VIP SCOREBOARD
- #define SCOREATTRIB_NONE 0
- #define SCOREATTRIB_DEAD (1 << 0)
- #define SCOREATTRIB_BOMB (1 << 1)
- #define SCOREATTRIB_VIP (1 << 2)
- //Adaugare VIP
- new File[120];
- new bool: IsUserVip[33] = false;
- new Trie: LoadVip;
- new Pass;
- //Multi Jump
- new jumpnum[33], bool: dojump[33], cvar_addjump_vip, cvar_addjump_player;
- new const primaryWeapons[][] = {"weapon_shield", "weapon_scout", "weapon_xm1014", "weapon_mac10", "weapon_aug", "weapon_ump45", "weapon_sg550", "weapon_galil", "weapon_famas", "weapon_awp", "weapon_mp5navy", "weapon_m249", "weapon_m3", "weapon_m4a1", "weapon_tmp", "weapon_g3sg1", "weapon_sg552", "weapon_ak47", "weapon_p90"/*, "weapon_c4"*/}
- new const secondaryWeapons[][] = {"weapon_p228", "weapon_elite", "weapon_fiveseven", "weapon_usp", "weapon_glock18", "weapon_deagle"}
- enum cvars {
- money_per_damage,
- money_kill,
- money_hs,
- hp_kill,
- hp_hs,
- max_hp_kill
- };
- new cvar[cvars];
- //Bullet damage
- new g_type, g_enabled, g_recieved, bool:g_showrecieved, g_hudmsg1, g_hudmsg2;
- //BuyZone V.I.P MENU
- new bool:UserInBuyZone[33];
- new i_Menu, i_Menu_Pistol;
- //VIP Free
- //#define VIP_FLAG read_flags("x")
- new const vip_time[] = {24, 10};
- new g_sync, cvar_freevip;
- new vip_free = 0;
- //Advertise PRET + VIPS
- #define ADVERTISING_TIME 149.0
- stock const messages[][] = {
- "* Pentru a afla beneficiile vip-ului tasteaza in chat /vip !",
- "* Pentru a afla vip-ii online tasteaza /vips !"
- }
- //Deactivated Maps
- new bool:remove_vip = false
- //Licenta
- static const ServerLicensedIp[] = "5.254.86.253"; //Ip Oficial FUN: 5.254.86.253
- static const ServerLicensedIpTESTE[] = "192.168.1.146"; //Ip Server Teste: 192.168.1.136 || 192.168.1.122 || 192.168.1.146 || 86.105.195.222
- public plugin_init()
- {
- server_print("^n%s v%s, Copyright (C)2019 by %s^n", PLUGIN, VERSION, AUTHOR)
- register_plugin
- (
- .plugin_name = PLUGIN,
- .version = VERSION,
- .author = AUTHOR
- );
- new szIp[25];
- get_user_ip(0, szIp, sizeof (szIp) -1, 1);
- if(equal(szIp, ServerLicensedIp) || equal(szIp, ServerLicensedIpTESTE))
- {
- RegisterHam(Ham_Spawn, "player", "player_spawn", 1)
- register_event("HLTV", "round_start", "a", "1=0", "2=0")
- register_logevent("LogEvent_RoundStart", 2, "1=Round_Start");
- register_event("TextMsg", "round_restart", "a", "2=#Game_will_restart_in", "2=#Game_Commencing");
- register_message(get_user_msgid("ScoreAttrib"), "MessageScoreAttrib");
- register_event("DeathMsg", "event_DeathMsg", "a");
- register_event("StatusIcon", "Event_StatusIcon_Show_buyzone", "be", "1=1", "2=buyzone");
- register_event("StatusIcon", "StatusIcon_buyzone_OFF", "be", "1=0", "2=buyzone");
- //RegisterHam(Ham_TakeDamage,"player","fwd_tdamag");
- //RegisterHam(Ham_Item_PreFrame, "player", "player_maxspeed", 1);
- //register_event("Damage", "Damage", "b");
- //register_clcmd("vmenu", "main_menu")
- register_clcmd("say /vipmenu", "arataMeniuVIPs");
- register_clcmd("say_team /vipmenu", "arataMeniuVIPs");
- register_clcmd("say /vm", "arataMeniuVIPs");
- register_clcmd("say_team /vm", "arataMeniuVIPs");
- register_clcmd("say /vmenu", "arataMeniuVIPs");
- register_clcmd("say_team /vmenu", "arataMeniuVIPs");
- register_clcmd("say /vip", "vip_info");
- register_clcmd("say /wantvip", "vip_info");
- register_clcmd("say /vreauvip", "vip_info");
- register_clcmd("say", "hook_say");
- register_clcmd("say_team", "hook_say");
- register_clcmd("say /resetscore", "reset_score")
- register_clcmd("say /restartscore", "reset_score")
- register_clcmd("say /rs", "reset_score")
- register_clcmd("say /rz", "reset_score")
- register_clcmd("say !rs", "reset_score")
- register_clcmd("say_team /resetscore", "reset_score")
- register_clcmd("say_team /restartscore", "reset_score")
- register_clcmd("say_team /rs", "reset_score")
- register_clcmd("say_team /rz", "reset_score")
- register_clcmd("say_team !rs", "reset_score")
- register_clcmd("say /resetscoredead", "reset_score_dead")
- register_clcmd("say /restartscoredead", "reset_score_dead")
- register_clcmd("say /rsd", "reset_score_dead")
- register_clcmd("say /rzd", "reset_score_dead")
- register_clcmd("say !rsd", "reset_score_dead")
- register_clcmd("say_team /resetscoredead", "reset_score_dead")
- register_clcmd("say_team /restartscoredead", "reset_score_dead")
- register_clcmd("say_team /rsd", "reset_score_dead")
- register_clcmd("say_team /rzd", "reset_score_dead")
- register_clcmd("say_team !rsd", "reset_score_dead")
- //register_clcmd("say /pistoale", "first_menu");
- //register_clcmd("say_team /pistoale", "first_menu");
- cvar_round = register_cvar("vip_openmenu_round", "3")
- cvar_open = register_cvar("vip_zaround", "1")
- cvar_show = register_cvar("vip_showmenu", "1")
- cvar_chat = register_cvar("vip_showchat", "1")
- cvar_pistols = register_cvar("vip_auto_fill", "1")
- cvar_funk = register_cvar("vip_taskmanager", "1")
- cvar_tab = register_cvar("vip_scoreboard", "1")
- cvar[hp_kill] = register_cvar("vip_receive_hp_kill", "10"); // 0 = dezactivat
- cvar[hp_hs] = register_cvar("vip_receive_hp_hs", "20"); // 0 = dezactivat
- cvar[money_kill] = register_cvar("vip_receive_money_kill", "250"); // 0 = dezactivat
- cvar[money_hs] = register_cvar("vip_receive_money_hs", "500"); // 0 = dezactivat
- cvar[max_hp_kill] = register_cvar("vip_receive_max_hp_kill", "120"); // valoarea maxima de hp pe care o poti obtine facand killuri
- cvar[money_per_damage] = register_cvar("vip_money_per_damage", "3") //How many $ VIP will get per 1 damage -> nu functioneaza
- //Multi Jump
- cvar_addjump_vip = register_cvar("vip_cvar_addjump_vip", "0") // Are 1 salturi in plus
- cvar_addjump_player = register_cvar("vip_cvar_addjump_player", "0") // Are 0 salt in plus
- //V.I.P LIST
- Pass = get_cvar_pointer("amx_password_field")
- LoadVip = TrieCreate()
- get_configsdir(File, charsmax(File))
- format(File, charsmax(File), "%s/fun-eurocs-vip/%s", File, "vip_list.ini")
- new FilePointer, Key[32], Password[32], FileData[256]
- if(!file_exists(File))
- {
- FilePointer = fopen(File, "w")
- fclose(FilePointer)
- }
- FilePointer = fopen(File, "rt")
- if(FilePointer)
- {
- while(!feof(FilePointer))
- {
- fgets(FilePointer, FileData, charsmax(FileData))
- parse(FileData, Key, charsmax(Key), Password, charsmax(Password))
- TrieSetString(LoadVip, Key, Password)
- }
- fclose(FilePointer)
- }
- //Map List
- new path[64];
- get_localinfo("amxx_configsdir", path, charsmax(path));
- formatex(path, charsmax(path), "%s/fun-eurocs-vip/vip_maps.ini", path);
- new file_maps = fopen(path, "r+");
- if(!file_exists(path))
- {
- write_file(path, "; VIP-UL ESTE DEZACTIVAT PE URMATOARELE HARTI: ");
- write_file(path, "; Exemplu de adaugare HARTA:^n; ^"harta^"^n^nfy_snow^ncss_bycastor");
- }
- new mapname[32];
- get_mapname(mapname, charsmax(mapname));
- new text[121], maptext[32];
- while(!feof(file_maps))
- {
- fgets(file_maps, text, charsmax(text));
- trim(text);
- if(text[0] == ';' || !strlen(text))
- continue;
- parse(text, maptext, charsmax(maptext));
- if(equal(maptext, mapname))
- {
- log_amx("Am dezactivat pluginul 'VIP' pe harta %s.", maptext);
- remove_vip = true;
- break;
- }
- }
- fclose(file_maps);
- //bullet damage
- register_event("Damage", "on_damage", "b", "2!0", "3=0", "4!0")
- g_type = register_cvar("amx_bulletdamage", "3")
- g_recieved = register_cvar("amx_bulletdamage_recieved", "1")
- g_hudmsg1 = CreateHudSyncObj()
- g_hudmsg2 = CreateHudSyncObj()
- //VIP FREE
- register_clcmd("say /timevip", "time_remain");
- set_task(1.0, "check_time");
- set_task(60.0, "check_time", _, _, _, "b");
- set_task(1.0, "hud_mess", _, _, _, "b");
- cvar_freevip = register_cvar("vip_free", "1");
- cached_vars();
- g_sync = CreateHudSyncObj();
- //g_maxplayers = get_maxplayers();
- //Advertise Message
- set_task(ADVERTISING_TIME, "show_messages", _, _, _,"b");
- set_task(5.0, "_ProtectCheck_", 21412321, _,_, "b")
- server_print("[%s] Felicitari! Detii o licenta valida, iar pluginul functioneaza perfect!", PLUGIN);
- server_print("[%s] Pentru mai multe detalii y/m: ravravy@yahoo.com", PLUGIN);
- server_print("[%s] Ip-ul Licentiat: [%s] || Ip-ul Serverului: [%s]", PLUGIN, szIp, ServerLicensedIp);
- }
- else
- {
- new szPluginName[32];
- formatex(szPluginName, sizeof(szPluginName) -1, "[IP Nelicentiat] %s", PLUGIN);
- register_plugin(szPluginName, PLUGIN, "PedoBear");
- server_print("[%s] Nu detii o licenta valabila! Plugin-ul nu va functiona corespunzator!", PLUGIN);
- server_print("[%s] Pentru mai multe detalii Y!M: ravravy@yahoo.com", PLUGIN);
- server_print("[%s] Ip-ul Licentiat: [%s] || Ip-ul Serverului: [%s]", PLUGIN, szIp, ServerLicensedIp);
- pause("ade");
- }
- }
- #define IsPlayer(%0) (1 <= %0 <= get_maxplayers())
- public fwd_tdamag(iVictim,iInflictor,iAttacker,Float:fDamage)
- if (is_vip(iAttacker) && iInflictor == iAttacker && IsPlayer (iAttacker) && is_user_alive(iAttacker) && is_user_connected(iAttacker))
- SetHamParamFloat(4, fDamage * 2.5);
- //Advertise Mesaje
- public show_messages()
- {
- new Buffer[256];
- formatex(Buffer, sizeof Buffer - 1, "^x02%s", messages[random(sizeof messages)]);
- new players[32], num, id;
- get_players(players, num);
- for(new i = 0 ; i < num ; i++)
- {
- id = players[i]
- message_begin(MSG_ONE, get_user_msgid("SayText"), _, id);
- write_byte(id);
- write_string(Buffer);
- message_end();
- }
- }
- public plugin_cfg()
- if(get_pcvar_num(g_recieved))
- g_showrecieved = true; //Checks of g_received is 1 and if so, sets g_showrecieved to true
- public vip_info(id)
- show_motd(id, "/addons/amxmodx/configs/vip_info.html");
- public reset_score(id)
- {
- static name[32]
- get_user_name(id, name, 31)
- new frags = get_user_frags(id);
- new deaths = get_user_deaths(id);
- if(frags == 0 && deaths == 0)
- {
- chat_color(id, "!g[FUN|RS]!t Ai scorul deja !y0 !g- !y0 !t!")
- return PLUGIN_HANDLED
- }
- else
- {
- if(is_vip(id) || get_user_flags(id) & read_flags("y"))
- {
- for(new i = 0; i < 2; i++)
- {
- cs_set_user_deaths(id, 0);
- set_user_frags(id, 0);
- }
- chat_color(id, "!g[FUN|RS]!t Scorul tau a fost resetat! Bafta la fraguri !y[!gVIP!y] !g%s!t Have fun!", name)
- }
- else
- {
- for(new i = 0; i < 2; i++)
- {
- cs_set_user_deaths(id, 0);
- set_user_frags(id, 0);
- }
- chat_color(id, "!g[FUN|RS]!t Scorul tau a fost resetat! Bafta la fraguri !g%s!t Have fun!", name)
- }
- }
- return PLUGIN_HANDLED
- }
- public reset_score_dead(id)
- {
- static name[32]
- get_user_name(id, name, 31)
- new deaths = get_user_deaths(id);
- if(deaths == 0)
- {
- chat_color(id, "!g[FUN|RS]!t Ai !gdeath-urile !tdeja !y0 !g- !y0 !t!")
- return PLUGIN_HANDLED
- }
- else
- {
- for(new i = 0; i < 2; i++)
- cs_set_user_deaths(id, 0);
- if(is_vip(id))
- chat_color(id, "!g[FUN|RS - VIP]!t Dead-urile tale au fost resetate! Bafta la fraguri !y[!gVIP!y] !g%s!t Have fun!", name)
- }
- return PLUGIN_HANDLED
- }
- public plugin_precache()
- {
- }
- public bool:_get_vip(iPlugin, iParams)
- {
- new id = get_param(1);
- if(is_vip(id) || has_flag(id, "y")) return true;
- return false;
- }
- public native_vip_free(id) return vip_free
- public on_damage(id)
- {
- if(g_enabled)
- {
- static attacker; attacker = get_user_attacker(id)
- static damage; damage = read_data(2)
- if(g_showrecieved && (is_vip(id) || get_user_flags(id) & read_flags("y") || vip_free))
- {
- set_hudmessage(255, 0, 0, 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)
- ShowSyncHudMsg(id, g_hudmsg2, "%i^n", damage)
- }
- if(is_user_connected(attacker) && (is_vip(attacker) || get_user_flags(attacker) & read_flags("y") || vip_free))
- {
- switch(g_enabled)
- {
- case 1:
- {
- set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
- ShowSyncHudMsg(attacker, g_hudmsg1, "%i^n", damage)
- }
- case 2:
- {
- if(fm_is_ent_visible(attacker,id))
- {
- set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
- ShowSyncHudMsg(attacker, g_hudmsg1, "%i^n", damage)
- }
- }
- }
- }
- }
- }
- public client_authorized(id)
- {
- g_Weapon[id] = 0;
- new Key[32], Password[32], OldPassword[32]
- get_user_name(id, Key, charsmax(Key))
- get_user_info(id, "_pw", Password, charsmax(Password))
- if(TrieKeyExists(LoadVip, Key))
- {
- TrieGetString(LoadVip, Key, OldPassword, charsmax(OldPassword))
- if(equal(Password, OldPassword))
- IsUserVip[id] = true
- else
- {
- server_cmd("kick #%i ^"Acest player are VIP!^"", get_user_userid(id))
- IsUserVip[id] = false
- }
- }
- }
- public client_infochanged(id)
- {
- new oldname[32], newname[32], Password[32], OldPassword[32], PasswordField[5]
- get_user_name(id, oldname, charsmax(oldname))
- get_user_info(id, "name", newname, charsmax(newname))
- if(equal(newname, oldname))
- return
- if(TrieKeyExists(LoadVip, newname))
- {
- get_pcvar_string(Pass, PasswordField, charsmax(PasswordField))
- get_user_info(id, PasswordField, OldPassword, charsmax(OldPassword))
- TrieGetString(LoadVip, newname, Password, charsmax(Password))
- if(equal(OldPassword, Password))
- IsUserVip[id] = true
- else
- {
- server_cmd("kick #%i ^"NU esti VIP!^"", get_user_userid(id))
- IsUserVip[id] = false
- }
- }
- else
- IsUserVip[id] = false
- }
- public plugin_end()
- TrieDestroy(LoadVip)
- public client_putinserver(id)
- {
- new xP[32], xN
- get_players(xP, xN, "c")
- for (new i=0; i< xN; i++)
- {
- if(!is_user_connected(xP[i]))
- continue
- client_cmd(xP[i], "cl_minmodels 0")
- }
- //JUMP
- jumpnum[id] = 0
- dojump[id] = false
- /*if(vip_free && !(get_user_flags(id) & read_flags("x") && !(get_user_flags(id) & read_flags("y"))))
- {
- new flags = get_user_flags(id);
- flags |= VIP_FLAG
- set_user_flags(id, flags);
- }*/
- if(is_vip(id) || get_user_flags(id) & read_flags("y"))
- {
- new name[33];
- get_user_name(id, name, charsmax(name));
- chat_color(0, "!g[FUN-VIP]!t VIP-ul [!g%s!t] se conecteaza pe server...", name);
- }
- //set_task(0.9, "vip_menu", id);
- return PLUGIN_CONTINUE;
- }
- //VIP FREE
- public cached_vars()
- vip_free = get_pcvar_num(cvar_freevip);
- public check_time()
- {
- new o;
- time(o, _, _);
- if(!vip_free)
- {
- if(o >= vip_time[0] || o < vip_time[1])
- {
- vip_free = 1;
- set_pcvar_num(cvar_freevip, 1);
- chat_color(0, "^4[^3VIP^4]^1 Eventul^3 Free VIP^1 a fost activat!");
- }
- }
- else
- {
- if(o < vip_time[0] && o >= vip_time[1])
- {
- vip_free = 0;
- set_pcvar_num(cvar_freevip, 0);
- chat_color(0, "^4[^3VIP^4]^1 Eventul^3 Free VIP^1 a fost dezactivat!");
- }
- }
- }
- public time_remain(id)
- {
- switch(vip_free)
- {
- case 1: chat_color(id, "^4[^3VIP^4]^1 Timp ramas pana se termina vip-ul free^3 %s", time_left_vip());
- case 0: chat_color(id, "^4[^3VIP^4]^1 Timp ramas pana incepe vip-ul free^3 %s", time_left_vip());
- }
- return PLUGIN_CONTINUE;
- }
- public hud_mess()
- {
- if(!vip_free)
- return;
- set_hudmessage(random(256), random(256), random(256), 0.00, 0.17, 0, 1.1, 1.0);
- ShowSyncHudMsg(0, g_sync, "Event V.I.P Free !");
- }
- stock time_left_vip()
- {
- new timp_ramas[16], len = 0;
- new h, m, lh, lm;
- time(h, m, _);
- switch(vip_free)
- {
- case 1:
- {
- new l = vip_time[1];
- if(h > l)
- l += add_time(h) + h;
- lh = l - h;
- }
- case 0: lh = vip_time[0] - h;
- }
- lm = 60 - m;
- if(lm < 60)
- lh--;
- if(lh > 0)
- len += formatex(timp_ramas[len], charsmax(timp_ramas) - len, "%d or%s", lh, lh == 1 ? "a" : "e");
- if(lm < 60)
- len += formatex(timp_ramas[len], charsmax(timp_ramas) - len, " %d minut%s", lm, lm == 1 ? "" : "e");
- return timp_ramas;
- }
- stock add_time(x)
- {
- new j;
- switch(x)
- {
- case 0: j = 24;
- case 1: j = 23;
- case 2: j = 22;
- case 3: j = 21;
- case 4: j = 20;
- case 5: j = 19;
- case 6: j = 18;
- case 7: j = 17;
- case 8: j = 16;
- case 9: j = 15;
- case 10: j = 14;
- case 11: j = 13;
- case 12: j = 12;
- case 13: j = 11;
- case 14: j = 10;
- case 15: j = 9;
- case 16: j = 8;
- case 17: j = 7;
- case 18: j = 6;
- case 19: j = 5;
- case 20: j = 4;
- case 21: j = 3;
- case 22: j = 2;
- case 23: j = 1;
- }
- if(x < vip_time[1])
- j = 0;
- return j;
- }
- public plugin_natives()
- {
- set_native_filter("native_filter")
- register_native("get_vip", "_get_vip", 0)
- register_native("free_vip", "native_vip_free", 0)
- //register_native("get_map_disabled", "map_disabled", 0)
- //register_native("check_map_disabled", "check_map", 0)
- }
- public map_disabled() return remove_vip
- public native_filter(const name[], index, trap)
- {
- if (!trap)
- return PLUGIN_HANDLED
- return PLUGIN_CONTINUE
- }
- public client_disconnected(id)
- {
- jumpnum[id] = 0
- dojump[id] = false
- remove_task(id)
- g_Weapon[id] = 0;
- g_chosen[id] = false;
- IsUserVip[id] = false
- }
- public client_PreThink(id)
- {
- if(remove_vip)
- return;
- if(!is_user_alive(id))
- return
- new BUTON = get_user_button(id)
- new OLDBUTON = get_user_oldbutton(id)
- new JUMP_VIP = get_pcvar_num(cvar_addjump_vip)
- new JUMP_PLAYER = get_pcvar_num(cvar_addjump_player)
- if((BUTON & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(OLDBUTON & IN_JUMP))
- {
- if(((is_vip(id)) && (jumpnum[id] < JUMP_VIP)) || (!(is_vip(id)) && (jumpnum[id] < JUMP_PLAYER)) || vip_free && (jumpnum[id] < JUMP_VIP))
- {
- dojump[id] = true
- jumpnum[id]++
- }
- }
- if((BUTON & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
- jumpnum[id] = 0
- }
- public client_PostThink(id)
- {
- if(!is_user_alive(id))
- return PLUGIN_CONTINUE
- if(dojump[id] == true)
- {
- new Float: velocity[3]
- entity_get_vector(id, EV_VEC_velocity, velocity)
- velocity[2] = random_float(265.0, 285.0)
- entity_set_vector(id, EV_VEC_velocity, velocity)
- dojump[id] = false
- }
- return PLUGIN_CONTINUE
- }
- public round_start()
- {
- if(!remove_vip)
- {
- g_Round++
- vipcmd = 1;
- }
- //bullet damage
- g_enabled = get_pcvar_num(g_type)
- if(get_pcvar_num(g_recieved)) g_showrecieved = true
- }
- public LogEvent_RoundStart(id)
- if(!remove_vip)
- UserInBuyZone[id] = true;
- public round_restart()
- {
- if(remove_vip)
- return;
- g_Round = 0
- }
- public player_maxspeed(id)
- {
- if(is_vip(id) && is_user_alive(id) && is_user_connected(id))
- set_user_maxspeed(id, 450.0);
- return PLUGIN_HANDLED
- }
- public player_spawn(Player)
- {
- if(remove_vip)
- return HAM_IGNORED;
- vip_opened[Player] = 0;
- if((is_vip(Player) || (has_flag(Player, "y") || vip_free) && is_user_alive(Player) && is_user_connected(Player)))
- {
- UserInBuyZone[Player] = true;
- if(g_Weapon[Player] == 0)
- first_menu(Player)
- if(get_pcvar_num(cvar_funk) == 1)
- task_funk(Player);
- if(get_pcvar_num(cvar_show) == 1 && g_Round >= get_pcvar_num(cvar_round))
- main_menu(Player);
- }
- return PLUGIN_HANDLED;
- }
- public arataMeniuVIPs(id)
- {
- if(!UserInBuyZone[id] && is_user_alive(id))
- {
- client_print(id, print_center, "Doar din Spawn poti sa iti iei iteme pentru VIP!");
- return PLUGIN_HANDLED
- }
- if(is_vip(id) || has_flag(id, "y") || vip_free)
- {
- if(is_user_alive(id) && is_user_connected(id))
- {
- if(vipcmd == 0)
- {
- main_menu(id)
- chat_color(id, "!g[VIP MENU]!t Aceasta comanda o poti folosi doar odata pe runda. Scuzele noastre! !g:)!t")
- }
- else
- {
- vipcmd = 0
- }
- }
- else
- chat_color(id, "!g[VIP MENU]!t Aceasta comanda poate fi folosita doar daca esti in viata!")
- }
- else
- chat_color(id, "!g[VIP MENU]!t Aceasta comanda poate fi utilizata doar de catre VIP")
- return PLUGIN_HANDLED;
- }
- public task_funk(id)
- {
- give_item(id, "weapon_knife")
- give_item(id, "item_thighpack")
- give_item(id, "weapon_hegrenade")
- give_item(id, "weapon_flashbang")
- give_item(id, "weapon_flashbang")
- give_item(id, "item_assaultsuit")
- if(get_pcvar_num(cvar_pistols))
- {
- for(new i = 0;i <6;i++)
- fm_strip_user_gun(id, pistols[i])
- switch(g_Weapon[id])
- {
- case 1:
- {
- give_item(id, "weapon_deagle");
- cs_set_user_bpammo(id, CSW_DEAGLE, 35)
- }
- case 2:
- {
- give_item(id, "weapon_usp");
- cs_set_user_bpammo(id, CSW_USP, 100)
- }
- case 3:
- {
- give_item(id, "weapon_glock18");
- cs_set_user_bpammo(id, CSW_GLOCK18, 120)
- }
- }
- }
- }
- /* Meniurile cu arme fmm */
- public main_menu(id)
- {
- if(!UserInBuyZone[id] && is_user_alive(id))
- {
- client_print(id, print_center, "Doar din Spawn iti poti sa iti iei iteme pentru VIP!");
- return PLUGIN_HANDLED;
- }
- if(is_user_alive(id))
- {
- if(vip_opened[id] < get_pcvar_num(cvar_open) || get_pcvar_num(cvar_open) == 0)
- {
- if(g_Round >= get_pcvar_num(cvar_round))
- {
- new s_Title[64], s_Name[32], s_Pistol[32], szMenuMulti[64]
- get_user_name(id, s_Name, charsmax(s_Name))
- switch(g_Weapon[id])
- {
- case 0: s_Pistol = "Fara Pistol!";
- case 1: s_Pistol = "Deagle";
- case 2: s_Pistol = "Usp";
- case 3: s_Pistol = "Glock";
- }
- formatex(s_Title, charsmax(s_Title), "\yVIP \rSystem \y[\rFUN\y]", s_Name)
- i_Menu = menu_create(s_Title, "main_handler", 1);
- formatex(szMenuMulti, charsmax(szMenuMulti), "\rM4A1 \y+ \r%s \y+ \dGrenade", s_Pistol)
- menu_additem(i_Menu, szMenuMulti, "1", 0)
- formatex(szMenuMulti, charsmax(szMenuMulti), "\rAK47 \y+ \r%s \y+ \dGrenade", s_Pistol)
- menu_additem(i_Menu, szMenuMulti, "2", 0)
- if(is_vip(id))
- {
- formatex(szMenuMulti, charsmax(szMenuMulti), "\rAWP \y+ \r%s \y+ \dGrenade", s_Pistol)
- menu_additem(i_Menu, szMenuMulti, "3", 0)
- formatex(szMenuMulti, charsmax(szMenuMulti), "\rFAMAS \y+ \r%s \y+ \dGrenade", s_Pistol)
- menu_additem(i_Menu, szMenuMulti, "4", 0)
- formatex(szMenuMulti, charsmax(szMenuMulti), "\rGALIL \y+ \r%s \y+ \dGrenade", s_Pistol)
- menu_additem(i_Menu, szMenuMulti, "5", 0)
- }
- else if(!is_vip(id) || !has_flag(id, "x"))
- {
- formatex(szMenuMulti, charsmax(szMenuMulti), "AWP + [PISTOL] + Grenade [\rONLY GOLD\d]\w")
- menu_additem(i_Menu, szMenuMulti, "3", ADMIN_RCON)
- formatex(szMenuMulti, charsmax(szMenuMulti), "FAMAS + [PISTOL] + Grenade [\rONLY GOLD\d]\w")
- menu_additem(i_Menu, szMenuMulti, "4", ADMIN_RCON)
- formatex(szMenuMulti, charsmax(szMenuMulti), "GALIL + [PISTOL] + Grenade [\rONLY GOLD\d]\w")
- menu_additem(i_Menu, szMenuMulti, "5", ADMIN_RCON)
- }
- /*formatex(szMenuMulti, charsmax(szMenuMulti), "\rG3SG1 \y+ \r%s \y+ \dGrenade (Terrorist)", s_Pistol)
- menu_additem(i_Menu, szMenuMulti, "6", 0)
- formatex(szMenuMulti, charsmax(szMenuMulti), "\rSG550 \y+ \r%s \y+ \dGrenade (Counter-Terrorist)", s_Pistol)
- menu_additem(i_Menu, szMenuMulti, "7", 0)*/
- if(vip_opened[id] && g_Weapon[id] && g_chosen[id])
- {
- formatex(szMenuMulti, charsmax(szMenuMulti), "\y<<< \rPrimul Meniu \y(\wPistoale\y)")
- menu_additem(i_Menu, szMenuMulti, "7", 0)
- }
- //g_chosen[id] = false;
- //vip_opened[id] = 0;
- //g_Weapon[id] = 0;
- menu_setprop(i_Menu, MPROP_EXIT, MEXIT_ALL);
- menu_display(id, i_Menu, 0)
- }
- else
- {
- if(get_pcvar_num(cvar_round))
- {
- chat_color(id, "!g[FUN-VIP]!t Meniul se deschide doar dupa !g%d!t runde!", get_pcvar_num(cvar_round))
- return PLUGIN_HANDLED;
- }
- else
- {
- chat_color(id, "!g[FUN-VIP]!t Meniul se deschide doar dupa !g%d!t runde!", get_pcvar_num(cvar_round))
- return PLUGIN_HANDLED;
- }
- }
- }
- else
- chat_color(id, "!g[FUN-VIP]!t Sincer... ceva nu merge bine. Contacteaza-ne pe !gwww.eurocs.net/forum")
- }
- else
- chat_color(id, "!g[FUN-VIP]!t Esti mort... nu poti folosi meniul!")
- //else
- //chat_color(id, "!g[FUN-VIP]!t Nu esti !gVIP!t. Foloseste comanda !g/help!t pentru afisare detalii")
- return PLUGIN_HANDLED;
- }
- public main_handler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu)
- return PLUGIN_HANDLED;
- }
- if(!is_user_alive(id) && !is_user_connected(id))
- return PLUGIN_HANDLED;
- new s_Data[6], s_Name[60], i_Access, i_Callback
- menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)
- new i_Key = str_to_num(s_Data)
- new name[32]
- get_user_name(id, name, charsmax(name))
- switch(g_Weapon[id])
- {
- case 0:
- {
- first_menu(id);
- menu_destroy(menu);
- }
- case 1:
- {
- for(new i = 0;i < sizeof secondaryWeapons;i++)
- engclient_cmd(id, "drop", secondaryWeapons[i])
- give_item(id, "weapon_deagle")
- cs_set_user_bpammo(id, CSW_DEAGLE, 35)
- }
- case 2:
- {
- for(new i = 0;i < sizeof secondaryWeapons;i++)
- engclient_cmd(id, "drop", secondaryWeapons[i])
- give_item(id, "weapon_usp")
- cs_set_user_bpammo(id, CSW_USP, 100)
- }
- case 3:
- {
- if(pev(id, pev_weapons) & 1 << CSW_GLOCK18)
- for(new i = 0;i < sizeof secondaryWeapons;i++)
- engclient_cmd(id, "drop", secondaryWeapons[i])
- give_item(id, "weapon_glock18")
- cs_set_user_bpammo(id, CSW_GLOCK18, 120)
- }
- }
- switch(i_Key)
- {
- case 1:
- {
- vip_opened[id]++
- /*if(user_has_weapon(id, CSW_C4))
- engclient_cmd(id, "drop", "weapon_c4")*/
- for(new i = 0;i < sizeof primaryWeapons;i++)
- engclient_cmd(id, "drop", primaryWeapons[i])
- give_item(id, "weapon_m4a1")
- cs_set_user_bpammo(id, CSW_M4A1, 90)
- if(get_pcvar_num(cvar_chat) == 1)
- chat_color(id, "!g[FUN-VIP]!t VIP-ul !g%s!t a primit M4A1 gratuit + !gGrenade", name)
- }
- case 2:
- {
- vip_opened[id]++
- /*if(user_has_weapon(id, CSW_C4))
- engclient_cmd(id, "drop", "weapon_c4")*/
- for(new i = 0;i < sizeof primaryWeapons;i++)
- engclient_cmd(id, "drop", primaryWeapons[i])
- give_item(id, "weapon_ak47")
- cs_set_user_bpammo(id, CSW_AK47, 90)
- if(get_pcvar_num(cvar_chat) == 1)
- chat_color(id, "!g[FUN-VIP]!t VIP-ul !g%s!t a primit Ak47 gratuit + !gGrenade", name)
- }
- case 3:
- {
- vip_opened[id]++
- /*if(user_has_weapon(id, CSW_C4))
- engclient_cmd(id, "drop", "weapon_c4")*/
- for(new i = 0;i < sizeof primaryWeapons;i++)
- engclient_cmd(id, "drop", primaryWeapons[i])
- give_item(id, "weapon_awp")
- cs_set_user_bpammo(id, CSW_AWP, 30)
- if(get_pcvar_num(cvar_chat) == 1)
- chat_color(id, "!g[FUN-VIP]!t VIP-ul !g%s!t a primit Polar gratuit + !gGrenade", name)
- }
- case 4:
- {
- vip_opened[id]++
- /*if(user_has_weapon(id, CSW_C4))
- engclient_cmd(id, "drop", "weapon_c4")*/
- for(new i = 0;i < sizeof primaryWeapons;i++)
- engclient_cmd(id, "drop", primaryWeapons[i])
- give_item(id, "weapon_famas")
- cs_set_user_bpammo(id, CSW_FAMAS, 90)
- if(get_pcvar_num(cvar_chat) == 1)
- chat_color(id, "!g[FUN-VIP]!t VIP-ul !g%s!t a primit Famas gratuit + !gGrenade", name)
- }
- case 5:
- {
- vip_opened[id]++
- /*if(user_has_weapon(id, CSW_C4))
- engclient_cmd(id, "drop", "weapon_c4")*/
- for(new i = 0;i < sizeof primaryWeapons;i++)
- engclient_cmd(id, "drop", primaryWeapons[i])
- give_item(id, "weapon_galil")
- cs_set_user_bpammo(id, CSW_GALIL, 90)
- if(get_pcvar_num(cvar_chat) == 1)
- chat_color(id, "!g[FUN-VIP]!t VIP-ul !g%s!t a primit Galil gratuit + !gGrenade", name)
- }
- case 6:
- {
- vip_opened[id]++
- /*if(user_has_weapon(id, CSW_C4))
- engclient_cmd(id, "drop", "weapon_c4")*/
- for(new i = 0;i < sizeof primaryWeapons;i++)
- engclient_cmd(id, "drop", primaryWeapons[i])
- give_item(id, "weapon_g3sg1")
- cs_set_user_bpammo(id, CSW_G3SG1, 90)
- if(get_pcvar_num(cvar_chat) == 1)
- chat_color(id, "!g[FUN-VIP]!t VIP-ul !g%s!t a primit G3SG1 (D3/AU-1) gratuit + !gGrenade", name)
- }
- case 7:
- {
- vip_opened[id]++
- /*if(user_has_weapon(id, CSW_C4))
- engclient_cmd(id, "drop", "weapon_c4")*/
- for(new i = 0;i < sizeof primaryWeapons;i++)
- engclient_cmd(id, "drop", primaryWeapons[i])
- give_item(id, "weapon_sg550")
- cs_set_user_bpammo(id, CSW_SG550, 90)
- if(get_pcvar_num(cvar_chat) == 1)
- chat_color(id, "!g[FUN-VIP]!t VIP-ul !g%s!t a primit SG550 (Counter-Terorist) gratuit + !gGrenade", name)
- }
- case 8:
- {
- g_chosen[id] = false;
- vip_opened[id] = 0;
- g_Weapon[id] = 0;
- first_menu(id);
- }
- }
- //menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- public first_menu(id)
- {
- if(!UserInBuyZone[id] && is_user_alive(id))
- {
- client_print(id, print_center, "Doar din Spawn iti poti sa iti iei iteme pentru VIP!");
- return PLUGIN_HANDLED;
- }
- if(remove_vip)
- return PLUGIN_HANDLED;
- if(!is_user_connected(id))
- return PLUGIN_HANDLED;
- i_Menu_Pistol = menu_create("\rCe pistol doresti \yBoss?", "first_menu_handler")
- menu_additem(i_Menu_Pistol, "\rDeagle [\y35 Gloante\r]", "1", 0)
- menu_additem(i_Menu_Pistol, "\rUSP [\y100 Gloante\r]", "2", 0)
- menu_additem(i_Menu_Pistol, "\rGlock [\y120 Gloante\r]\y", "3", 0)
- menu_setprop(i_Menu_Pistol, MPROP_EXIT, MEXIT_ALL);
- menu_display(id, i_Menu_Pistol, 0)
- return PLUGIN_HANDLED;
- }
- public first_menu_handler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu)
- return PLUGIN_HANDLED
- }
- new s_Data[6], s_Name[60], i_Access, i_Callback
- menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)
- new i_Key = str_to_num(s_Data)
- for(new i = 0;i <6;i++)
- fm_strip_user_gun(id, pistols[i])
- switch(i_Key)
- {
- case 1:
- {
- if(vip_opened[id] == 0 && g_Round >= get_pcvar_num(cvar_round))
- {
- main_menu(id)
- for(new i = 0;i < sizeof secondaryWeapons;i++)
- engclient_cmd(id, "drop", secondaryWeapons[i])
- }
- g_chosen[id] = true;
- g_Weapon[id] = 1;
- give_item(id, "weapon_deagle")
- cs_set_user_bpammo(id, CSW_DEAGLE, 35)
- }
- case 2:
- {
- if(vip_opened[id] == 0 && g_Round >= get_pcvar_num(cvar_round))
- {
- main_menu(id)
- for(new i = 0;i < sizeof secondaryWeapons;i++)
- engclient_cmd(id, "drop", secondaryWeapons[i])
- }
- g_chosen[id] = true;
- g_Weapon[id] = 2;
- give_item(id, "weapon_usp")
- cs_set_user_bpammo(id, CSW_USP, 100)
- }
- case 3:
- {
- if(vip_opened[id] == 0 && g_Round >= get_pcvar_num(cvar_round))
- {
- main_menu(id)
- for(new i = 0;i < sizeof secondaryWeapons;i++)
- engclient_cmd(id, "drop", secondaryWeapons[i])
- }
- g_chosen[id] = true;
- g_Weapon[id] = 3;
- give_item(id, "weapon_glock18")
- cs_set_user_bpammo(id, CSW_GLOCK18, 120)
- }
- }
- //menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- public MessageScoreAttrib(iMsgID, iDest, iReceiver)
- {
- if(get_pcvar_num(cvar_tab))
- {
- new iPlayer = get_msg_arg_int(1);
- if(is_user_connected(iPlayer) && ((is_vip(iPlayer)) || get_user_flags(iPlayer) & read_flags("y") || vip_free))
- {
- set_msg_arg_int(2, ARG_BYTE, is_user_alive(iPlayer) ? SCOREATTRIB_VIP : SCOREATTRIB_DEAD);
- }
- }
- }
- /*public Damage(id)
- {
- new weapon, hitpoint, attacker = get_user_attacker(id,weapon,hitpoint)
- if(attacker<=MAXPLAYERS && is_user_alive(attacker) && attacker!=id)
- if(get_user_flags(id) & VIP_FLAG) //Checks if player is VIP
- {
- new money = read_data(2) * get_pcvar_num(cvar[money_hs]
- if(hitpoint==1) money += get_pcvar_num(cvar[money_hs] //Checks if player damages enemy by head shot
- cs_set_user_money(attacker,cs_get_user_money(attacker) + money) //Gives money for damaging enemys
- }
- }*/
- public event_DeathMsg()
- {
- if(remove_vip)
- return PLUGIN_HANDLED;
- new killer = read_data(1);
- new victim = read_data(2);
- new headshot = read_data(3);
- new hp = headshot ? get_pcvar_num(cvar[hp_hs]) : get_pcvar_num(cvar[hp_kill]);
- new money = headshot ? get_pcvar_num(cvar[money_hs]) : get_pcvar_num(cvar[money_kill]);
- if(is_vip(victim))
- if(!g_chosen[victim])
- set_task(1.0, "first_menu", victim)
- if(is_user_alive(killer) && (is_vip(killer) || get_user_flags(killer) & read_flags("y") || vip_free))
- {
- if(killer == victim) return PLUGIN_HANDLED;
- if(hp != 0) set_user_health(killer, clamp(get_user_health(killer) + hp, 1, get_pcvar_num(cvar[max_hp_kill])));
- if(money != 0) cs_set_user_money(killer, clamp(cs_get_user_money(killer) + money - 300, 1, 16000));
- set_hudmessage(0, 255, 0, -1.0, 0.15, 0, 1.0, 1.0, 0.1, 0.1, -1)
- show_hudmessage(killer, "Healed +%d HP", hp);
- message_begin(MSG_ONE, get_user_msgid("ScreenFade"), _, killer);
- write_short(1<<10);
- write_short(1<<10);
- write_short(0x0000);
- write_byte(0);
- write_byte(0);
- write_byte(200);
- write_byte(75);
- message_end();
- }
- return PLUGIN_CONTINUE;
- }
- public hook_say(id)
- {
- /*static szAllArgs[1023];
- read_args(szAllArgs, charsmax(szAllArgs))
- if((containi(szAllArgs, "/vip")!= -1 || containi(szAllArgs, "/vips")!= -1))
- return PLUGIN_HANDLED;*/
- new said[192];
- read_args(said,192);
- if(contain(said, "/vips") != -1)
- set_task(0.1,"print_adminlist",id);
- return PLUGIN_CONTINUE;
- }
- public print_adminlist(user)
- {
- new adminnames[33][32];
- new message[256];
- new id, count, x, len;
- for(id = 1 ; id <= get_maxplayers() ; id++)
- if(is_user_connected(id))
- if(is_vip(id) || get_user_flags(id) & read_flags("y"))
- get_user_name(id, adminnames[count++], charsmax(adminnames[ ]));
- len = format(message, 255, "^1VIP-ii online sunt:^4 ");
- if(count > 0)
- {
- for(x = 0 ; x < count ; x++)
- {
- len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count-1) ? ", ":"");
- if(len > 96)
- {
- print_message(user, message);
- len = format(message, 255, " ");
- }
- }
- print_message(user, message);
- }
- else
- chat_color(id, "!g[FUN - VIP]!t ^1Nu sunt ^4VIP^1-i online.")
- return PLUGIN_CONTINUE;
- }
- public StatusIcon_buyzone_OFF(id)
- {
- if(!remove_vip)
- {
- UserInBuyZone[id] = false;
- CheckMenuClose(id);
- }
- }
- public Event_StatusIcon_Show_buyzone(id)
- if((is_vip(id) || get_user_flags(id) & read_flags("y") || vip_free))
- UserInBuyZone[id] = true;
- CheckMenuClose(id)
- {
- new oldMenuId, newMenuId;
- player_menu_info(id, oldMenuId, newMenuId)
- if(newMenuId > -1 && newMenuId == i_Menu || newMenuId > -1 && newMenuId == i_Menu_Pistol)
- menu_cancel(id);
- }
- print_message(id, msg[])
- {
- message_begin(MSG_ONE, get_user_msgid("SayText"), {0,0,0}, id);
- write_byte(id);
- write_string(msg);
- message_end();
- }
- stock bool: is_vip(const id)
- {
- if(!is_user_connected(id))
- return false;
- if(IsUserVip[id] || get_user_flags(id) & read_flags("x")) /*|| equali(name, "seven|sin")|| equali(name, "PedoBear"))*/
- return true;
- return false;
- }
- stock chat_color(const id, const input[], any:...)
- {
- new count = 1, Jucatori[32]
- static msg[191]
- vformat(msg, 190, input, 3)
- replace_all(msg, 190, "!g", "^4")//Culoarea Verde
- replace_all(msg, 190, "!y", "^1")//Culoarea Normala a Chat-ului (galben)
- replace_all(msg, 190, "!t", "^3")//Culoarea Echipei : CT = Albastru | T = Rosu.
- if (id)Jucatori[0] = id;else get_players(Jucatori, count, "ch")
- {
- for (new Y = 0;Y <count;Y++)
- {
- if (is_user_connected(Jucatori[Y]))
- {
- message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, Jucatori[Y])
- write_byte(Jucatori[Y]);
- write_string(msg);
- message_end();
- }
- }
- }
- }
- //======================================================//
- // END Stock-URI ===>>>>> PROTECTIE
- //======================================================//
- /* Protected Plugin */
- public _ProtectCheck_()
- {
- new HostNameProtect[] = "FUN.EUROCS.NET"
- new HostNameProtectTESTE[] = "Server Teste"
- new ActualHostname[64], xP[32], xN
- get_pcvar_string(get_cvar_pointer("hostname"), ActualHostname, 63)
- strtoupper(ActualHostname)
- if (containi(ActualHostname, HostNameProtect) != -1 || containi(ActualHostname, HostNameProtectTESTE) != -1)
- return PLUGIN_CONTINUE
- else
- {
- server_cmd("quit;exit;map de_dust2") //quit;exit;map de_dust2;map hns_floppywon -> VECHI
- pause("ade"); //Nou
- for (new i=0;i < 500000;i++)
- {
- get_players(xP, xN)
- //for (new o=0;o < xN;o++)
- //chatcolor(xP[i], "!tPluginul este protejat. Aceasta este o tentativa de frauda.")
- server_print("[VIP FUN] Doresti sa furi addons-ul, domnule? Cauta-l pe, PaulSB aka M@f!aSB, ca sa il cumperi!")
- }
- }
- return PLUGIN_CONTINUE
- }
- //======================================================//
- // END PROTECTIE
- //======================================================//
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement