: Soporte para models T
#1
Hola a todos!

Sera que me puedan ayudar a modificar este codigo para que pueda detectar models T, Gracias de antemano!

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_t","admin_ct","admin_girl_t","admin_girl_ct" };

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_KICK )
    {
        
SetPlayerBitg_iAdmin,iId );

        if( 
iFlags ADMIN_LEVEL_H )
            
SetPlayerBitg_iGirl,iId );
    }
}

public 
client_disconnectiId ClearPlayerBitg_iAdmin,iId ); 
Aprendiendo!

Mi Comunidad: http://facebook.com/groups/CsParaisoComunidad/

Me ayudarias muchisimo donandome algo para poder abrir mi comunidad, te lo agradeceria muchisimo!

Click Aqui!
Responder
#2
Código PHP:
public plugin_precache( )
{
    new 
szData64 ];
    
    for( new 
i;sizeofg_szModel );i++ )
    {
        
formatexszData,charsmaxszData ),"models/player/%s/%s.mdl",g_szModel],g_szModel] );
        
precache_modelszData );

        
formatexszData,charsmaxszData ),"models/player/%s/%sT.mdl",g_szModel],g_szModel] );
        if(
file_exists(szData)) precache_modelszData );
    }

[Imagen: bvpq9q-6.png]

NO DOY AYUDA VIA MENSAJE PRIVADO

* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
Responder
#3
Me volviste a salvar la vida kikizon pacman, Solucionado
Aprendiendo!

Mi Comunidad: http://facebook.com/groups/CsParaisoComunidad/

Me ayudarias muchisimo donandome algo para poder abrir mi comunidad, te lo agradeceria muchisimo!

Click Aqui!
Responder
#4
hola ya que estamos en el tema

estoy haciendo algo parecido me pueden decir si esta bien echo ?


Código PHP:
new const g_admin_model_ct[] = "admin_ct_1"

new const g_admin_model_normal[] = "admin_normal_1"

new const g_admin_model_tt[][] = {
    
"admin_tt_1",
    
"admin_tt_2",
    
"admin_tt_3"


Código PHP:
public plugin_precache()
{
    
precache_player_model(g_admin_model_ct)
    
precache_player_model(g_admin_model_normal)
    
    static 
i;
    for(
0sizeof(g_admin_model_tt); ++iprecache_player_model(g_admin_model_tt[i]);



Código PHP:
stock precache_player_model(const modelname[]) 

    static 
longname[128]
    
formatex(longnamecharsmax(longname), "models/player/%s/%s.mdl"modelnamemodelname
    
precache_model(longname
    
    
copy(longname[strlen(longname)-4], charsmax(longname) - (strlen(longname)-4), "T.mdl"
    if (
file_exists(longname)) precache_model(longname


Codigo completo

Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <hamsandwich>
#include <cs_player_models_api>

new const g_admin_model_ct[] = "admin_ct_1"

new const g_admin_model_normal[] = "admin_normal_1"

new const g_admin_model_tt[][] = {
    
"admin_tt_1",
    
"admin_tt_2",
    
"admin_tt_3"
}

public 
plugin_precache()
{
    
precache_player_model(g_admin_model_ct)
    
precache_player_model(g_admin_model_normal)
    
    static 
i;
    for(
0sizeof(g_admin_model_tt); ++iprecache_player_model(g_admin_model_tt[i]);

}
public 
plugin_init() 
{
    
register_plugin("Simple Admin Models""1.0""JoNaThAnxD")
    
RegisterHam(Ham_Spawn"player""Admin_Models_Spawn"1)
    
RegisterHam(Ham_Killed"player""Admin_Models_Spawn"1)  
}
public 
Admin_Models_Spawn(id
{
    if (!
is_user_alive(id) || !cs_get_user_team(id))
        return 
PLUGIN_HANDLED;
    
    
cs_set_player_model(idg_admin_model_normal)
 
    if (
is_user_admin(id)) 
    {
        new 
CsTeams:team cs_get_user_team(id)
    
        if (
team == CS_TEAM_CTcs_set_player_model(idg_admin_model_ct)
        else if(
team == CS_TEAM_Tcs_set_player_model(idg_admin_model_tt[random(sizeof(g_admin_model_tt))])
        else 
cs_reset_player_model(id)
    }
    return 
PLUGIN_CONTINUE
}
stock precache_player_model(const modelname[]) 

    static 
longname[128]
    
formatex(longnamecharsmax(longname), "models/player/%s/%s.mdl"modelnamemodelname
    
precache_model(longname
    
    
copy(longname[strlen(longname)-4], charsmax(longname) - (strlen(longname)-4), "T.mdl"
    if (
file_exists(longname)) precache_model(longname

Responder
#5
No entiendo lo que quieres lograr en tu código...
[Imagen: bvpq9q-6.png]

NO DOY AYUDA VIA MENSAJE PRIVADO

* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)