Moved to proper forum since OP won't code it him/her-self.
PHP Code:
#include < amxmodx >
#include < cstrike >
#include < fun >
#include < fakemeta >
#include < hamsandwich >
#define m_rpgPlayerItems_Slot0 367
#define m_iId 43
const VipFlags = ADMIN_LEVEL_H;
new iRound;
public plugin_init( ) {
RegisterHam( Ham_Spawn , "player" , "PlayerSpawned" , 1 );
register_event( "TextMsg", "RoundRestart" , "a" , "2&#Game_C" );
register_event( "TextMsg", "RoundRestart" , "a" , "2&#Game_w" );
register_event( "HLTV" , "NewRound" , "a" , "1=0" , "2=0" );
}
public RoundRestart( )
iRound = 0;
public NewRound( )
iRound++;
public PlayerSpawned( id ) {
if( is_user_alive( id ) && ( get_user_flags( id ) & VipFlags ) ) {
give_item( id , "weapon_hegrenade" );
give_item( id , "weapon_flashbang" );
give_item( id , "weapon_smokegrenade" );
cs_set_user_bpammo( id , CSW_FLASHBANG , 2 );
cs_set_user_armor( id , 100, CS_ARMOR_VESTHELM );
if( cs_get_user_team( id ) == CS_TEAM_CT )
cs_set_user_defuse( id , 1 );
if( iRound == 1 )
SecondaryMenu( id );
else
PrimaryMenu( id );
}
}
public PrimaryMenu( id ) {
new menu = menu_create( "Select Weapon:" , "PrimaryHandler" );
menu_additem( menu , "M4A1" , "1" , 0 );
menu_additem( menu , "AK47" , "2" , 0 );
if( ( iRound % 3 ) == 1 )
menu_additem( menu , "AWP" , "3" , 0 );
menu_additem( menu , "Secondary" , "4" , 0 );
menu_setprop( menu , MPROP_EXIT , MEXIT_ALL );
menu_display( id , menu , 0 );
}
public PrimaryHandler( id , menu , item) {
if( item == MENU_EXIT ) {
menu_destroy( menu );
return PLUGIN_HANDLED;
}
new data[6] , iName[64];
new access , callback;
menu_item_getinfo( menu , item , access , data ,5 , iName , 63 , callback );
new key = str_to_num( data );
switch( key ) {
case 1: {
DropWeaponSlot( id , 1 );
give_item( id , "weapon_m4a1" );
cs_set_user_bpammo( id , CSW_M4A1 , 90 );
SecondaryMenu( id );
}
case 2: {
DropWeaponSlot( id , 1 );
give_item( id , "weapon_ak47" );
cs_set_user_bpammo( id , CSW_AK47 , 90 );
SecondaryMenu( id );
}
case 3: {
DropWeaponSlot( id , 1 );
give_item( id , "weapon_awp" );
cs_set_user_bpammo( id , CSW_AWP , 30 );
SecondaryMenu( id );
}
case 4: {
SecondaryMenu( id );
}
}
menu_destroy( menu );
return PLUGIN_HANDLED;
}
public SecondaryMenu( id ) {
new menu = menu_create( "Select Weapon:" , "SecondaryHandler" );
menu_additem( menu , "USP" , "1" , 0 );
menu_additem( menu , "GLOCK" , "2" , 0 );
menu_additem( menu , "DEAGLE" , "3" , 0 );
menu_setprop( menu , MPROP_EXIT , MEXIT_ALL );
menu_display( id , menu , 0 );
}
public SecondaryHandler( id , menu , item) {
if( item == MENU_EXIT ) {
menu_destroy( menu );
return PLUGIN_HANDLED;
}
new data[6] , iName[64];
new access , callback;
menu_item_getinfo( menu , item , access , data ,5 , iName , 63 , callback );
new key = str_to_num( data );
switch( key ) {
case 1: {
DropWeaponSlot( id , 2 );
give_item( id , "weapon_usp" );
cs_set_user_bpammo( id , CSW_USP , 100 );
}
case 2: {
DropWeaponSlot( id , 2 );
give_item( id , "weapon_glock18" );
cs_set_user_bpammo( id , CSW_GLOCK18 , 120 );
}
case 3: {
DropWeaponSlot( id , 2 );
give_item( id , "weapon_deagle" );
cs_set_user_bpammo( id , CSW_DEAGLE , 35 );
}
}
menu_destroy( menu );
return PLUGIN_HANDLED;
}
stock DropWeaponSlot( iPlayer, iSlot )
{
new iWeaponEntity = GetWeaponFromSlot( iPlayer, iSlot );
if( iWeaponEntity > 0 )
{
new iWeaponID = get_pdata_cbase( iWeaponEntity, m_iId, 4 );
new szWeaponName[ 32 ];
get_weaponname( iWeaponID, szWeaponName, charsmax( szWeaponName ) );
engclient_cmd( iPlayer, "drop", szWeaponName );
}
}
stock GetWeaponFromSlot( iPlayer, iSlot )
{
return ( 1 <= iSlot <= 5 ) ? get_pdata_cbase( iPlayer, m_rpgPlayerItems_Slot0 + iSlot, 5 ) : -1;
}