Mensajes: 32
Temas: 14
Registro en: Sep 2018
Reputación:
0
Hola amigos Porfa necesito este plugin. Un admin model menu para ct y tt hombre y mujer, pero que cuando el admin se desconecte y se vuelva a conectar o cambien de mapa el model se mantenga. Espero su ayuda, gracias
Mensajes: 154
Temas: 57
Registro en: Dec 2017
Reputación:
0
Este no es atraves de un menú, no recuerdo de donde lo saque, pero es lo que buscas y funciona, espero que te sirva
Código PHP: #include <amxmodx> #include <fakemeta>
/* ========================================================== * [ Global stuff ] * =========================================================== */
#define SetPlayerBit(%1,%2) ( %1 |= ( 1 << ( %2 & 31 ) ) ) #define GetPlayerBit(%1,%2) ( %1 & ( 1 << ( %2 & 31 ) ) ) #define ClearPlayerBit(%1,%2) ( %1 &= ~( 1 << ( %2 & 31 ) ) )
const ARG_MODELNAME = 1; const ARG_PLAYERID = 12;
new const g_szCache_KeyModel[ ] = "model"; new const g_szModel[ ][ ] = { "admin_male","admin_male2","admin_girl","admin_girl2" }; /*El "admin_male" es terrorista, y el "admin_male2" es anti-terrorista. Lo mismo se aplica a "admin_girl". */
new g_iAdmin,g_iGirl,g_szPlayerModel[ 33 ][ 32 ];
/* ========================================================== * [ Initiation ] * =========================================================== */
public plugin_precache( ) { new szData[ 64 ]; for( new i;i < sizeof( g_szModel );i++ ) { formatex( szData,charsmax( szData ),"models/player/%s/%s.mdl",g_szModel[ i ],g_szModel[ i ] ); precache_model( szData ); } }
public plugin_init( ) { register_plugin( "Admin Models","1.0","Manu" );
register_event( "TeamInfo","ev_TeamInfo","a" ); register_forward( FM_SetClientKeyValue,"fw_ClientKeyValue" ); register_message( get_user_msgid( "ClCorpse" ),"message_ClCorpse" ); }
/* ========================================================== * [ Main functions ] * =========================================================== */
public ev_TeamInfo( ) { static iId,szTeam[ 2 ]; iId = read_data( 1 ); read_data( 2,szTeam,charsmax( szTeam ) ); if( GetPlayerBit( g_iAdmin,iId ) ) { copy( g_szPlayerModel[ iId ],charsmax( g_szPlayerModel[ ] ),g_szModel[ GetPlayerBit( g_iGirl,iId ) ? ( szTeam[ 0 ] == 'T' ? 2:3 ):( szTeam[ 0 ] == 'T' ? 0:1 ) ] ); set_user_info( iId,g_szCache_KeyModel,g_szPlayerModel[ iId ] ); } }
public fw_ClientKeyValue( iId,szBuffer[ ],szKey[ ],szValue[ ] ) { if( GetPlayerBit( g_iAdmin,iId ) && equal( szKey,g_szCache_KeyModel ) && !equal( szValue,g_szPlayerModel[ iId ] ) ) { set_user_info( iId,szKey,g_szPlayerModel[ iId ] ); return FMRES_SUPERCEDE; } return FMRES_IGNORED; }
public message_ClCorpse( ) { static iId; iId = get_msg_arg_int( ARG_PLAYERID ); if( GetPlayerBit( g_iAdmin,iId ) ) set_msg_arg_string( ARG_MODELNAME,g_szPlayerModel[ iId ] ); }
/* ========================================================== * [ Client-related ] * =========================================================== */
public client_putinserver( iId ) { static iFlags; iFlags = get_user_flags( iId ); if( iFlags & ADMIN_LEVEL_H ) // FLAG PARA MODEL DE HOMBRE { SetPlayerBit( g_iAdmin,iId );
if( iFlags & ADMIN_LEVEL_G ) // FLAG PARA MODEL DE MUJER SetPlayerBit( g_iGirl,iId ); } }
public client_disconnect( iId ) ClearPlayerBit( g_iAdmin,iId );
Mensajes: 32
Temas: 14
Registro en: Sep 2018
Reputación:
0
(17/08/2019, 03:12 PM)Mariano Gyt escribió: Este no es atraves de un menú, no recuerdo de donde lo saque, pero es lo que buscas y funciona, espero que te sirva
Código PHP: #include <amxmodx> #include <fakemeta>
/* ========================================================== * [ Global stuff ] * =========================================================== */
#define SetPlayerBit(%1,%2) ( %1 |= ( 1 << ( %2 & 31 ) ) ) #define GetPlayerBit(%1,%2) ( %1 & ( 1 << ( %2 & 31 ) ) ) #define ClearPlayerBit(%1,%2) ( %1 &= ~( 1 << ( %2 & 31 ) ) )
const ARG_MODELNAME = 1; const ARG_PLAYERID = 12;
new const g_szCache_KeyModel[ ] = "model"; new const g_szModel[ ][ ] = { "admin_male","admin_male2","admin_girl","admin_girl2" }; /*El "admin_male" es terrorista, y el "admin_male2" es anti-terrorista. Lo mismo se aplica a "admin_girl". */
new g_iAdmin,g_iGirl,g_szPlayerModel[ 33 ][ 32 ];
/* ========================================================== * [ Initiation ] * =========================================================== */
public plugin_precache( ) { new szData[ 64 ]; for( new i;i < sizeof( g_szModel );i++ ) { formatex( szData,charsmax( szData ),"models/player/%s/%s.mdl",g_szModel[ i ],g_szModel[ i ] ); precache_model( szData ); } }
public plugin_init( ) { register_plugin( "Admin Models","1.0","Manu" );
register_event( "TeamInfo","ev_TeamInfo","a" ); register_forward( FM_SetClientKeyValue,"fw_ClientKeyValue" ); register_message( get_user_msgid( "ClCorpse" ),"message_ClCorpse" ); }
/* ========================================================== * [ Main functions ] * =========================================================== */
public ev_TeamInfo( ) { static iId,szTeam[ 2 ]; iId = read_data( 1 ); read_data( 2,szTeam,charsmax( szTeam ) ); if( GetPlayerBit( g_iAdmin,iId ) ) { copy( g_szPlayerModel[ iId ],charsmax( g_szPlayerModel[ ] ),g_szModel[ GetPlayerBit( g_iGirl,iId ) ? ( szTeam[ 0 ] == 'T' ? 2:3 ):( szTeam[ 0 ] == 'T' ? 0:1 ) ] ); set_user_info( iId,g_szCache_KeyModel,g_szPlayerModel[ iId ] ); } }
public fw_ClientKeyValue( iId,szBuffer[ ],szKey[ ],szValue[ ] ) { if( GetPlayerBit( g_iAdmin,iId ) && equal( szKey,g_szCache_KeyModel ) && !equal( szValue,g_szPlayerModel[ iId ] ) ) { set_user_info( iId,szKey,g_szPlayerModel[ iId ] ); return FMRES_SUPERCEDE; } return FMRES_IGNORED; }
public message_ClCorpse( ) { static iId; iId = get_msg_arg_int( ARG_PLAYERID ); if( GetPlayerBit( g_iAdmin,iId ) ) set_msg_arg_string( ARG_MODELNAME,g_szPlayerModel[ iId ] ); }
/* ========================================================== * [ Client-related ] * =========================================================== */
public client_putinserver( iId ) { static iFlags; iFlags = get_user_flags( iId ); if( iFlags & ADMIN_LEVEL_H ) // FLAG PARA MODEL DE HOMBRE { SetPlayerBit( g_iAdmin,iId );
if( iFlags & ADMIN_LEVEL_G ) // FLAG PARA MODEL DE MUJER SetPlayerBit( g_iGirl,iId ); } }
public client_disconnect( iId ) ClearPlayerBit( g_iAdmin,iId );
Gracias, pero no es lo que busco
Mensajes: 400
Temas: 112
Registro en: Mar 2019
Reputación:
1
(17/08/2019, 11:56 AM)Donald Duckling escribió: Hola amigos Porfa necesito este plugin. Un admin model menu para ct y tt hombre y mujer, pero que cuando el admin se desconecte y se vuelva a conectar o cambien de mapa el model se mantenga. Espero su ayuda, gracias No entendi lo que en verdad quieres, podrias explicarte mejor??
Quieres ponerle skin personalizados a algun jugador o algo?
Explicate no somos adivinos, de lo que en verdad quieres.!
Existe plugin de admin model, que siempre lo tendran los skin permanente, y si no quiere que se le vea la skin pues le quitas el acceso del flag y listo.
__________________________________________________
Aprendiendo sobre Scripting y Mapper
SI NO VAS AYUDAR, POR FAVOR NO COMENTAR
|