ето го и плъгина за скиновете
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <cstrike>
#include <hamsandwich>
enum _:ModelsInfo
{
Flag,
CTModel[32],
TModel[32]
}
new const g_eModels[][ModelsInfo] =
{
{ ADMIN_LEVEL_A, "police_ct_owner", "police_t_owner" }
}
new Trie:g_tModels
public plugin_init()
{
register_plugin("Multiple Player Models", "1.0", "OciXCrom")
RegisterHam(Ham_Spawn, "player", "OnPlayerSpawn", 1)
}
public plugin_end()
TrieDestroy(g_tModels)
public plugin_precache()
{
g_tModels = TrieCreate()
for(new i; i < sizeof(g_eModels); i++)
{
precache_player_model(g_eModels[i][CTModel])
precache_player_model(g_eModels[i][TModel])
}
}
public OnPlayerSpawn(id)
{
if(is_user_alive(id))
{
static bool:bMatch, iFlags, i
bMatch = false
for(iFlags = get_user_flags(id), i = 0; i < sizeof(g_eModels); i++)
{
if(iFlags & g_eModels[i][Flag])
{
switch(cs_get_user_team(id))
{
case CS_TEAM_CT: cs_set_user_model(id, g_eModels[i][CTModel])
case CS_TEAM_T: cs_set_user_model(id, g_eModels[i][TModel])
}
bMatch = true
break
}
}
if(!bMatch)
{
static szModel[32]
cs_get_user_model(id, szModel, charsmax(szModel))
if(TrieKeyExists(g_tModels, szModel))
cs_reset_user_model(id)
}
}
}
precache_player_model(szModel[])
{
TrieSetCell(g_tModels, szModel, 1)
static szFile[128]
formatex(szFile, charsmax(szFile), "models/player/%s/%s.mdl", szModel, szModel)
precache_model(szFile)
replace(szFile, charsmax(szFile), ".mdl", "T.mdl")
if(file_exists(szFile))
precache_model(szFile)
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1026\\ f0\\ fs16 \n\\ par }
*/