Благодаря, плъгина работи перфектно, но може ли да ми помогнеш да направя така, че скиновете от този плъгин да се скриват, защото в момента това не се случва.
Код за потвърждение: Избери целия код
#include < amxmodx >
#include < cstrike >
#include < hamsandwich >
#include < colorchat >
#define PLUGIN "Players Models"
#define VERSION "1.1"
#define AUTHOR "Smiley"
new bool:g_iAdmin[ 33 ];
#define ADMIN_ACCESS ADMIN_LEVEL_E
enum g_iData
{
MODEL_NAME_MENU[ 33 ], MODEL_TEAM, MODEL_NAME_FOLDER[ 33 ]
}
new const g_szModels[ ][ g_iData ] =
{
/*{ "Ime v menuto", otbor, "ime na .mdl faila" }*/
{ "Naruto", 1, "bpbm_vip_t_naruto" },
{ "The Clown", 1, "bpbm_vip_t_clown" },
{ "Assassin's Creed", 1, "bpbm_vip_t_assassin" },
{ "X-Men", 1, "bpbm_vip_t_xmen" },
{ "Spider Man", 2, "bpbm_vip_ct_spiderman" },
{ "Deadpool", 2, "bpbm_vip_ct_deadpool2" },
{ "Mr. Smith", 2, "bpbm_vip_ct_smith" },
{ "Masked Robber", 2, "bpbm_vip_ct_payday2" },
{ "Lara Croft [Girls Only]", 0, "bpbm_vip_girl" },
{ "Random Model", 0, "" }
}
new bool:g_iConnected[ 33 ], g_iSelectModel[ 33 ], g_iType[ 33 ];
public plugin_precache( )
{
for( new i; i < sizeof( g_szModels ); i++ )
{
if( !equali( g_szModels[ i ][ MODEL_NAME_FOLDER ], "" ) )
{
new folders[ 64 ];
formatex( folders, charsmax( folders ), "models/player/%s/%s.mdl", g_szModels[ i ][ MODEL_NAME_FOLDER ], g_szModels[ i ][ MODEL_NAME_FOLDER ] );
precache_model( folders );
}
}
precache_model( "models/player/bpbm_vip_ct_deadpool2/bpbm_vip_ct_deadpool2T.mdl" );
precache_model( "models/player/bpbm_vip_ct_payday2/bpbm_vip_ct_payday2T.mdl" );
precache_model( "models/player/bpbm_player_t/bpbm_player_t.mdl" );
precache_model( "models/player/bpbm_player_ct/bpbm_player_ct.mdl" );
}
public plugin_init( )
{
register_plugin( PLUGIN, VERSION, AUTHOR );
RegisterHam( Ham_Spawn, "player", "fwdPlayerSpawn", 1 );
register_clcmd( "say /skin", "cmdSkin" );
register_clcmd( "say_team /skin", "cmdSkin" );
register_clcmd( "say /skins", "cmdSkin" );
register_clcmd( "say_team /skins", "cmdSkin" );
}
public client_authorized( id )
{
g_iAdmin[ id ] = ( get_user_flags( id ) & ADMIN_ACCESS ) ? true : false;
g_iConnected[ id ] = true;
}
public client_disconnect( id )
{
g_iAdmin[ id ] = false;
g_iConnected[ id ] = false;
}
public fwdPlayerSpawn( id )
{
if( !is_user_alive( id ) || is_user_bot( id ) || is_user_hltv( id ) || cs_get_user_team( id ) == CS_TEAM_SPECTATOR) return;
if( !g_iAdmin[ id ])
{
if(cs_get_user_team( id ) == CS_TEAM_CT)
{
cs_set_user_model( id, "bpbm_player_ct" );
}
else
{
cs_set_user_model( id, "bpbm_player_t" );
}
return;
}
if( g_iConnected[ id ] )
{
switch( cs_get_user_team( id ) )
{
case CS_TEAM_T: g_iType[ id ] = random_num( 0, 3 );
case CS_TEAM_CT: g_iType[ id ] = random_num( 4, 7 );
}
}
else
{
g_iType[ id ] = g_iSelectModel[ id ];
if( !g_iType[ id ] ) return;
switch( cs_get_user_team( id ) )
{
case CS_TEAM_T:
{
if( g_iType[ id ] > 3 && g_iType[ id ] < 8 )
{
g_iConnected[ id ] = true;
fwdPlayerSpawn( id );
return;
}
}
case CS_TEAM_CT:
{
if( g_iType[ id ] < 4 )
{
g_iConnected[ id ] = true;
fwdPlayerSpawn( id );
return;
}
}
}
}
cs_set_user_model( id, g_szModels[ g_iType[id] ][ MODEL_NAME_FOLDER ] );
ColorChat( id, GREEN, "^1[^4BetterPlay^1] You have spawn with skin^3 %s", g_szModels[ g_iType[id] ][ MODEL_NAME_MENU ] );
}
public cmdSkin( id )
{
if( !is_user_alive( id ) || !g_iAdmin[ id ] ) return;
new menu, title[ 64 ];
formatex( title, charsmax( title ), "\yBetterPlay \d- \rSelect \wSkin" );
menu = menu_create( title, "SkinMenuHandler" );
for( new i; i < sizeof( g_szModels ); i++ )
{
new color[ 5 ], text[ 128 ];
if( g_szModels[ i ][ MODEL_TEAM ] == 0 )
{
formatex( color, charsmax( color ), "\y" );
}
else
{
if( get_user_team( id ) & g_szModels[ i ][ MODEL_TEAM ] )
{
formatex( color, charsmax( color ), "\y" );
}
else
{
formatex( color, charsmax( color ), "\d" );
}
}
formatex( text, charsmax( text ), "%s%s", color, g_szModels[ i ][ MODEL_NAME_MENU ] );
menu_additem( menu, text );
}
menu_display( id, menu, 0 );
}
public SkinMenuHandler( id, menu, item )
{
if( item >= 0 && is_user_alive( id ) )
{
if( g_szModels[ item ][ MODEL_TEAM ] != 0 && get_user_team( id ) != g_szModels[ item ][ MODEL_TEAM ] )
{
cmdSkin( id );
return PLUGIN_HANDLED;
}
switch( item )
{
case 9:
{
switch( cs_get_user_team( id ) )
{
case CS_TEAM_T: g_iType[ id ] = random_num( 0, 3 );
case CS_TEAM_CT: g_iType[ id ] = random_num( 4, 7 );
}
g_iConnected[ id ] = true;
cs_set_user_model( id, g_szModels[ g_iType[id] ][ MODEL_NAME_FOLDER ] );
ColorChat( id, GREEN, "^1[^4BetterPlay^1] You selected^4 Random^1 skin -^3 %s", g_szModels[ g_iType[id] ][ MODEL_NAME_MENU ] );
}
default:
{
g_iSelectModel[ id ] = item;
g_iConnected[ id ] = false;
cs_set_user_model( id, g_szModels[ item ][ MODEL_NAME_FOLDER ] );
ColorChat( id, GREEN, "^1[^4BetterPlay^1] You selected skin^3 %s", g_szModels[ item ][ MODEL_NAME_MENU ] );
}
}
}
return PLUGIN_CONTINUE;
}