Код за потвърждение: Избери целия код
#include <amxmodx>
#include <fakemeta>
#define VIP_FLAG ADMIN_RESERVATION
enum _:Weapons
{
Id[20],
V_Model[64],
P_Model[64]
}
new const g_szWeapons[][Weapons] =
{
{ "weapon_ak47", "models/my_folder/v_ak47.mdl", "models/my_folder/p_ak47.mdl" },
{ "weapon_m4a1", "models/my_folder/v_m4a1.mdl", "models/my_folder/p_m4a1.mdl" },
{ "weapon_deagle", "models/my_folder/v_deagle.mdl", "models/my_folder/p_deagle.mdl" }
}
new Trie:g_tVModels, Trie:g_tPModels
public plugin_init()
{
register_plugin("Admin/VIP Weapon Models", "1.0", "OciXCrom")
register_event("CurWeapon", "OnChangeWeapon", "be", "1=1")
g_tVModels = TrieCreate()
g_tPModels = TrieCreate()
}
public plugin_precache()
{
for(new i; i < sizeof(g_szWeapons); i++)
{
if(g_szWeapons[i][V_Model][0])
{
TrieSetString(g_tVModels, g_szWeapons[i][Id], g_szWeapons[i][V_Model])
precache_model(g_szWeapons[i][V_Model])
}
if(g_szWeapons[i][P_Model][0])
{
TrieSetString(g_tPModels, g_szWeapons[i][Id], g_szWeapons[i][P_Model])
precache_model(g_szWeapons[i][P_Model])
}
}
}
public plugin_end()
{
TrieDestroy(g_tVModels)
TrieDestroy(g_tPModels)
}
public OnChangeWeapon(id)
{
if(!(get_user_flags(id) & VIP_FLAG))
return
new szModel[64], szWeapon[20]
get_weaponname(read_data(2), szWeapon, charsmax(szWeapon))
if(TrieGetString(g_tVModels, szWeapon, szModel, charsmax(szModel)))
set_pev(id, pev_viewmodel2, szModel)
if(TrieGetString(g_tPModels, szWeapon, szModel, charsmax(szModel)))
set_pev(id, pev_weaponmodel2, szModel)
}