Plugin Name: Player Models
Plugin Author: SHA[D]OW
Plugin Version: 0.7
Modification: Counter - Strike
Category: Fun Stuff
PHP Code:
#include < amxmodx >
#include < fakemeta >
#pragma semicolon 1
#define PLUGIN "Player Models"
#define VERSION "0.7"
#define SetUserConnected(%1) UserIsConnected[%1] = true
#define SetUserNotConnected(%1) UserIsConnected[%1] = false
#define fm_cs_get_user_team_index(%1) get_pdata_int(%1, 114)
new const CountersModel[ ] = "[BG] CT";
new const TerrorristsModel[ ] = "[BG] TE ";
new const Model[ ] = "model"; // nu modifica
new bool:UserIsConnected[ 33 ];
new UserModelName[ 33 ][ 32 ];
public plugin_init( )
{
register_plugin(PLUGIN, VERSION, "SHA[D]OW" );
register_forward( FM_SetClientKeyValue, "SetClientKeyValue" );
register_message( get_user_msgid( "ClCorpse" ), "Message_ClCorpse" );
}
public client_putinserver( id )
{
if( is_user_bot( id ) || is_user_hltv( id ) ) return 0;
SetUserConnected( id );
copy( UserModelName[ id ], sizeof ( UserModelName[ ] ) -1, "" );
return 0;
}
public client_disconnect( id )
{
if( is_user_bot( id ) || is_user_hltv( id ) ) return 0;
SetUserNotConnected( id );
copy( UserModelName[ id ], sizeof ( UserModelName[ ] ) -1, "" );
return 0;
}
public plugin_precache()
{
new modelpath[ 64 ];
formatex( modelpath, sizeof ( modelpath ) -1,"models/player/%s/%s.mdl",CountersModel,CountersModel );
precache_model( modelpath );
formatex( modelpath, sizeof ( modelpath ) -1,"models/player/%s/%s.mdl",TerrorristsModel,TerrorristsModel );
precache_model( modelpath );
}
public SetClientKeyValue( id, const szInfoBuffer[ ], const szKey[ ], const szValue[ ] )
{
if( equal( szKey, Model ) && UserIsConnected[ id ] )
{
new iTeam = fm_cs_get_user_team_index( id );
if( 1 <= iTeam <= 2 )
{
if( iTeam == 2 )
{
if( !equal( szValue, CountersModel ) )
{
set_user_info( id, "model", CountersModel );
copy( UserModelName[ id ], sizeof ( UserModelName[ ] ) -1, CountersModel );
return FMRES_SUPERCEDE;
}
}
else if( iTeam == 1 )
{
if( !equal( szValue, TerrorristsModel ) )
{
set_user_info( id, "model", TerrorristsModel );
copy( UserModelName[ id ], sizeof ( UserModelName[ ] ) -1, TerrorristsModel );
return FMRES_SUPERCEDE;
}
}
}
}
return FMRES_IGNORED;
}
public Message_ClCorpse( )
{
new id = get_msg_arg_int( 12 );
set_msg_arg_string( 1 , UserModelName[ id ] );
}