Простой плагин осмотра оружия по аналогии cs:go
В архиве имеется полный пак оружий с анимациями осмотра
Плагин не требует указаний номер анимации осмотра и он сам определяет есть ли она и её продолжительность
Поддержка доп анимации глушителя на usp, m4a1
Для тех у кого не установлены модели cs:go вот (указаны модели из архива):
В архиве имеется полный пак оружий с анимациями осмотра
Плагин не требует указаний номер анимации осмотра и он сам определяет есть ли она и её продолжительность
Поддержка доп анимации глушителя на usp, m4a1
Для тех у кого не установлены модели cs:go вот (указаны модели из архива):
Код:
#include <amxmodx>
#include <reapi>
new const szVModel[MAX_WEAPONS - 1][MAX_RESOURCE_PATH_LENGTH] = {
"", "models/cs_go/v_p228.mdl", "", "models/cs_go/v_scout.mdl", "models/cs_go/v_hegrenade.mdl",
"models/cs_go/v_xm1014.mdl", "models/cs_go/v_c4.mdl", "models/cs_go/v_mac10.mdl",
"models/cs_go/v_aug.mdl", "models/cs_go/v_smokegrenade.mdl", "models/cs_go/v_elite.mdl",
"models/cs_go/v_fiveseven.mdl", "models/cs_go/v_ump45.mdl", "models/cs_go/v_sg550.mdl",
"models/cs_go/v_galil.mdl", "models/cs_go/v_famas.mdl", "models/cs_go/v_usp.mdl",
"models/cs_go/v_glock18.mdl", "models/cs_go/v_awp.mdl", "models/cs_go/v_mp5navy.mdl",
"models/cs_go/v_m249.mdl", "models/cs_go/v_m3.mdl", "models/cs_go/v_m4a1.mdl",
"models/cs_go/v_tmp.mdl", "models/cs_go/v_g3sg1.mdl", "models/cs_go/v_flashbang.mdl",
"models/cs_go/v_deagle.mdl", "models/cs_go/v_sg552.mdl", "models/cs_go/v_ak47.mdl",
"models/cs_go/v_knife.mdl", "models/cs_go/v_p90.mdl"
};
public plugin_init() {
RegisterHookChain(RG_CBasePlayerWeapon_DefaultDeploy, "CBasePlayerWeapon_DefaultDeploy", false);
}
public plugin_precache() {
for (new i = 0; i < sizeof szVModel; i++) {
if (szVModel[i][0]) precache_model(szVModel[i]);
}
}
public CBasePlayerWeapon_DefaultDeploy(const pItem, szViewModel[], szWeaponModel[], iAnim, szAnimExt[], skiplocal) {
if (is_nullent(pItem))
return HC_CONTINUE;
new iPlayer;
if(!(iPlayer = get_member(pItem, m_pPlayer)) || !is_user_connected(iPlayer))
return HC_CONTINUE;
SetHookChainArg(2, ATYPE_STRING, szVModel[get_member(pItem, m_iId)]);
return HC_CONTINUE;
}