Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <amxmodx>
- #include <fun>
- #include <cstrike>
- #include <colorchat>
- #include <hamsandwich>
- #include <engine>
- #include <dhudmessage>
- #define PLUGIN "Box Vip + Shop"
- #define VERSION "1.0"
- #define AUTHOR "Fr0zen"
- #define FL_WATERJUMP (1<<11)
- #define FL_ONGROUND (1<<9)
- #pragma semicolon 1
- new BoxVIP[ 33 ];
- new bool: iVip[33], g_iMaxPlayers;
- new bool:koristiohebombu[33],bool:koristioflashbombu[33], bool:koristiosmokebombu[33];
- new bool:koristio25hp[33],bool:koristio50hp[33],bool:koristio75hp[33],koristio100hp[33];
- new bool:koristiogravitaciju[33],bool:koristiobrzinu[33],koristionoclip[33];
- public plugin_init() {
- register_plugin(PLUGIN, VERSION, AUTHOR);
- register_clcmd("say /boxshop", "Shop");
- register_clcmd("say_team /boxshop", "Shop");
- RegisterHam(Ham_Spawn, "player", "hamspawn");
- register_dictionary("boxvip.txt");
- register_message(get_user_msgid( "ScoreAttrib" ),"iVipScoreboard");
- register_clcmd("say", "prefix");
- register_clcmd("say /vips", "VipsOnline");
- register_clcmd("say /vipovi", "VipsOnline");
- RegisterHam(Ham_Spawn, "player", "Spawn", 1);
- g_iMaxPlayers = get_maxplayers();
- }
- public client_putinserver(id)
- {
- set_task(2.0, "UsaoVIP", id, _, _, "a", 1);
- set_task(0.2, "VipoviProvera", id );
- set_task(0.5, "VipsOnline", id);
- }
- public Spawn(id)
- if(get_user_flags(id) & (BoxVIP[id]) & is_user_alive(id)) client_PreThink(id);
- public UsaoVIP( id ) {
- if(BoxVIP[id]) {
- new name[ 32 ];
- get_user_name( id, name, 31 );
- set_dhudmessage( 0, 255, 255, -1.0, -1.0, 0, 6.0, 6.0 );
- show_dhudmessage( 0, "VIP = %s je usao na server", name );
- }
- }
- public VipoviProvera( id ) {
- new SteamID[ 32 ];
- get_user_authid( id, SteamID, 31 );
- new broj_linija = file_size( "addons/amxmodx/configs/Vipovi.ini", 1 );
- new linija[ 256 ], broj;
- for( new i = 0; i < broj_linija; i++ ) {
- read_file( "addons/amxmodx/configs/Vipovi.ini", i, linija, 255, broj );
- if( broj > 0 && containi( linija, SteamID ) != -1 )
- BoxVIP[ id ] = true;
- iVip [ id ] = true;
- }
- return PLUGIN_CONTINUE;
- }
- public client_PreThink(id) {
- if(BoxVIP[id]) {
- entity_set_float(id, EV_FL_fuser2, 0.0);
- if(entity_get_int(id, EV_INT_button) & 2) {
- new flags = entity_get_int(id, EV_INT_flags);
- if(flags & FL_WATERJUMP) return PLUGIN_CONTINUE;
- if(entity_get_int(id, EV_INT_waterlevel) >= 2 ) return PLUGIN_CONTINUE;
- if(!(flags & FL_ONGROUND)) return PLUGIN_CONTINUE;
- new Float:velocity[3];
- entity_get_vector(id, EV_VEC_velocity, velocity);
- velocity[2] += 250.0;
- entity_set_vector(id, EV_VEC_velocity, velocity);
- entity_set_int(id, EV_INT_gaitsequence, 6);
- }
- }
- return PLUGIN_CONTINUE;
- }
- public iVipScoreboard()
- {
- new i = get_msg_arg_int(1);
- if(is_user_alive(i) && BoxVIP[i])
- set_msg_arg_int(2, ARG_BYTE, get_msg_arg_int(2) | 4);
- }
- public prefix(id)
- {
- if(BoxVIP[id]) {
- new szSaid[192], szName[32];
- get_user_name(id, szName, charsmax(szName));
- read_args(szSaid, charsmax(szSaid));
- remove_quotes(szSaid);
- ColorChat(0, GREEN, "^4[V.I.P] ^3%s ^1: %s", szName, szSaid);
- return PLUGIN_HANDLED_MAIN;
- }
- return PLUGIN_CONTINUE;
- }
- public VipsOnline(id) {
- new szVipsNames[33][32], message[256], i, count, k, len;
- for(i = 1 ; i <= g_iMaxPlayers ; i++)
- if(BoxVIP[id])
- if(is_user_connected(i))
- if(iVip[i])
- get_user_name(i, szVipsNames[count++], 31);
- len = format(message, 255, "^x04 %L ", id, "ONLINE_VIPS");
- if(count > 0) {
- for(k = 0 ; k < count ; k++) {
- len += format(message[len], charsmax(message) - len, "%s%s ", szVipsNames[k], k < (count-1) ? ", ":"");
- if(len > 96 ) {
- ColorChat(id, GREEN, "%s", message);
- len = format(message, charsmax(message), "^x04 ");
- }
- }
- ColorChat(id, GREEN, "%s", message);
- }
- else {
- len += format(message[len], charsmax(message) - len, "%L", id, "NO_ONLINE_VIPS");
- ColorChat(id, GREEN, "%s", message);
- }
- return PLUGIN_HANDLED;
- }
- public Shop_Menu(id)
- {
- new naslovc[60];
- format(naslovc, 59, "\rBox Shop Menu");
- new menu = menu_create(naslovc, "SPM_Handle");
- menu_display(id, menu);
- return PLUGIN_HANDLED;
- }
- public SPM_Handle(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- switch(item)
- {
- case 0: BombeShop(id);
- case 1: HealShop(id);
- case 2: FunShop(id);
- }
- return PLUGIN_CONTINUE;
- }
- public Shop(id)
- {
- new menu = menu_create("\yBox Shop Menu \d:", "Shop_Handle");
- menu_additem(menu, "\rBombe \yShop");
- menu_additem(menu, "\rHeal \yShop");
- menu_additem(menu, "\rFun \yShop");
- menu_display(id, menu);
- }
- public Shop_Handle(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- menu_display(id, menu);
- switch(item)
- {
- case 0:BombeShop(id);
- case 1:HealShop(id);
- case 2:FunShop(id);
- }
- return PLUGIN_HANDLED;
- }
- public BombeShop(id)
- {
- new menu = menu_create("\yBombe Shop Menu:", "Bombe1Shop_Handle");
- if(BoxVIP[id]) {
- menu_additem(menu, "\wHE Bomba \yCena 450$");
- menu_additem(menu, "\wFlash Bomba \yCena 375$");
- menu_additem(menu, "\wSmoke Bomba \yCena 300$");
- menu_setprop(menu, MPROP_EXITNAME, "Izadji");
- }
- else {
- menu_additem(menu, "\wHE Bomba \yCena 900$");
- menu_additem(menu, "\wFlash Bomba \yCena 750$");
- menu_additem(menu, "\wSmoke Bomba \yCena 600$");
- menu_setprop(menu, MPROP_EXITNAME, "Izadji");
- }
- menu_display(id, menu);
- }
- public Bombe1Shop_Handle(id, menu,item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- menu_display(id, menu, item);
- new pare_igraca = cs_get_user_money(id);
- switch(item)
- {
- case 0:
- {
- new cena = 900;
- if(BoxVIP[id]) cena = cena/2;
- if (pare_igraca<cena)
- {
- ColorChat(id,TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
- return PLUGIN_CONTINUE;
- }
- if(koristiohebombu[id]) {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 HE Bombu^3 ove runde!");
- return PLUGIN_HANDLED;
- }
- koristiohebombu[id] = true;
- give_item(id, "weapon_hegrenade");
- ColorChat(id,TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 HE Bombu.");
- cs_set_user_money(id, pare_igraca-cena);
- }
- case 1:
- {
- new cena = 750;
- if(BoxVIP[id]) cena = cena/2;
- if (pare_igraca<cena)
- {
- ColorChat(id,TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
- return PLUGIN_CONTINUE;
- }
- if(koristioflashbombu[id]) {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 Flash Bombu^3 ove runde!");
- return PLUGIN_HANDLED;
- }
- koristioflashbombu[id] = true;
- give_item(id, "weapon_hegrenade");
- ColorChat(id,TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 Flash Bombu.");
- cs_set_user_money(id, pare_igraca-cena);
- }
- case 2:
- {
- new cena = 600;
- if(BoxVIP[id]) cena = cena/2;
- if (pare_igraca<cena)
- {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
- return PLUGIN_CONTINUE;
- }
- if(koristiosmokebombu[id]) {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 Smoke Bombu^3 ove runde!");
- return PLUGIN_HANDLED;
- }
- koristiosmokebombu[id] = true;
- give_item(id, "weapon_smokegrenade");
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 Smoke Bombu.");
- cs_set_user_money(id, pare_igraca-cena);
- }
- }
- return PLUGIN_CONTINUE;
- }
- public HealShop(id)
- {
- new menu = menu_create("\yHeal Shop Menu \d:", "HealShop1_Handle");
- if(BoxVIP[id]) {
- menu_additem(menu, "\wKupi \d[\r +25 HP \d] \yCena 1250$");
- menu_additem(menu, "\wKupi \d[\r +50 HP \d] \yCena 2500$");
- menu_additem(menu, "\wKupi \d[\r +75 HP \d] \yCena 3750$");
- menu_additem(menu, "\wKupi \d[\r +100 HP \d] \yCena 5000$");
- menu_setprop(menu, MPROP_EXITNAME, "Izadji");
- }
- else {
- menu_additem(menu, "\wKupi \d[\r +50 HP \d] \yCena 2500$");
- menu_additem(menu, "\wKupi \d[\r +50 HP \d] \yCena 5000$");
- menu_additem(menu, "\wKupi \d[\r +75 HP \d] \yCena 7500$");
- menu_additem(menu, "\wKupi \d[\r +100 HP \d] \yCena 10000$");
- menu_setprop(menu, MPROP_EXITNAME, "Izadji");
- }
- menu_display(id, menu);
- }
- public HealShop1_Handle(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- menu_display(id, menu);
- new pare_igraca = cs_get_user_money(id);
- switch(item)
- {
- case 0:
- {
- new cena = 2500;
- if(BoxVIP[id]) cena = cena/2;
- if (pare_igraca<cena)
- {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
- return PLUGIN_CONTINUE;
- }
- if(koristio25hp[id]) {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 +25 HP^3 ove runde!");
- return PLUGIN_HANDLED;
- }
- koristio25hp[id] = true;
- set_user_health(id, get_user_health(id) + 25);
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 +25 HP.");
- cs_set_user_money(id, pare_igraca-cena);
- }
- case 1:
- {
- new cena = 5000;
- if(BoxVIP[id]) cena = cena/2;
- if (pare_igraca<cena)
- {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
- return PLUGIN_CONTINUE;
- }
- if(koristio50hp[id]) {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 +50 HP^3 ove runde!");
- return PLUGIN_HANDLED;
- }
- koristio50hp[id] = true;
- set_user_health(id, get_user_health(id) + 50);
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 +50 HP.");
- cs_set_user_money(id, pare_igraca-cena);
- }
- case 2:
- {
- new cena = 7500;
- if(BoxVIP[id]) cena = cena/2;
- if (pare_igraca<cena)
- {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
- return PLUGIN_CONTINUE;
- }
- if(koristio75hp[id]) {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3Vec si koristio^4 +75 hp^3 ove runde!");
- return PLUGIN_HANDLED;
- }
- koristio75hp[id] = true;
- set_user_health(id, get_user_health(id) + 75);
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 +75 HP.");
- cs_set_user_money(id, pare_igraca-cena);
- }
- case 3:
- {
- new cena = 10000;
- if(BoxVIP[id]) cena = cena/2;
- if (pare_igraca<cena)
- {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
- return PLUGIN_CONTINUE;
- }
- if(koristio100hp[id]) {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 +100 HP^3 ove runde!");
- return PLUGIN_HANDLED;
- }
- koristio100hp[id] = true;
- set_user_health(id, get_user_health(id) + 100);
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 +100 HP.");
- cs_set_user_money(id, pare_igraca-cena);
- }
- }
- return PLUGIN_CONTINUE;
- }
- public FunShop(id)
- {
- new menu = menu_create("\yFun Shop Menu \d:", "FunShop1_Handle");
- if(BoxVIP[id]) {
- menu_additem(menu, "\wGravitacija \yCena 2000$");
- menu_additem(menu, "\wBrzina \yCena 1500$");
- menu_additem(menu, "\wNoclip \d[\r Traje 10 sekundi \d] \yCena 3750$");
- menu_setprop(menu, MPROP_EXITNAME, "Izadji");
- }
- else {
- menu_additem(menu, "\wGravitacija \yCena 4000$");
- menu_additem(menu, "\wBrzina \yCena 3000$");
- menu_additem(menu, "\wNoclip \d[\r Traje 10 sekundi \d] \yCena 7000$");
- menu_setprop(menu, MPROP_EXITNAME, "Izadji");
- }
- menu_display(id, menu);
- }
- public FunShop1_Handle(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- menu_display(id, menu);
- new pare_igraca = cs_get_user_money(id);
- switch(item)
- {
- case 0:
- {
- new cena = 4000;
- if(BoxVIP[id]) cena = cena/2;
- if (pare_igraca<cena)
- {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
- return PLUGIN_CONTINUE;
- }
- if(koristiogravitaciju[id]) {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 Gravitaciju^3 ove runde!");
- return PLUGIN_HANDLED;
- }
- koristiogravitaciju[id] = true;
- set_user_gravity(id,get_user_gravity(id) - 0.6);
- ColorChat(id,TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 Gravitaciju.");
- cs_set_user_money(id, pare_igraca-cena);
- }
- case 1:
- {
- new cena = 3000;
- if(BoxVIP[id]) cena = cena/2;
- if (pare_igraca<cena)
- {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
- return PLUGIN_CONTINUE;
- }
- if(koristiobrzinu[id]) {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 Brzinu^3 ove runde!");
- return PLUGIN_HANDLED;
- }
- koristiobrzinu[id] = true;
- set_user_maxspeed(id,get_user_maxspeed(id) + 50.0);
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 Brzinu.");
- cs_set_user_money(id, pare_igraca-cena);
- }
- case 2:
- {
- new cena = 7000;
- if(BoxVIP[id]) cena = cena/2;
- if (pare_igraca<cena)
- {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Nemate dovoljno para.");
- return PLUGIN_CONTINUE;
- }
- if(koristionoclip[id]) {
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Vec si koristio^4 Noclip^3 ove runde!");
- return PLUGIN_HANDLED;
- }
- koristionoclip[id] = true;
- set_user_noclip(id, 1);
- set_task(10.0, "IskljuciNoclip", id);
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Kupio si^4 Noclip.");
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Noclip traje^4 10 sekundi.");
- cs_set_user_money(id, pare_igraca-cena);
- }
- }
- return PLUGIN_CONTINUE;
- }
- public IskljuciNoclip (id) {
- set_user_noclip(id, 0);
- ColorChat(id, TEAM_COLOR,"^4[Box Shop]^3 Noclip je ugasen");
- }
- public hamspawn(id)
- {
- koristiohebombu[id] = false;
- koristioflashbombu[id] = false;
- koristiosmokebombu[id] = false;
- koristio25hp[id] = false;
- koristio50hp[id] = false;
- koristio75hp[id] = false;
- koristio100hp[id] = false;
- koristiogravitaciju[id] = false;
- koristiobrzinu[id] = false;
- koristionoclip[id]= false;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement