Участник
Пользователь
- Сообщения
- 702
- Реакции
- 54
Не получается никак заменить w_* модели гранат и не совсем понимаю, почему.
С моделями v_* и p_* - у меня нет проблем нет)
С моделями v_* и p_* - у меня нет проблем нет)
Код:
#include amxmodx
#include reapi
#include fakemeta
const SKIN_INFO_PATH_LENGTH = 64;
enum
{
HE = 0,
FB,
SG
};
enum _:SkinInfo
{
CLASSNAME[MAX_NAME_LENGTH],
V_MDL[SKIN_INFO_PATH_LENGTH],
P_MDL[SKIN_INFO_PATH_LENGTH],
W_MDL[SKIN_INFO_PATH_LENGTH]
};
new nade_data[][SkinInfo] =
{
{ "weapon_hegrenade", "models/grenade_skins/v_he.mdl", "models/grenade_skins/p_he.mdl", "models/grenade_skins/w_he.mdl" },
{ "weapon_flashbang", "models/grenade_skins/v_fb.mdl", "models/grenade_skins/p_fb.mdl", "models/grenade_skins/w_fb.mdl" },
{ "weapon_smokegrenade", "models/grenade_skins/v_sg.mdl", "models/grenade_skins/p_sg.mdl", "models/grenade_skins/w_sg.mdl" },
};
public plugin_precache()
{
for(new i = 0; i < sizeof(nade_data); i++)
{
precache_model(nade_data[i][V_MDL]);
//precache_model(nade_data[i][P_MDL]);
precache_model(nade_data[i][W_MDL]);
}
}
public plugin_init()
{
RegisterHookChain(RG_CBasePlayerWeapon_DefaultDeploy, "@DefaultDeploy_Pre", false);
RegisterHookChain(RG_CBasePlayer_ThrowGrenade, "@ThrowGrenade", false);
}
@DefaultDeploy_Pre(const item, const ViewModel[], const WeaponModel[], const iAnim, const AnimExt[], const skiplocal)
{
for(new i = 0; i < sizeof(nade_data); i++)
{
if(FClassnameIs(item, nade_data[i][CLASSNAME]))
{
SetHookChainArg(2, ATYPE_STRING, nade_data[i][V_MDL]);
break;
}
}
}
@ThrowGrenade(const id, const item, const Float:vecSrc[3], const Float:vecThrow[3], const Float:time, const const usEvent)
{
for(new i = 0; i < sizeof(nade_data); i++)
{
if(FClassnameIs(item, nade_data[i][CLASSNAME]))
{
set_entvar(item, var_model, nade_data[i][W_MDL]);
set_entvar(item, var_modelindex, i);
break;
}
}
return HC_CONTINUE;
}