Añadir modelo w_
#1
Gente  Lml por favor necesito añadirle el modelo "w_" a este plugin que encontré, quiero para que cuando este en el suelo se muestre el skin.

Código:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

#define PLUGIN "Weapon Skins ADMIN_LEVEL_H"
#define VERSION "1.0"
#define AUTHOR "Bafak"

new const v_Model1[] = "models/wmodels/v_m4a1.mdl"
new const v_Model2[] = "models/wmodels/v_ak47.mdl"
new const v_Model3[] = "models/wmodels/v_aug.mdl"
new const v_Model4[] = "models/wmodels/v_awp.mdl"
new const v_Model5[] = "models/wmodels/v_sg552.mdl"
new const v_Model6[] = "models/wmodels/v_deagle.mdl"
new const v_Model7[] = "models/wmodels/v_knife.mdl"

new const p_Model1[] = "models/wmodels/p_ak47.mdl"
new const p_Model2[] = "models/wmodels/p_aug.mdl"
new const p_Model3[] = "models/wmodels/p_awp.mdl"
new const p_Model4[] = "models/wmodels/p_sg552.mdl"
new const p_Model5[] = "models/wmodels/p_deagle.mdl"
new const p_Model6[] = "models/wmodels/p_knife.mdl"

new onoffskinguns[ 33 ]

public plugin_precache()
{
    precache_model(v_Model1)
    precache_model(v_Model2)
    precache_model(v_Model3)
    precache_model(v_Model4)
    precache_model(v_Model5)
    precache_model(v_Model6)
    precache_model(v_Model7)
   
    precache_model(p_Model1)
    precache_model(p_Model2)
    precache_model(p_Model3)
    precache_model(p_Model4)
    precache_model(p_Model5)
    precache_model(p_Model6)
}
public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_event("CurWeapon" , "cur_weapon" , "be" , "1=1")
   
    register_clcmd( "say /skins", "cmd_nastaveni" )
    register_clcmd( "say_team /skins", "cmd_nastaveni" )
}
public client_putinserver(id)
{
    onoffskinguns[id] = 0
    set_task(80.0,"oznamenie",id,"",0,"b")
}
public cur_weapon(id)
{
    if(get_user_flags(id) & ADMIN_LEVEL_H && onoffskinguns[id])
    {
   
        if(read_data(2) == CSW_M4A1)
        {
            set_pev(id, pev_viewmodel2, v_Model1)
        }
        else if(read_data(2) == CSW_AK47)
        {
            set_pev(id, pev_viewmodel2, v_Model2)
            set_pev(id, pev_weaponmodel2, p_Model1)
        }
        else if(read_data(2) == CSW_AUG)
        {
            set_pev(id, pev_viewmodel2, v_Model3)
            set_pev(id, pev_weaponmodel2, p_Model2)
        }
        else if(read_data(2) == CSW_AWP)
        {
            set_pev(id, pev_viewmodel2, v_Model4)
            set_pev(id, pev_weaponmodel2, p_Model3)
        }
        else if(read_data(2) == CSW_SG552)
        {
            set_pev(id, pev_viewmodel2, v_Model5)
            set_pev(id, pev_weaponmodel2, p_Model4)
        }
        else if(read_data(2) == CSW_DEAGLE)
        {
            set_pev(id, pev_viewmodel2, v_Model6)
            set_pev(id, pev_weaponmodel2, p_Model5)
        }
        else if(read_data(2) == CSW_KNIFE)
        {
            set_pev(id, pev_viewmodel2, v_Model7)
            set_pev(id, pev_weaponmodel2, p_Model6)
        }
    }
    return PLUGIN_CONTINUE
}
public cmd_nastaveni(id)
{
    if( get_user_flags(id) & ADMIN_LEVEL_H)
    {
        static item[64]
       
        formatex(item, charsmax(item), "\rSkins Menu")
        new menu = menu_create(item, "nastaveni_handler")
       
        if(onoffskinguns[id])
        {
            formatex(item, charsmax(item), "\yTurn On")
            menu_additem(menu, item, "1", 0)
        }
        else
        {
            formatex(item, charsmax(item), "\rTurn Off")
            menu_additem(menu, item, "1", 0)
        }
        menu_addblank(menu, 0)
       
        formatex(item, charsmax(item), "Exit")
        menu_additem(menu, item, "2", 0)
       
        menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER)
        menu_setprop(menu, MPROP_NUMBER_COLOR, "\r" )
        menu_display(id, menu, 0)
    }
    else
    {
        ChatColor(id, "!gMessage !y: You dont have any acess for this command.")
    }
    return PLUGIN_CONTINUE
}
public nastaveni_handler(id, menu, item)
{
    new data[6], iName[64]
    new access, callback
    menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
   
    new key = str_to_num(data)
   
    switch(key)
    {
        case 1:
        {
            if(!(get_user_flags(id) & ADMIN_LEVEL_H))
            {
                return PLUGIN_HANDLED
            }
            if(onoffskinguns[id])
            {
                onoffskinguns[id] = 0
            }
            else
            {
                onoffskinguns[id] = 1
            }
            cmd_nastaveni(id)
        }
        case 2:
        {
        }
    }
    menu_destroy(menu)
    return PLUGIN_HANDLED
}
public oznamenie(id)
{
    if( get_user_flags(id) & ADMIN_LEVEL_H)
    {
        ChatColor(id, "!gMessage !y: Special skins - !g/skins")
    }
    else
    {
        ChatColor(id, "!gMessage !y: ...Message...")
    }
}
stock ChatColor(const id, const input[], any:...)
{
    new count = 1, players[32]
    static msg[191]
    vformat(msg, 190, input, 3)
   
    replace_all(msg, 190, "!g", "^4") // Green Color
    replace_all(msg, 190, "!y", "^1") // Default Color
    replace_all(msg, 190, "!team", "^3") // Team Color
    replace_all(msg, 190, "!team2", "^0") // Team2 Color
   
    if (id) players[0] = id; else get_players(players, count, "ch")
    {
        for (new i = 0; i < count; i++)
        {
            if (is_user_connected(players[i]))
            {
                message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
                write_byte(players[i]);
                write_string(msg);
                message_end();
            }
        }
    }
}
Responder
#2
Código PHP:
#define MODEL_W "models/w_tu_arma.mdl"

// Plugin init
register_forward(FM_SetModel"fw_SetModel"1)

// Plugin Precache
precache_model(MODEL_W)

// Abajo de todo o donde te parezca
public fw_SetModel(entidadmodel[])
{
    if(!
pev_valid(entidad)) return FMRES_IGNORED
    
    
static nombre_de_clase[33]; pev(entidadpev_classnamenombre_de_clasecharsmax(nombre_de_clase))
    
    if(!
equal(nombre_de_clase"weaponbox")) return FMRES_IGNORED
    
    
static idid pev(entidadpev_owner)
    
    if(
equal(model"models/w_m4a1.mdl")) // Ejemplo de un arma en especifico, en este caso la m4a1
    
{
        
engfunc(EngFunc_SetModelentidadMODEL_W)
        return 
FMRES_SUPERCEDE
        
    
}
    return 
FMRES_IGNORED

___________________________________
SI NECESITAS UN PLUGIN TE LO HAGO $$$
COMUNICATE A MI DISCORD: emanuelitop15
Responder
#3
Fijate si te sirve

en este tutorial te explica como se hacer echale un vistaso
Cambiar los Models de las Armas


Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"

new const w_Model[] = {"models/wmodels/w_ak47.mdl"}

new const 
OLDWORLD_MODEL[] = {"models/wmodels/w_ak47.mdl"}

public 
plugin_init()
{
 
register_plugin(PLUGINVERSIONAUTHOR)
 
register_forward(FM_SetModel"fw_set_model")
}

public 
plugin_precache()

 
precache_model(OLDWORLD_MODEL)
 
precache_model(w_Model)
}

public 
fw_set_model(entitymodel[])
{
 if(
equal(model[7], OLDWORLD_MODEL))
 return 
FMRES_IGNORED

 
new className[33]
 
set_pev(entitypev_classnameclassName32)
 new 
owner
 owner 
pev(entitypev_owner
 
 if(
equal(className"weaponbox")  || equal(model[7], "w_ak47"4))
 {
 
engfunc(EngFunc_SetModelentityw_Model)
 
client_print(ownerprint_chat"tiraste la ak47")
 return 
FMRES_SUPERCEDE
 
}
 return 
FMRES_IGNORED


estuve buscando toda la tarde prueba y error y lo puede solucionar

lo que te pase primero olvídate porque no te va a servir porque no es para admin igual el de [E]manuelitop15

probalo y avisame si te anda bien
Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

#define PLUGIN "Weapon Skins ADMIN_LEVEL_H"
#define VERSION "1.0"
#define AUTHOR "Bafak"

enum _:MODELS_W
{
    MODEL_VIEJO 0,
    MODEL_NUEVO
}

new const 
WORLD_MODEL[MODELS_W][][] =
{
    // Models viejos
    {
 
"models/w_m4a1.mdl",
 
"models/w_ak47.mdl",
 
"models/w_aug.mdl",
 
"models/w_awp.mdl",
 
"models/w_sg552.mdl",
 
"models/w_deagle.mdl",
 
"models/w_knife.mdl"
    },
    // Models nuevos
    {
 
"models/wmodels/w_m4a1.mdl",
 
"models/wmodels/w_ak47.mdl",
 
"models/wmodels/w_aug.mdl",
 
"models/wmodels/w_awp.mdl",
 
"models/wmodels/w_sg552.mdl",
 
"models/wmodels/w_deagle.mdl",
 
"models/wmodels/w_knife.mdl"
    }
}

new const 
v_Model1[] = "models/wmodels/v_m4a1.mdl"
new const v_Model2[] = "models/wmodels/v_ak47.mdl"
new const v_Model3[] = "models/wmodels/v_aug.mdl"
new const v_Model4[] = "models/wmodels/v_awp.mdl"
new const v_Model5[] = "models/wmodels/v_sg552.mdl"
new const v_Model6[] = "models/wmodels/v_deagle.mdl"
new const v_Model7[] = "models/wmodels/v_knife.mdl"

new const p_Model1[] = "models/wmodels/p_m4a1.mdl"
new const p_Model2[] = "models/wmodels/p_ak47.mdl"
new const p_Model3[] = "models/wmodels/p_aug.mdl"
new const p_Model4[] = "models/wmodels/p_awp.mdl"
new const p_Model5[] = "models/wmodels/p_sg552.mdl"
new const p_Model6[] = "models/wmodels/p_deagle.mdl"
new const p_Model7[] = "models/wmodels/p_knife.mdl"

new onoffskinguns33 ]

public 
plugin_precache()
{
    new i
    
for (0sizeof(WORLD_MODEL[]); i++) precache_model(WORLD_MODEL[MODEL_NUEVO][i])

    precache_model(v_Model1)
    precache_model(v_Model2)
    precache_model(v_Model3)
    precache_model(v_Model4)
    precache_model(v_Model5)
    precache_model(v_Model6)
    precache_model(v_Model7)
  
    precache_model
(p_Model1)
    precache_model(p_Model2)
    precache_model(p_Model3)
    precache_model(p_Model4)
    precache_model(p_Model5)
    precache_model(p_Model6)
    precache_model(p_Model7)
}
public 
plugin_init()
{
    register_plugin(PLUGINVERSIONAUTHOR)
    register_event("CurWeapon" "cur_weapon" "be" "1=1")
  
    register_clcmd
"say /skins""cmd_nastaveni" )
    register_clcmd"say_team /skins""cmd_nastaveni" )
    register_forward(FM_SetModel"fw_SetModel")
}
public 
client_putinserver(id)
{
    onoffskinguns[id] = 0
    set_task
(80.0,"oznamenie",id,"",0,"b")
}
public 
cur_weapon(id)
{
    if(get_user_flags(id) & ADMIN_LEVEL_H && onoffskinguns[id])
    {
  
        
if(read_data(2) == CSW_M4A1)
        {
            set_pev(idpev_viewmodel2v_Model1)
        }
        else if(read_data(2) == CSW_AK47)
        {
            set_pev(idpev_viewmodel2v_Model2)
            set_pev(idpev_weaponmodel2p_Model1)
        }
        else if(read_data(2) == CSW_AUG)
        {
            set_pev(idpev_viewmodel2v_Model3)
            set_pev(idpev_weaponmodel2p_Model2)
        }
        else if(read_data(2) == CSW_AWP)
        {
            set_pev(idpev_viewmodel2v_Model4)
            set_pev(idpev_weaponmodel2p_Model3)
        }
        else if(read_data(2) == CSW_SG552)
        {
            set_pev(idpev_viewmodel2v_Model5)
            set_pev(idpev_weaponmodel2p_Model4)
        }
        else if(read_data(2) == CSW_DEAGLE)
        {
            set_pev(idpev_viewmodel2v_Model6)
            set_pev(idpev_weaponmodel2p_Model5)
        }
        else if(read_data(2) == CSW_KNIFE)
        {
            set_pev(idpev_viewmodel2v_Model7)
            set_pev(idpev_weaponmodel2p_Model6)
        }
    }
    return PLUGIN_CONTINUE
}
public 
cmd_nastaveni(id)
{
    if( get_user_flags(id) & ADMIN_LEVEL_H)
    {
        static item[64]
      
        formatex
(itemcharsmax(item), "\rSkins Menu")
        new menu menu_create(item"nastaveni_handler")
      
        
if(onoffskinguns[id])
        {
            formatex(itemcharsmax(item), "\yTurn On")
            menu_additem(menuitem"1"0)
        }
        else
        {
            formatex(itemcharsmax(item), "\rTurn Off")
            menu_additem(menuitem"1"0)
        }
        menu_addblank(menu0)
      
        formatex
(itemcharsmax(item), "Exit")
        menu_additem(menuitem"2"0)
      
        menu_setprop
(menuMPROP_EXITMEXIT_NEVER)
        menu_setprop(menuMPROP_NUMBER_COLOR"\r" )
        menu_display(idmenu0)
    }
    else
    {
        ChatColor(id"!gMessage !y: You dont have any acess for this command.")
    }
    return PLUGIN_CONTINUE
}
public 
nastaveni_handler(idmenuitem)
{
    new data[6], iName[64]
    new accesscallback
    menu_item_getinfo
(menuitemaccessdata,5iName63callback)
  
    
new key str_to_num(data)
  
    
switch(key)
    {
        case 1:
        {
            if(!(get_user_flags(id) & ADMIN_LEVEL_H))
            {
                return PLUGIN_HANDLED
            
}
            if(onoffskinguns[id])
            {
                onoffskinguns[id] = 0
            
}
            else
            {
                onoffskinguns[id] = 1
            
}
            cmd_nastaveni(id)
        }
        case 2:
        {
        }
    }
    menu_destroy(menu)
    return PLUGIN_HANDLED
}
public 
oznamenie(id)
{
    if( get_user_flags(id) & ADMIN_LEVEL_H)
    {
        ChatColor(id"!gMessage !y: Special skins - !g/skins")
    }
    else
    {
        ChatColor(id"!gMessage !y: ...Message...")
    }
}

public 
fw_SetModel(entitymodel[])
{
 
    static iOwner
    iOwner 
pev(entitypev_owner)
 
    if ( !is_user_connectediOwner ) || !( get_user_flagsiOwner ) & ADMIN_LEVEL_H ) )  
 
return FMRES_IGNORED  
 
    
if(!pev_valid(entity))
        return FMRES_IGNORED

    
new iok

    
for (0sizeof(WORLD_MODEL[]); i++)
    {
        if (equali(modelWORLD_MODEL[MODEL_VIEJO][i]))
        {
            ok 1
            
break
        }
    }
    
    
if(!ok
        return FMRES_IGNORED

    
new className[33]
    pev(entitypev_classnameclassName32

    if(equal(className"weaponbox") || equal(className"armoury_entity") || equal(className"grenade"))
    {
        engfunc(EngFunc_SetModelentityWORLD_MODEL[MODEL_NUEVO][i]) // ENGINE
        return FMRES_SUPERCEDE
    
}
    
    
return FMRES_IGNORED


stock ChatColor(const id, const input[], any:...)
{
    new count 1players[32]
    static msg[191]
    vformat(msg190input3)
  
    replace_all
(msg190"!g""^4"// Green Color
    replace_all(msg190"!y""^1"// Default Color
    replace_all(msg190"!team""^3"// Team Color
    replace_all(msg190"!team2""^0"// Team2 Color
  
    
if (idplayers[0] = id; else get_players(playerscount"ch")
    {
        for (new 0counti++)
        {
            if (is_user_connected(players[i]))
            {
                message_begin(MSG_ONE_UNRELIABLEget_user_msgid("SayText"), _players[i])
                write_byte(players[i]);
                write_string(msg);
                message_end();
            }
        }
    }

Responder
#4
Gracias a los 2 por tomarse el tiempo de responder y disculpen por tardarme en responder, hubo un problema y perdí mi cuenta anterior con la que publique el pedido, @La Renga Mk use el código que me pusiste y me funciono pues mostraba el skin del arma al caer al suelo  Dancing


Ahora a buscar como hacer para que se guarde porque en el cambio de mapa se pone default  Trolleyes
Responder
#5
¿Alguna forma para que cargue solo sin tener que escribir por ejemplo /skins y que se pueda dar por nick?
Responder
#6
if(get_user_flags(id) & ADMIN_LEVEL_H && onoffskinguns[id])

->
if(get_user_flags(id) & ADMIN_LEVEL_H )
[Imagen: zcsztw-4.png] [Imagen: 6u5fj2-4.png]
[Imagen: linkedin_thumb_image.png][Imagen: 76561198283253977.png][Imagen: linkedin_thumb_image.png]
Responder
#7
(06/10/2020, 05:08 PM)lofi escribió: ¿Alguna forma para que cargue solo sin tener que escribir por ejemplo /skins y que se pueda dar por nick?

Podes hacerlo por consola o llamarlo en algun handler de un menu
___________________________________
SI NECESITAS UN PLUGIN TE LO HAGO $$$
COMUNICATE A MI DISCORD: emanuelitop15
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)