Заявка за плъгин -Admin Models
-
Season12
Извън линия - Потребител
- Мнения: 129
- Регистриран на: 10 Фев 2019, 19:41
- Местоположение: V nas
- Получена благодарност: 1 път
- Обратна връзка:
Заявка за плъгин -Admin Models
Ако може да ми дадете някъкъв плъгин Admin Models защото не ми тръгват скиновете за VIP
-
aHaJLruH
Извън линия - Потребител
- Мнения: 138
- Регистриран на: 13 Окт 2016, 12:33
- Местоположение: София
- Се отблагодари: 12 пъти
- Получена благодарност: 42 пъти
Заявка за плъгин -Admin Models
Има търсачка - използвай я. Щом елементарни неща не знаеш по-добре се откажи от това да имаш сървър. Другият вариант е да вземеш и да разучиш малко сам.
-
Darkness*
Извън линия - Потребител
- Мнения: 28
- Регистриран на: 07 Фев 2019, 00:10
- Се отблагодари: 1 път
- Получена благодарност: 1 път
Заявка за плъгин -Admin Models
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <cstrike>
#include <hamsandwich>
#define PLUGIN_NAME "Adm Skins"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "OciXCrom"
#define ADMIN ADMIN_RESERVATION
#define admin_t "models/player/modelzat/modelzat.mdl"
#define admin_ct "models/player/modelzact/modelzact.mdl"
public plugin_init()
{
register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR)
RegisterHam(Ham_Spawn, "player", "player_spawn", 1)
}
public player_spawn(id)
{
new team = get_user_team(id)
if(get_user_flags(id) & ADMIN) cs_set_user_model(id, (team == 1) ? "modelzat" : "modelzact")
}
public plugin_precache()
{
precache_model(admin_t)
precache_model(admin_ct)
}
Ако не знаеш и това как да го направиш, по добре се откажи найстина или вземи проучи малко как се слагат плъгини!
-
Dennis
Извън линия - AMXX Скриптър
- Мнения: 177
- Регистриран на: 25 Дек 2018, 04:14
- Се отблагодари: 4 пъти
- Получена благодарност: 10 пъти
Заявка за плъгин -Admin Models
Заповядай
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <zombieplague>
#include <cromchat>
#include <nvault>
#include <hamsandwich>
//#include <cstrike>
native zp_override_user_model(id, const newmodel[], modelindex = 0)
#define VIP_FLAG ADMIN_LEVEL_E //Flag "Q"
#define ADMIN_FLAG ADMIN_LEVEL_D //Flag "P"
#define VIP_CLASSES 4
#define ADMIN_CLASSES 4
enum _:eClassType
{
VIP,
ADMIN
}
enum _:eData
{
MODEL_NAME[MAX_NAME_LENGTH],
MODEL_PATH[64]
}
new const g_szModels[][eData] =
{
{ "Default", "fter_admin" },
// Add models only from here
// Vip Classes
{ "Crysis", "fter_admin" },
{ "Crysis Grey", "fter_admin_grey" },
{ "Crysis Gold", "fter_admin_gold" },
{ "Crysis White", "fter_admin_white" },
// Admin Classes
{ "Grey Halo", "fter_admin_halo" },
{ "Black Halo", "fter_admin_halo_black" },
{ "Light Halo", "fter_admin_halo_light" },
{ "Holy Fernando", "fter_admin_fernando" }
}
new g_iClass[MAX_PLAYERS + 1][eClassType], g_iSelected[MAX_PLAYERS + 1]
new g_iVault
public plugin_init()
{
register_plugin("Human Classes [Models+Save]", "2.0", "Huehue")
RegisterHam(Ham_Spawn, "player", "CBase_Ham_Spawn", 1)
register_clcmd("say /models", "Command_ToggleMainMenu")
g_iVault = nvault_open("FTER_Models")
CC_SetPrefix("&x04[Fatall-Error] &x01")
}
public CBase_Ham_Spawn(id)
{
if (!is_user_alive(id))
return
set_task(1.0, "UpdatePlayerSkin", id)
}
public UpdatePlayerSkin(id)
{
if (!is_user_alive(id) || zp_get_user_zombie(id) || zp_get_user_survivor(id))
return
if (g_iSelected[id] == VIP && get_user_flags(id) & VIP_FLAG)
zp_override_user_model(id, g_szModels[g_iClass[id][VIP]][MODEL_PATH])
else if (g_iSelected[id] == ADMIN && get_user_flags(id) & ADMIN_FLAG)
zp_override_user_model(id, g_szModels[g_iClass[id][ADMIN]][MODEL_PATH])
}
public client_putinserver(id)
{
new szName[MAX_NAME_LENGTH]
get_user_name(id, szName, charsmax(szName))
set_task(0.1, "Load_Data", id, szName, sizeof(szName))
}
public client_disconnected(id)
{
new szName[MAX_NAME_LENGTH]
get_user_name(id, szName, charsmax(szName))
Save_Data(id, szName)
}
public plugin_precache()
{
for (new i = 1; i < sizeof g_szModels; i++)
precache_player_model(g_szModels[i][MODEL_PATH])
}
public Command_ToggleMainMenu(id)
{
if (!is_user_alive(id) || zp_get_user_zombie(id) || zp_get_user_survivor(id))
return CC_SendMessage(id, "You don't have access right now!")
static szTitle[64]
formatex(szTitle, charsmax(szTitle), "Human Classes^n\dCurrent Class: \y[\r%s\y]", g_szModels[g_iClass[id][g_iSelected[id]]][MODEL_NAME])
new iMenu = menu_create(szTitle, "main_menu_handler")
menu_additem(iMenu, "VIP Classes", _, VIP_FLAG)
menu_additem(iMenu, "Admin Classes", _, ADMIN_FLAG)
menu_display(id, iMenu, 0)
return PLUGIN_HANDLED
}
public main_menu_handler(id, iMenu, Item)
{
if (!is_user_alive(id) || zp_get_user_zombie(id) || zp_get_user_survivor(id))
goto destroy
if (Item == MENU_EXIT)
goto destroy
ToggleClassesMenu(id, Item)
destroy:
menu_destroy(iMenu)
return PLUGIN_HANDLED
}
public ToggleClassesMenu(id, iType)
{
if (!is_user_alive(id) || zp_get_user_zombie(id) || zp_get_user_survivor(id))
return CC_SendMessage(id, "You don't have access right now!")
static szTitle[64]
formatex(szTitle, charsmax(szTitle), "%s Classes", iType == 0 ? "VIP" : "Admin")
new iMenu = menu_create(szTitle, "select_class_handler")
switch(iType)
{
case 0:
{
for (new i = 1; i <= VIP_CLASSES; i++)
menu_additem(iMenu, g_szModels[i][MODEL_NAME])
g_iSelected[id] = VIP
}
case 1:
{
for (new i = VIP_CLASSES + 1; i < sizeof g_szModels; i++)
menu_additem(iMenu, g_szModels[i][MODEL_NAME])
g_iSelected[id] = ADMIN
}
}
menu_display(id, iMenu, 0)
return PLUGIN_HANDLED
}
public select_class_handler(id, iMenu, Item)
{
if (!is_user_alive(id) || zp_get_user_zombie(id) || zp_get_user_survivor(id))
goto destroy
if (Item == MENU_EXIT)
goto destroy
new iModel = (g_iSelected[id] == VIP ? ++Item : ++Item + ADMIN_CLASSES)
g_iClass[id][g_iSelected[id]] = iModel
zp_override_user_model(id, g_szModels[iModel][MODEL_PATH])
CC_SendMessage(id, "You have selected model &x04%s", g_szModels[iModel][MODEL_NAME])
destroy:
menu_destroy(iMenu)
return PLUGIN_HANDLED
}
public Save_Data(id, szName[])
{
new szData[64]
formatex(szData, charsmax(szData), "%i#%i", g_iSelected[id], g_iClass[id][g_iSelected[id]])
nvault_set(g_iVault, szName, szData)
}
public Load_Data(szName[], id)
{
if (!is_user_connected(id))
return
new iTimeStamp
new szData[64]
if (nvault_lookup(g_iVault, szName, szData, charsmax(szData), iTimeStamp))
parse_loaded_data(id, szData, charsmax(szData))
else
register_new_player(id)
}
public parse_loaded_data(id, szData[], iLen)
{
replace_all(szData, iLen, "#", " ")
new szType[10], szModel[10]
parse(szData, szType, charsmax(szType), szModel, charsmax(szModel))
g_iSelected[id] = str_to_num(szType)
g_iClass[id][g_iSelected[id]] = str_to_num(szModel)
set_task(1.0, "CheckAliveStatus", id)
}
public register_new_player(id)
{
g_iClass[id][VIP] = 0
g_iClass[id][ADMIN] = 0
g_iSelected[id] = 0
//set_task(1.0, "CheckAliveStatusReset", id)
}
public CheckAliveStatus(id)
{
if (zp_get_user_zombie(id) || zp_get_user_survivor(id))
return
if (is_user_alive(id))
{
zp_override_user_model(id, g_szModels[g_iClass[id][g_iSelected[id]]][MODEL_PATH])
}
}
/*
// use in case you need it.
public CheckAliveStatusReset(id)
{
if (is_user_alive(id))
{
cs_reset_user_model(id)
}
}*/
public plugin_end()
{
nvault_close(g_iVault)
}
public client_infochanged(id)
{
if (!is_user_connected(id))
goto Handled
new szNewName[32], szOldName[32]
get_user_name(id, szOldName, charsmax(szOldName))
get_user_info(id, "name", szNewName, charsmax(szNewName))
if (!equal(szNewName, szOldName))
{
Save_Data(id, szOldName)
set_task(0.1, "Load_Data", id, szNewName, sizeof(szNewName))
goto Handled
}
Handled:
return PLUGIN_HANDLED
}
stock precache_player_model(const name[], &id = 0)
{
new model[128]
formatex(model, charsmax(model), "models/player/%s/%sT.mdl", name, name)
if(file_exists(model))
id = precache_generic(model)
static const extension[] = "T.mdl"
#pragma unused extension
copy(model[strlen(model) - charsmax(extension)], charsmax(model), ".mdl")
return precache_model(model)
}
-
OciXCrom
Извън линия - Администратор
- Мнения: 7206
- Регистриран на: 06 Окт 2016, 19:20
- Местоположение: /resetscore
- Се отблагодари: 117 пъти
- Получена благодарност: 1295 пъти
- Обратна връзка:
Заявка за плъгин -Admin Models
@Darkness* - този код не съм го писал аз.
@LayerFort - някъде да е споменал, че му трябва за Zombie Plague?
Ето ти по-качествена версия, настрой моделите и флага в първите редове. Ако питаш как, ще заключа темата.
@LayerFort - някъде да е споменал, че му трябва за Zombie Plague?
Ето ти по-качествена версия, настрой моделите и флага в първите редове. Ако питаш как, ще заключа темата.
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <cstrike>
#include <hamsandwich>
new const SKIN_FLAG = ADMIN_RESERVATION
new const SKIN_CT[] = "CustomAdmCT"
new const SKIN_T[] = "CustomAdmT"
new bool:g_bHasCustomSkin[33]
public plugin_init()
{
register_plugin("Simple VIP Model", "1.0", "OciXCrom")
RegisterHam(Ham_Spawn, "player", "OnPlayerSpawn", 1)
}
public plugin_precache()
{
precache_player_model(SKIN_CT)
precache_player_model(SKIN_T)
}
public client_putinserver(id)
g_bHasCustomSkin[id] = false
public OnPlayerSpawn(id)
{
if(is_user_alive(id))
{
if(get_user_flags(id) & SKIN_FLAG)
{
switch(cs_get_user_team(id))
{
case CS_TEAM_CT: set_model(id, SKIN_CT)
case CS_TEAM_T: set_model(id, SKIN_T)
}
}
else if(g_bHasCustomSkin[id])
{
g_bHasCustomSkin[id] = false
cs_reset_user_model(id)
}
}
}
set_model(const id, const szModel[])
{
cs_set_user_model(id, szModel)
g_bHasCustomSkin[id] = true
}
stock precache_player_model(const name[], &id = 0)
{
new model[128]
formatex(model, charsmax(model), "models/player/%s/%sT.mdl", name, name)
if(file_exists(model))
id = precache_generic(model)
static const extension[] = "T.mdl"
#pragma unused extension
copy(model[strlen(model) - charsmax(extension)], charsmax(model), ".mdl")
return precache_model(model)
}
-
- Подобни теми
- Отговори
- Преглеждания
- Последно мнение
-
- 7 Отговори
- 4019 Преглеждания
-
Последно мнение от OciXCrom
-
- 2 Отговори
- 774 Преглеждания
-
Последно мнение от bg-bb
-
- 1 Отговори
- 581 Преглеждания
-
Последно мнение от zolfeca
-
- 3 Отговори
- 766 Преглеждания
-
Последно мнение от trasha
-
- 2 Отговори
- 110 Преглеждания
-
Последно мнение от HeatoN
-
- 4 Отговори
- 1718 Преглеждания
-
Последно мнение от atmax
-
- 8 Отговори
- 2957 Преглеждания
-
Последно мнение от OciXCrom
Кой е на линия
Потребители разглеждащи този форум: 0 регистрирани и 14 госта