#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#include <engine>
#include <hamsandwich>
#define PLUGIN "Vmenu"
#define VERSION "1.3"
#define AUTHOR "T3hNoLoGy"
#define ADMIN_VIP ADMIN_LEVEL_H
enum {
SCOREATTRIB_ARG_PLAYERID = 1,
SCOREATTRIB_ARG_FLAGS
};
enum ( <<= 1 ) {
SCOREATTRIB_FLAG_NONE = 0,
SCOREATTRIB_FLAG_DEAD = 1,
SCOREATTRIB_FLAG_BOMB,
SCOREATTRIB_FLAG_VIP
};
new bool:g_iRevive[ 33 ];
new g_szTimpGod , g_szTimpClip
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_message( get_user_msgid( "ScoreAttrib" ), "MessageScoreAttrib" );
register_clcmd("say /vm" , "Vip")
register_clcmd("say /vipmenu" , "Vip")
g_szTimpGod = register_cvar("timp_god" , "90")
g_szTimpClip = register_cvar("timp_clip" , "40")
set_task(30.0 , "set" ,_,_,_, "b")
register_logevent( "start", 2, "1=Round_Start" );
}
public start( )
{
new iPlayers[ 32 ], iNum;
get_players( iPlayers, iNum, "ac" );
for( new i = 0; i < iNum; i++ )
{
static id;
id = iPlayers[ i ];
g_iRevive[ id ] = false;
}
}
public Vip(id)
{
if(get_user_flags(id) &ADMIN_VIP)
{
new menu = menu_create( "VipMenu", "menu_handler" );
menu_additem( menu, "GodMode", "1", ADMIN_VIP );
menu_additem( menu, "NoClip", "2",ADMIN_VIP );
menu_additem( menu, "Media Kit", "3", ADMIN_VIP );
menu_additem( menu, "Pistol", "4",ADMIN_VIP);
menu_additem( menu, "Arma", "5", ADMIN_VIP );
menu_additem( menu, "16000$", "6", ADMIN_VIP );
menu_additem( menu, "Revive", "7", ADMIN_VIP );
menu_setprop( menu, MPROP_EXIT, MEXIT_ALL );
menu_display( id, menu, 0 );
}
}
public menu_handler( id, menu, item )
{
switch (item)
{
case 0:
{
client_print(id, print_chat, "Ai ales GodMode din VipMenu" );
set_user_godmode(id,1)
set_task(get_pcvar_float(g_szTimpGod), "god", id)
}
case 1:
{
client_print( id, print_chat, "Ai ales NoClip din VipMenu" );
set_user_noclip(id,0)
set_task(get_pcvar_float(g_szTimpClip), "clip", id)
}
case 2:
{
client_print( id, print_chat, "Ai ales MedKit din VipMenu" );
set_user_health(id,get_user_health(id) + 600)
set_user_armor(id,get_user_armor(id) + 300)
}
case 3:
{
client_print( id, print_chat, "Ai ales Pistol din VipMenu" );
give_item(id,"weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 7)
}
case 4:
{
client_print( id, print_chat, "Ai ales Arma din VipMenu" );
give_item(id,"weapon_m4a1")
cs_set_user_bpammo(id, CSW_M4A1, 30)
}
case 5:
{
client_print( id, print_chat, "Ai ales 16000 $ din VipMenu" );
cs_set_user_money(id,cs_get_user_money(id) + 16000)
}
case 6:
{
if(cs_get_user_team (id)==CS_TEAM_SPECTATOR){
client_print(id,print_chat," Nu poti folosi aceasta comanda cand esti spectator !")
}
if(is_user_alive(id)){
client_print(id,print_chat," Nu poti folosi aceasta comanda cand esti viu !")
}
else {
if( g_iRevive[ id ] )
{
client_print(id,print_chat," Poti folosi doar odata pe runda.")
}
else
{
ExecuteHamB(Ham_CS_RoundRespawn, id)
client_print(id,print_chat,"Ai primit Revive !")
g_iRevive[ id ] = true;
}
}
}
case MENU_EXIT:
{
client_print( id, print_chat, "Ai iesit din menu !" );
}
}
menu_destroy( menu );
return PLUGIN_HANDLED;
}
public set(id)
{
give_item(id,"weapon_hegrenade")
give_item(id,"weapon_smokegrenade")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
}
public god(id)
{
set_user_godmode(id,0)
client_print( id, print_chat, "Puterea GodMode a expirat !" );
return PLUGIN_HANDLED
}
public clip(id)
{
set_user_noclip(id,0)
client_print( id, print_chat, "Puterea NoClip a expirat !" );
return PLUGIN_HANDLED
}
public MessageScoreAttrib( iMsgId, iDest, iReceiver )
{
new iPlayer = get_msg_arg_int( SCOREATTRIB_ARG_PLAYERID );
if( access( iPlayer, ADMIN_VIP ) ) {
set_msg_arg_int( SCOREATTRIB_ARG_FLAGS, ARG_BYTE, SCOREATTRIB_FLAG_VIP );
}
}