PHP Code:
#include <amxmodx>
#include <zombieplague>
#include <fakemeta>
new MaxPlayers
#define Normalmovementin 270.0
#define Fastmovementan 370.0
new Movementin[ 33 ] = 0
new Movementan[ 33 ] = 0
public plugin_init( )
{
register_plugin( "Nemesis Menu", "1.0", "ASD" )
register_logevent( "logevent_round_end", 2, "1=Round_End" )
register_forward(FM_PlayerPreThink, "fw_PlayerPreThink")
MaxPlayers = get_maxplayers( )
}
public zp_user_infected_post( id )
{
if ( is_user_alive( id ) && zp_get_user_nemesis( id ) )
{
set_task( 1.0, "Nemesis_Menu", id )
}
}
public Nemesis_Menu( id )
{
new menu = menu_create( "Nemesis Class Menu", "nemesis_menu_handler" )
menu_additem( menu, "Nemesis", "1", 0 )
menu_additem( menu, "Invicible Nemesis", "2", 0 )
menu_additem( menu, "Assassin Nemesis", "3", 0 )
menu_setprop( menu, MPROP_EXIT, MEXIT_ALL )
menu_display( id, menu, 0 )
}
public nemesis_menu_handler( 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:
{
chat_print( id, "You have chosen a Nemesis." )
}
case 2:
{
chat_print( id, "You have chosen Invicible Nemesis." )
set_user_maxspeed( id, Lowmovementin );
Movementin[ id ] = 1
new name[ 32 ]
get_user_name( id, name, 31 )
set_hudmessage( 225, 0, 0, 20.0, 0.45, 1, 0.0, 5.0, 1.0, 1.0, -1 )
show_hudmessage( 0, "%s has become a Invicible Nemesis.", name )
}
case 3:
{
chat_print( id, "You have chosen Assassin Nemesis." )
set_user_maxspeed( id, Fastmovementan );
Movementan[ id ] = 1
new name[ 32 ]
get_user_name( id, name, 31 )
set_hudmessage( 225, 0, 0, 20.0, 0.50, 1, 0.0, 5.0, 1.0, 1.0, -1 )
show_hudmessage( 0, "%s has become a Assassin Nemesis.", name )
}
}
menu_destroy( menu )
return PLUGIN_HANDLED
}
public fw_PlayerPreThink( id )
{
static Float:fMaxSpeed
if ( is_user_alive( id ) && zp_get_user_nemesis( id ) )
{
if ( Movementin[ id ] == 1 )
{
fMaxSpeed = get_user_maxspeed( id )
if ( fMaxSpeed > Lowmovementin )
set_user_maxspeed( id, Lowmovementin );
}
else
{
set_user_maxspeed( id, Normalmovementin );
}
if ( Movementan[ id ] == 1 )
{
fMaxSpeed = get_user_maxspeed( id )
if ( fMaxSpeed < Fastmovementan )
set_user_maxspeed( id, Fastmovementan );
}
else
{
set_user_maxspeed( id, Normalmovementin );
}
}
return PLUGIN_HANDLED;
}
public logevent_round_end( )
{
for ( new i = 1; i <= MaxPlayers; i++ )
{
Movementin[ i ] = 0
Movementan[ i ] = 0
}
}