Admin Model Menu CT & TT
#1
Hola amigos Sonrisa 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 Approved
Responder
#2
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_szPlayerModel33 ][ 32 ];

/* ==========================================================
*                 [ Initiation ]
* =========================================================== */

public plugin_precache( )
{
    new 
szData64 ];
    
    for( new 
i;sizeofg_szModel );i++ )
    {
        
formatexszData,charsmaxszData ),"models/player/%s/%s.mdl",g_szModel],g_szModel] );
        
precache_modelszData );
    }
}

public 
plugin_init( )
{
    
register_plugin"Admin Models","1.0","Manu" );

    
register_event"TeamInfo","ev_TeamInfo","a" );
    
register_forwardFM_SetClientKeyValue,"fw_ClientKeyValue" );
    
register_messageget_user_msgid"ClCorpse" ),"message_ClCorpse" );
}

/* ==========================================================
*                 [ Main functions ]
* =========================================================== */

public ev_TeamInfo( )
{
    static 
iId,szTeam];
    
    
iId read_data);
    
read_data2,szTeam,charsmaxszTeam ) );
        
    if( 
GetPlayerBitg_iAdmin,iId ) )
    {
        
copyg_szPlayerModeliId ],charsmaxg_szPlayerModel[ ] ),g_szModelGetPlayerBitg_iGirl,iId ) ? ( szTeam] == 'T' 2:):( szTeam] == 'T' 0:) ] );
        
set_user_infoiId,g_szCache_KeyModel,g_szPlayerModeliId ] );
    }
}

public 
fw_ClientKeyValueiId,szBuffer[ ],szKey[ ],szValue[ ] )
{
    if( 
GetPlayerBitg_iAdmin,iId ) && equalszKey,g_szCache_KeyModel ) && !equalszValue,g_szPlayerModeliId ] ) )
    {
        
set_user_infoiId,szKey,g_szPlayerModeliId ] );
        
        return 
FMRES_SUPERCEDE;
    }
    
    return 
FMRES_IGNORED;
}

public 
message_ClCorpse( )
{
    static 
iIdiId get_msg_arg_intARG_PLAYERID );
    
    if( 
GetPlayerBitg_iAdmin,iId ) )
        
set_msg_arg_stringARG_MODELNAME,g_szPlayerModeliId ] );
}

/* ==========================================================
*                 [ Client-related ]
* =========================================================== */

public client_putinserveriId )
{
    static 
iFlagsiFlags get_user_flagsiId );
    
    if( 
iFlags ADMIN_LEVEL_H // FLAG PARA MODEL DE HOMBRE
    
{
        
SetPlayerBitg_iAdmin,iId );

        if( 
iFlags ADMIN_LEVEL_G // FLAG PARA MODEL DE MUJER
            
SetPlayerBitg_iGirl,iId );
    }


public 
client_disconnectiId ClearPlayerBitg_iAdmin,iId ); 
Responder
#3
(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_szPlayerModel33 ][ 32 ];

/* ==========================================================
*                 [ Initiation ]
* =========================================================== */

public plugin_precache( )
{
    new 
szData64 ];
    
    for( new 
i;sizeofg_szModel );i++ )
    {
        
formatexszData,charsmaxszData ),"models/player/%s/%s.mdl",g_szModel],g_szModel] );
        
precache_modelszData );
    }
}

public 
plugin_init( )
{
    
register_plugin"Admin Models","1.0","Manu" );

    
register_event"TeamInfo","ev_TeamInfo","a" );
    
register_forwardFM_SetClientKeyValue,"fw_ClientKeyValue" );
    
register_messageget_user_msgid"ClCorpse" ),"message_ClCorpse" );
}

/* ==========================================================
*                 [ Main functions ]
* =========================================================== */

public ev_TeamInfo( )
{
    static 
iId,szTeam];
    
    
iId read_data);
    
read_data2,szTeam,charsmaxszTeam ) );
        
    if( 
GetPlayerBitg_iAdmin,iId ) )
    {
        
copyg_szPlayerModeliId ],charsmaxg_szPlayerModel[ ] ),g_szModelGetPlayerBitg_iGirl,iId ) ? ( szTeam] == 'T' 2:):( szTeam] == 'T' 0:) ] );
        
set_user_infoiId,g_szCache_KeyModel,g_szPlayerModeliId ] );
    }
}

public 
fw_ClientKeyValueiId,szBuffer[ ],szKey[ ],szValue[ ] )
{
    if( 
GetPlayerBitg_iAdmin,iId ) && equalszKey,g_szCache_KeyModel ) && !equalszValue,g_szPlayerModeliId ] ) )
    {
        
set_user_infoiId,szKey,g_szPlayerModeliId ] );
        
        return 
FMRES_SUPERCEDE;
    }
    
    return 
FMRES_IGNORED;
}

public 
message_ClCorpse( )
{
    static 
iIdiId get_msg_arg_intARG_PLAYERID );
    
    if( 
GetPlayerBitg_iAdmin,iId ) )
        
set_msg_arg_stringARG_MODELNAME,g_szPlayerModeliId ] );
}

/* ==========================================================
*                 [ Client-related ]
* =========================================================== */

public client_putinserveriId )
{
    static 
iFlagsiFlags get_user_flagsiId );
    
    if( 
iFlags ADMIN_LEVEL_H // FLAG PARA MODEL DE HOMBRE
    
{
        
SetPlayerBitg_iAdmin,iId );

        if( 
iFlags ADMIN_LEVEL_G // FLAG PARA MODEL DE MUJER
            
SetPlayerBitg_iGirl,iId );
    }


public 
client_disconnectiId ClearPlayerBitg_iAdmin,iId ); 

Gracias, pero no es lo que busco Triste
Responder
#4
(17/08/2019, 11:56 AM)Donald Duckling escribió: Hola amigos Sonrisa 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 Approved
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 Mario
SI NO VAS AYUDAR, POR FAVOR NO COMENTARLovepanda
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)