Raised This Month: $ Target: $400
 0% 

RoundStartEvent - help


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Ax3l
Member
Join Date: Nov 2009
Old 07-18-2012 , 19:05   Re: RoundStartEvent - help
Reply With Quote #1

This is all plugin

Code:
new bool: AlreadyUsed[ 33 ];

new g_iSayText;

public plugin_init( )
{
	register_clcmd( "say /vipmenu" , "CmdVIP" );
	
	register_event( "HLTV" , "NewRound" , "a" , "1=0" , "2=0" );
	
	g_iSayText = get_user_msgid( "SayText" );
}

public NewRound( )
{
	arrayset( AlreadyUsed , false , sizeof( AlreadyUsed ) );
}

public CmdVIP( iPlayer )
{
	if( get_user_flags( iPlayer ) & ADMIN_LEVEL_H )
	{
		if( !AlreadyUsed[ iPlayer ] )
		{
			new Menu = menu_create( "VIP Menu" , "VIPMenu" );
			
			menu_additem( Menu , "GoDMoDe" , "1" );
			menu_additem( Menu , "NoClip" , "2" );
			menu_additem( Menu , "HeaLth" , "3" );
			menu_additem( Menu , "MoNeY" , "4" );
			menu_additem( Menu , "XP" , "5" );
			menu_additem( Menu , "ReSPaWn" , "6" );
			
			menu_display( iPlayer , Menu , 0 );
			
			AlreadyUsed[ iPlayer ] = true;
		}
		
		else
		{
			TE_SayText( iPlayer , "^x03 Ai folosit deja meniul de VIP runda asta" );
		}
	}
	
	else
	{
		TE_SayText( iPlayer , "^x03 Nu ai acces la aceasta comanda" );
	}
}

public VIPMenu( iPlayer , Menu , Item )
{
	if( Item == MENU_EXIT )
	{
		menu_destroy( Menu );
		
		return PLUGIN_HANDLED;
	}
	
	switch( Item )
	{
		case 0 : GoDMoDe( iPlayer );
		case 1 : NoClip( iPlayer );
		case 2 : HeaLth( iPlayer );
		case 3 : MoNeY( iPlayer );
		case 4 : XP( iPlayer );
		case 5 : ReSPaWn( iPlayer );
	}
	
	return PLUGIN_HANDLED;
}

public GoDMoDe( iPlayer )
{
	set_user_godmode( iPlayer , 1 );
	
	TE_SayText( iPlayer , "^x03 Ai folosit comanda de^x04 VIP GoDMoDe^x03 . Pentru 5 secunde esti invincibil" );
	
	set_task( 2.0 , "GoDMoDeOff" , iPlayer );
}

public GoDMoDeOff( iPlayer )
	set_user_godmode( iPlayer , 0 );

public NoClip( iPlayer )
{
	set_user_noclip( iPlayer , 1 );
	
	TE_SayText( iPlayer , "^x03 Ai folosit comanda de^x04 VIP NoClip^x03 . Pentru 5 secunde poti trece prin pereti" );
	
	set_task( 5.0 , "NoClipOff" , iPlayer );
}

public NoClipOff( iPlayer )
	set_user_noclip( iPlayer , 0 );

public HeaLth( iPlayer )
{
	set_user_health( iPlayer , get_user_health( iPlayer ) + 50 );
	cs_set_user_armor( iPlayer , get_user_armor( iPlayer ) + 100 , CS_ARMOR_VESTHELM );
	set_user_footsteps( iPlayer , 1 );
	
	TE_SayText( iPlayer , "^x03 Ai folosit comanda de^x04 VIP HeaLth^x03 . Ai primit +50 HP" );
}

public MoNeY( iPlayer )
{
	cs_set_user_money( iPlayer , 16000 );
	
	TE_SayText( iPlayer , "^x03 Ai folosit comanda de^x04 VIP MoNeY^x03 . Ai primit 16.000 $" );
}

public XP( iPlayer )
{
	new Nume[ 32];
	get_user_name( iPlayer , Nume , 31 );
	
	server_cmd( "amx_givexp %s 2500" , Nume );
}

public ReSPaWn( iPlayer )
{
	new iSansa = random( 100 );
	
	if( iSansa <= 20 && !is_user_alive( iPlayer ) )
	{
		ExecuteHamB( Ham_CS_RoundRespawn , iPlayer );
		
		TE_SayText( iPlayer , "^x03 Ai folosit comanda de^x04 VIP ReSPaWn . Ai primit ReSPaWn" );
	}
	
	else
	{
		TE_SayText( iPlayer , "^x03 Astazi nu ai noroc . Nu ai primit ReSPaWn" );
	}
}

TE_SayText( iReceiver , szMessage[ ] , any: ... )
{
	static szBuffer[ 192 ];
	vformat( szBuffer , 191 , szMessage , 3 );
	
	if( iReceiver )
		message_begin( MSG_ONE_UNRELIABLE , g_iSayText , _ , iReceiver ) , write_byte( iReceiver ) , write_string( szBuffer ) , message_end( );
	
	else
	{
		static iPlayers[ 32 ] , iNum , i;
		get_players( iPlayers , iNum , "ch" );
		
		for( i = 0; i < iNum; i++ )
			message_begin( MSG_ONE_UNRELIABLE , g_iSayText , _ , iPlayers[ i ] ) , write_byte( iPlayers[ i ] ) , write_string( szBuffer ) , message_end( );
	}
}
__________________
Ax3l is offline
ConnorMcLeod
Veteran Member
Join Date: Jul 2006
Location: France (95)
Old 07-18-2012 , 19:26   Re: RoundStartEvent - help
Reply With Quote #2

Don't set bool in CmdVIP but in VIPMenu, so if player press exit or if menu disappear because of another menu or whatever, bool won't be set to true.

PHP Code:
public CmdVIPiPlayer )
{
    if( 
get_user_flagsiPlayer ) & ADMIN_LEVEL_H )
    {
        if( !
AlreadyUsediPlayer ] )
        {
            new 
Menu menu_create"VIP Menu" "VIPMenu" );
            
            
menu_additemMenu "GoDMoDe" "1" );
            
menu_additemMenu "NoClip" "2" );
            
menu_additemMenu "HeaLth" "3" );
            
menu_additemMenu "MoNeY" "4" );
            
menu_additemMenu "XP" "5" );
            
menu_additemMenu "ReSPaWn" "6" );
            
            
menu_displayiPlayer Menu );
            
            
AlreadyUsediPlayer ] = true;
        }
        
        else
        {
            
TE_SayTextiPlayer "^x03 Ai folosit deja meniul de VIP runda asta" );
        }
    }
    
    else
    {
        
TE_SayTextiPlayer "^x03 Nu ai acces la aceasta comanda" );
    }
}

public 
VIPMenuiPlayer Menu Item )
{
    if( 
Item == MENU_EXIT )
    {
        
menu_destroyMenu );
        
        return 
PLUGIN_HANDLED;
    }
    
    switch( 
Item )
    {
        case 
GoDMoDeiPlayer );
        case 
NoClipiPlayer );
        case 
HeaLthiPlayer );
        case 
MoNeYiPlayer );
        case 
XPiPlayer );
        case 
ReSPaWniPlayer );
    }
    
    return 
PLUGIN_HANDLED;

->

PHP Code:
public CmdVIPiPlayer )
{
    if( 
get_user_flagsiPlayer ) & ADMIN_LEVEL_H )
    {
        if( !
AlreadyUsediPlayer ] )
        {
            new 
Menu menu_create"VIP Menu" "VIPMenu" );
            
            
menu_additemMenu "GoDMoDe" "1" );
            
menu_additemMenu "NoClip" "2" );
            
menu_additemMenu "HeaLth" "3" );
            
menu_additemMenu "MoNeY" "4" );
            
menu_additemMenu "XP" "5" );
            
menu_additemMenu "ReSPaWn" "6" );
            
            
menu_displayiPlayer Menu );
        }
        
        else
        {
            
TE_SayTextiPlayer "^x03 Ai folosit deja meniul de VIP runda asta" );
        }
    }
    
    else
    {
        
TE_SayTextiPlayer "^x03 Nu ai acces la aceasta comanda" );
    }
}

public 
VIPMenuiPlayer Menu Item )
{
    if( 
Item != MENU_EXIT )
    {
        switch( 
Item )
        {
            case 
GoDMoDeiPlayer );
            case 
NoClipiPlayer );
            case 
HeaLthiPlayer );
            case 
MoNeYiPlayer );
            case 
XPiPlayer );
            case 
ReSPaWniPlayer );
            default : goto 
ExitMenu// who knows :)
        
}
        
AlreadyUsediPlayer ] = true;
    }

ExitMenu:
    
menu_destroyMenu );    
    return 
PLUGIN_HANDLED;

__________________
- tired and retired -

- my plugins -

Last edited by ConnorMcLeod; 07-18-2012 at 19:28.
ConnorMcLeod is offline
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 22:10.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode