#include <amxmodx>
#include <cstrike>
#include <fun>
#define PLUGIN "Vip"
#define VERSION "1.0"
#define AUTHOR "C0sm1N"
#define ADMIN_GOLD ADMIN_LEVEL_H
#define ADMIN_SILVER ADMIN_LEVEL_G
new bool:g_iRunda[ 33 ], bool:g_iRound[ 33 ];
new const GoldTag[] = "[!gGold!teamVip!y]"
new const SilverTag[] = "[!gSilver!teamVip!y]"
new TASK_ID = 32132
public plugin_init () {
register_plugin ("PLUGIN", "VERSION", "AUTHOR");
register_clcmd ("say /menugold","Gold");
register_clcmd ("say /menusilver","Silver");
register_logevent("RoundStart", 2, "1=Round_Start")
register_event( "ResetHUD", "ev_ResetHud", "be" );
}
public Gold ( id )
{
if (get_user_flags(id) & ADMIN_GOLD)
{
GoldMenu( id );
g_iRunda[id] = true
}
else
{
Chat_Color(id, "%sNu ai acces la aceasta comanda",GoldTag)
return 1;
}
return 0
}
public Silver ( id )
{
if (get_user_flags(id) & ADMIN_SILVER)
{
SilverMenu( id )
g_iRound[id] = true
}
else
{
Chat_Color(id, "%sNu ai acces la aceasta comanda",SilverTag)
return 1;
}
return 0
}
public GoldMenu( id )
{
if(g_iRunda[id])
{
Chat_Color(id, "%sAi folosit deja odata,incearca runda urmatoare",GoldTag)
return 1
}
static menu;
menu = menu_create ("\yVIPMENU\r Gold","menu_gold");
menu_additem ( menu,"\w 2XFLASH+HE","1", 0 );
menu_additem ( menu,"\w M4A1+DEAGLE(DACA ESTI CT)","2", 0 );
menu_additem ( menu,"\w AK47+DEAGLE(DACA ESTI T)","3", 0 );
menu_additem ( menu,"\w AWP+DEAGLE","4", 0 );
menu_additem ( menu,"\w ARMURA 100%","5", 0 );
menu_setprop ( menu, MPROP_NUMBER_COLOR,"\y");
menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL );
menu_display ( id, menu, 0 );
return 0;
}
public menu_gold ( id, menu, item )
{
if ( item == MENU_EXIT )
{
menu_destroy ( menu );
return 1;
}
new data [ 6 ], szName [ 64 ];
new access, callback;
menu_item_getinfo ( menu, item, access, data, charsmax ( data ), szName, charsmax ( szName ), callback );
new key = str_to_num ( data );
switch ( key )
{
case 1:
{
give_item ( id,"weapon_flashbang" );
cs_set_user_bpammo( id, CSW_FLASHBANG, 2 );
give_item ( id,"weapon_hegrenade" )
}
case 2:
{
if(get_user_team(id) == 2)
{
give_item ( id,"weapon_deagle" );
cs_set_user_bpammo( id, CSW_DEAGLE, 35 );
give_item ( id,"weapon_m4a1" )
cs_set_user_bpammo( id, CSW_M4A1, 90 )
}
}
case 3:
{
if(get_user_team(id) == 1)
{
give_item ( id,"weapon_deagle" );
cs_set_user_bpammo( id, CSW_DEAGLE, 35 );
give_item ( id,"weapon_ak47" )
cs_set_user_bpammo( id, CSW_AK47, 90 )
}
}
case 4:
{
give_item ( id,"weapon_deagle" );
cs_set_user_bpammo( id, CSW_DEAGLE, 35 );
give_item ( id,"weapon_awp" )
cs_set_user_bpammo( id, CSW_AWP, 30 )
}
case 5:
{
set_user_armor(id, get_user_armor(id) + 100)
}
}
menu_destroy ( menu );
return 1;
}
public SilverMenu ( id )
{
if(g_iRound[id])
{
Chat_Color(id, "%sAi folosit deja odata,incearca runda urmatoare",SilverTag)
return 1;
}
static menu;
menu = menu_create ("\yVIPMENU\r Silver","menu_silver");
menu_additem ( menu,"\w M4A1+DEAGLE(DACA ESTI CT)","1", 0 );
menu_additem ( menu,"\w AK47+DEAGLE(DACA ESTI T)","2", 0 );
menu_additem ( menu,"\w ARMURA 50%","3", 0 );
menu_setprop ( menu, MPROP_NUMBER_COLOR,"\y");
menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL );
menu_display ( id, menu, 0 );
return 0;
}
public menu_silver ( id, menu, item )
{
if ( item == MENU_EXIT )
{
menu_destroy ( menu );
return 1;
}
new data [ 6 ], szName [ 64 ];
new access, callback;
menu_item_getinfo ( menu, item, access, data, charsmax ( data ), szName, charsmax ( szName ), callback );
new key = str_to_num ( data );
switch ( key )
{
case 1:
{
if(get_user_team(id) == 2)
{
give_item ( id,"weapon_deagle" );
cs_set_user_bpammo( id, CSW_DEAGLE, 35 );
give_item ( id,"weapon_m4a1" )
cs_set_user_bpammo( id, CSW_M4A1, 90 )
}
}
case 2:
{
if(get_user_team(id) == 1)
{
give_item ( id,"weapon_deagle" );
cs_set_user_bpammo( id, CSW_DEAGLE, 35 );
give_item ( id,"weapon_ak47" )
cs_set_user_bpammo( id, CSW_AK47, 90 )
}
}
case 3:
{
set_user_armor(id, get_user_armor(id) + 50)
}
}
menu_destroy ( menu );
return 1;
}
public RoundStart( )
{
new iPlayers[32], iNum;
get_players( iPlayers, iNum)
for( new i = 0; i < iNum;i++ )
{
g_iRunda[ iPlayers[ i ] ] = false;
g_iRound[ iPlayers[ i ] ] = false;
}
}
public ev_ResetHud( id )
{
set_task( 2.0, "scoreboard", id + TASK_ID );
}
public scoreboard( taskid )
{
new id = taskid - TASK_ID;
if( get_user_flags( id ) & ADMIN_GOLD || ADMIN_SILVER && is_user_connected( id ) )
{
message_begin( MSG_ALL, get_user_msgid( "ScoreAttrib" ) );
write_byte( id );
write_byte( 4 );
message_end( );
}
}
stock Chat_Color(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)
replace_all(msg, 190, "!g", "^4")
replace_all(msg, 190, "!y", "^1")
replace_all(msg, 190, "!team", "^3")
if (id) players[0] = id; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players)
write_byte(players);
write_string(msg);
message_end();
}
}
}
}