Преработка на Админ Модел Плъгин

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.

Модератори: Extreme, Extreme, Extreme, Extreme, Extreme, Extreme, Extreme

Аватар
gadinkata
Извън линия
Потребител
Потребител
Мнения: 259
Регистриран на: 21 Мар 2018, 12:33
Местоположение: Враца
Се отблагодари: 25 пъти
Получена благодарност: 7 пъти
Обратна връзка:

Преработка на Админ Модел Плъгин

Мнение от gadinkata » 21 Мар 2018, 12:54

Здравейте,
Обръщам се към OciXCrom,който преди години в ********** е публикувал този код за админ модел + плайяр модел

Код за потвърждение: Избери целия код


#include <amxmodx>
#include <cstrike>
#include <hamsandwich>

#define PLUGIN_NAME "VIP Skins"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "OciXCrom"

#define VIP ADMIN_KICK

#define skin_t "models/player/hbj_player_t/hbj_player_t.mdl"
#define skin_ct "models/player/hbj_player_ct/hbj_player_ct.mdl"
#define admin_t "models/player/hbj_vip_t/hbj_vip_t.mdl"
#define admin_ct "models/player/hbj_vip_ct/hbj_vip_ct.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) & VIP) cs_set_user_model(id, (team == 1) ? "hbj_admin_t" : "hbj_admin_ct")
   else cs_set_user_model(id, (team == 1) ? "hbj_player_t" : "hbj_player_ct")
}

public plugin_precache()
{
   precache_model(skin_t)
   precache_model(skin_ct)
   precache_model(admin_t)
   precache_model(admin_ct)
   
}
Аз без да разбирам го промених на

Код за потвърждение: Избери целия код


#include <amxmodx>
#include <cstrike>
#include <hamsandwich>

#define PLUGIN_NAME "Adm Skins"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "OciXCrom"

#define OWNER ADMIN_LEVEL_A
#define ADMIN ADMIN_LEVEL_B

#define owner_t "models/player//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_t//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_t.mdl"
#define owner_ct "models/player//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_ct//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_ct.mdl"
#define admin_t "models/player//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_adm_t//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_adm_t.mdl"
#define admin_ct "models/player//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_ct//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_ct.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) & OWNER) cs_set_user_model(id, (team == 1) ? "/// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_t" : "/// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_ct")
   if(get_user_flags(id) & ADMIN) cs_set_user_model(id, (team == 1) ? "/// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_adm_t" : "/// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_ct")
}

public plugin_precache()
{
   precache_model(owner_t)
   precache_model(owner_ct)
   precache_model(admin_t)
   precache_model(admin_ct)
}

Плугина работи моделите се показват компилирането е успено,но в конзолата ми излиза следната грешка

Код за потвърждение: Избери целия код

L 03/21/2018 - 12:46:37: [CSTRIKE] Invalid player 2 
L 03/21/2018 - 12:46:37: [AMXX] Displaying debug trace (plugin "admin_models.amxx", version "1.0") 
L 03/21/2018 - 12:46:37: [AMXX] Run time error 10: native error (native "cs_set_user_model") 
L 03/21/2018 - 12:46:37: [AMXX] [0] admin_models2.sma::player_spawn (line 27)
Ако може помогнете,ще съм ви благодарен

Забравих да добавя,че плъгина го слагам на новата платформа REHLDS
Последно промяна от OciXCrom на 21 Мар 2018, 23:47, променено общо 1 път.
Причина: Премахнат нежелан сайт!

Аватар
[N]eXuS
Извън линия
Потребител
Потребител
Мнения: 163
Регистриран на: 16 Мар 2018, 04:52

Преработка на Админ Модел Плъгин

Мнение от [N]eXuS » 21 Мар 2018, 15:12

Ето но оправи линковете към моделите, виж как съм го направил направи и моделите така, демек

Код за потвърждение: Избери целия код

models/player/owner_ct/owner_ct.mdl
models/player/owner_t/owner_t.mdl
Така трябва да са ти моделите за да работи!

Код за потвърждение: Избери целия код


#include <amxmodx>
#include <cstrike>
#include <hamsandwich>

#define PLUGIN_NAME "VIP Skins"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "OciXCrom"

#define VIP ADMIN_KICK
#define OWNER ADMIN_LEVEL_A

#define skin_owner_t "models/player/owner_t/owner_t.mdl"
#define skin_owner_ct "models/player/owner_ct/owner_ct.mdl"

#define skin_t "models/player/hbj_player_t/hbj_player_t.mdl"
#define skin_ct "models/player/hbj_player_ct/hbj_player_ct.mdl"
#define admin_t "models/player/hbj_vip_t/hbj_vip_t.mdl"
#define admin_ct "models/player/hbj_vip_ct/hbj_vip_ct.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) & VIP) cs_set_user_model(id, (team == 1) ? "hbj_admin_t" : "hbj_admin_ct")
   if(get_user_flags(id) & OWNER) cs_set_user_model(id, (team == 1) ? "owner_t" : "owner_ct")
   else cs_set_user_model(id, (team == 1) ? "hbj_player_t" : "hbj_player_ct")
}

public plugin_precache()
{
   precache_model(skin_t)
   precache_model(skin_ct)
   precache_model(admin_t)
   precache_model(admin_ct)
   precache_model(skin_owner_ct)
   precache_model(skin_owner_t)
   
}
Последно промяна от [N]eXuS на 21 Мар 2018, 16:52, променено общо 3 пъти.

Аватар
Punch*
Извън линия
Потребител
Потребител
Мнения: 143
Регистриран на: 15 Фев 2018, 20:12
Получена благодарност: 1 път
Обратна връзка:

Преработка на Админ Модел Плъгин

Мнение от Punch* » 21 Мар 2018, 15:26

Можеш да използваш този плъгин ако си на API:

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <amxmisc>
#include <cstrike>

#define ADMIN_MODEL_CT	"models/player/adminskinct/adminskinct.mdl"
#define ADMIN_MODEL_T	"models/player/adminskint/adminskint.mdl" 

#define PLAYER_MODEL_CT	"models/player/playerskinct/playerskinct.mdl"
#define PLAYER_MODEL_T	"models/player/playerskint/playerskint.mdl"

public plugin_init() 
{
        register_plugin("AMX Admin Model", "1.1.1", "whitemike")
        register_event("ResetHUD", "resetModel", "b")
        return PLUGIN_CONTINUE
}

public plugin_precache() 
{
        precache_model(ADMIN_MODEL_CT)
        precache_model(ADMIN_MODEL_T)
        precache_model(PLAYER_MODEL_CT)
        precache_model(PLAYER_MODEL_T)
        return PLUGIN_CONTINUE
}

public resetModel(id, level, cid) 
{
	new CsTeams:userTeam = cs_get_user_team(id)
	if (get_user_flags(id) & ADMIN_KICK) 
	{
		if (userTeam == CS_TEAM_T) 
		{
			cs_set_user_model(id, ADMIN_MODEL_T)
		}
		else if(userTeam == CS_TEAM_CT) 
		{
			cs_set_user_model(id, ADMIN_MODEL_CT)
		}
	}
	else
	{
		if (userTeam == CS_TEAM_T) 
		{
			cs_set_user_model(id, PLAYER_MODEL_T)
		}
		else if(userTeam == CS_TEAM_CT) 
		{
			cs_set_user_model(id, PLAYER_MODEL_CT)
		}
	}
	return PLUGIN_CONTINUE
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1251\\ deff0\\ deflang1026{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/
Зa да смениш админ скиновете само трябва да смениш това:

Код за потвърждение: Избери целия код

#define ADMIN_MODEL_CT	"models/player/adminskinct/adminskinct.mdl"
#define ADMIN_MODEL_T	"models/player/adminskint/adminskint.mdl" 
Същото се отнася и за плейър скиновете:

Код за потвърждение: Избери целия код

#define PLAYER_MODEL_CT	"models/player/playerskinct/playerskinct.mdl"
#define PLAYER_MODEL_T	"models/player/playerskint/playerskint.mdl"

Аватар
gadinkata
Извън линия
Потребител
Потребител
Мнения: 259
Регистриран на: 21 Мар 2018, 12:33
Местоположение: Враца
Се отблагодари: 25 пъти
Получена благодарност: 7 пъти
Обратна връзка:

Преработка на Админ Модел Плъгин

Мнение от gadinkata » 21 Мар 2018, 15:53

API е новата платформа нали?аз искам за скиновете само owner i admin,ще си го едитна сам,ако има проблеми ще пиша,Благодаря и на двамата

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <amxmisc>
#include <cstrike>

#define ADMIN_MODEL_CT	"models/player/adminskinct/adminskinct.mdl"
#define ADMIN_MODEL_T	"models/player/adminskint/adminskint.mdl" 

#define PLAYER_MODEL_CT	"models/player/playerskinct/playerskinct.mdl"
#define PLAYER_MODEL_T	"models/player/playerskint/playerskint.mdl"

public plugin_init() 
{
        register_plugin("AMX Admin Model", "1.1.1", "whitemike")
        register_event("ResetHUD", "resetModel", "b")
        return PLUGIN_CONTINUE
}

public plugin_precache() 
{
        precache_model(ADMIN_MODEL_CT)
        precache_model(ADMIN_MODEL_T)
        precache_model(PLAYER_MODEL_CT)
        precache_model(PLAYER_MODEL_T)
        return PLUGIN_CONTINUE
}

public resetModel(id, level, cid) 
{
	new CsTeams:userTeam = cs_get_user_team(id)
	if (get_user_flags(id) & ADMIN_LEVEL_A) 
	{
		if (userTeam == CS_TEAM_T) 
		{
			cs_set_user_model(id, ADMIN_MODEL_T)
		}
		else if(userTeam == CS_TEAM_CT) 
		{
			cs_set_user_model(id, ADMIN_MODEL_CT)
		}
	}
	else
	{
	if (get_user_flags(id) & ADMIN_LEVEL_B) 
		if (userTeam == CS_TEAM_T) 
		{
			cs_set_user_model(id, PLAYER_MODEL_T)
		}
		else if(userTeam == CS_TEAM_CT) 
		{
			cs_set_user_model(id, PLAYER_MODEL_CT)
		}
	}
	return PLUGIN_CONTINUE
}

ето така искам,но незнам дали правилно го промених
ще тествам и щи пиша

Аватар
[N]eXuS
Извън линия
Потребител
Потребител
Мнения: 163
Регистриран на: 16 Мар 2018, 04:52

Преработка на Админ Модел Плъгин

Мнение от [N]eXuS » 21 Мар 2018, 16:07

Ако не си забелязал сложил съм OWNER само трябва да напишеш пътя до тях :think:

Аватар
gadinkata
Извън линия
Потребител
Потребител
Мнения: 259
Регистриран на: 21 Мар 2018, 12:33
Местоположение: Враца
Се отблагодари: 25 пъти
Получена благодарност: 7 пъти
Обратна връзка:

Преработка на Админ Модел Плъгин

Мнение от gadinkata » 21 Мар 2018, 16:50

Благодаря за което,видях какво си постнал,но ти си редактирал първия ми скрип,а на мен ми трябва втория,той работи,но ми изписва в конзолата некви неща по долу ще ги постна,аз първия скрип го редактирах и бих казал,че е същия като твоя,но без плеяр скина.Става въпрос,че искам
Скрип(плугин) само за два флага както съм го направил аз,но ми изписва грешки в конзолата,иначе скиновете си бачкат зареждат си всичко е окей
Ето пак моята редакция на първия скрип,та по точно да попитам правилно ли е написан,ако не е,споделете:

Код за потвърждение: Избери целия код


#include <amxmodx>
#include <cstrike>
#include <hamsandwich>

#define PLUGIN_NAME "Adm Skins"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "OciXCrom"

#define OWNER ADMIN_LEVEL_A
#define ADMIN ADMIN_LEVEL_B

#define owner_t "models/player//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_t//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_t.mdl"
#define owner_ct "models/player//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_ct//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_ct.mdl"
#define admin_t "models/player//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_adm_t//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_adm_t.mdl"
#define admin_ct "models/player//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_ct//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_ct.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) & OWNER) cs_set_user_model(id, (team == 1) ? "/// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_t" : "/// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_ct")
   if(get_user_flags(id) & ADMIN) cs_set_user_model(id, (team == 1) ? "/// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_adm_t" : "/// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_ct")
}

public plugin_precache()
{
   precache_model(owner_t)
   precache_model(owner_ct)
   precache_model(admin_t)
   precache_model(admin_ct)
}
//// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///това е просто че започва с CS,не обръщайте внимание
ето и грешката на твоя пак се получава същата

Код за потвърждение: Избери целия код

L 03/21/2018 - 16:40:58: [CSTRIKE] Invalid player 2
L 03/21/2018 - 16:40:58: [AMXX] Displaying debug trace (plugin "adm_model.amxx", version "1.0")
 L 03/21/2018 - 16:40:58: [AMXX] Run time error 10: native error (native "cs_set_user_model") 
 L 03/21/2018 - 16:40:58: [AMXX] [0] adm_model.sma::player_spawn (line 30)
Ако няма как да се махне тая грешка,няма проблеми,но само тя ми излиза в конзолата...иначе скиновете се зареждат както си пише по книгите

Добавено преди 2 минути 37 секунди:
Punch* написа: 21 Мар 2018, 15:26 Можеш да използваш този плъгин ако си на API:

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <amxmisc>
#include <cstrike>

#define ADMIN_MODEL_CT	"models/player/adminskinct/adminskinct.mdl"
#define ADMIN_MODEL_T	"models/player/adminskint/adminskint.mdl" 

#define PLAYER_MODEL_CT	"models/player/playerskinct/playerskinct.mdl"
#define PLAYER_MODEL_T	"models/player/playerskint/playerskint.mdl"

public plugin_init() 
{
        register_plugin("AMX Admin Model", "1.1.1", "whitemike")
        register_event("ResetHUD", "resetModel", "b")
        return PLUGIN_CONTINUE
}

public plugin_precache() 
{
        precache_model(ADMIN_MODEL_CT)
        precache_model(ADMIN_MODEL_T)
        precache_model(PLAYER_MODEL_CT)
        precache_model(PLAYER_MODEL_T)
        return PLUGIN_CONTINUE
}

public resetModel(id, level, cid) 
{
	new CsTeams:userTeam = cs_get_user_team(id)
	if (get_user_flags(id) & ADMIN_KICK) 
	{
		if (userTeam == CS_TEAM_T) 
		{
			cs_set_user_model(id, ADMIN_MODEL_T)
		}
		else if(userTeam == CS_TEAM_CT) 
		{
			cs_set_user_model(id, ADMIN_MODEL_CT)
		}
	}
	else
	{
		if (userTeam == CS_TEAM_T) 
		{
			cs_set_user_model(id, PLAYER_MODEL_T)
		}
		else if(userTeam == CS_TEAM_CT) 
		{
			cs_set_user_model(id, PLAYER_MODEL_CT)
		}
	}
	return PLUGIN_CONTINUE
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1251\\ deff0\\ deflang1026{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/
Зa да смениш админ скиновете само трябва да смениш това:

Код за потвърждение: Избери целия код

#define ADMIN_MODEL_CT	"models/player/adminskinct/adminskinct.mdl"
#define ADMIN_MODEL_T	"models/player/adminskint/adminskint.mdl" 
Същото се отнася и за плейър скиновете:

Код за потвърждение: Избери целия код

#define PLAYER_MODEL_CT	"models/player/playerskinct/playerskinct.mdl"
#define PLAYER_MODEL_T	"models/player/playerskint/playerskint.mdl"
Ако може,промени само за админи 2 флага вместо плеяр скин,защото го пробвах и не стана

Аватар
Punch*
Извън линия
Потребител
Потребител
Мнения: 143
Регистриран на: 15 Фев 2018, 20:12
Получена благодарност: 1 път
Обратна връзка:

Преработка на Админ Модел Плъгин

Мнение от Punch* » 21 Мар 2018, 17:17

Аз си помислих ,че искаш за админ + плейър да са в 1 плъгин за това дадох онова горното. Заповядай:

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <amxmisc>
#include <cstrike>

public plugin_init() {
        register_plugin("AMX Admin Model", "1.1.1", "whitemike")
        register_event("ResetHUD", "resetModel", "b")
        register_event("ResetHUD", "resetModel", "флаг")
        return PLUGIN_CONTINUE
}

public plugin_precache() {
        precache_model("models/player/admin_ct/admin_ct.mdl")
        precache_model("models/player/admin_t/admin_t.mdl")

        return PLUGIN_CONTINUE
}

public resetModel(id, level, cid) {
        if (get_user_flags(id) & ADMIN_KICK) {
                new CsTeams:userTeam = cs_get_user_team(id)
                if (userTeam == CS_TEAM_T) {
                        cs_set_user_model(id, "admin_te")
                }
                else if(userTeam == CS_TEAM_CT) {
                        cs_set_user_model(id, "admin_ct")
                }
                else {
                        cs_reset_user_model(id)
                }
        }

        return PLUGIN_CONTINUE
}
Ако не работи плъгина извинявам се защото не разбирам много за преработване на плъгини.

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

Преработка на Админ Модел Плъгин

Мнение от OciXCrom » 21 Мар 2018, 23:58

Не ползвай тези смешни кодове. Направих ти нов. Скиновете се настройват от new const g_eModels, като въвеждаш само името на файла (без .mdl). Можеш да добавяш колкото искаш, както и да сложиш скин за играчите (флаг z).

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <cstrike>
#include <hamsandwich>

enum _:ModelsInfo
{
	Flag,
	CTModel[32],
	TModel[32]
}

new const g_eModels[][ModelsInfo] =
{
	{ ADMIN_LEVEL_A, "owner_ct", "owner_t" },
	{ ADMIN_LEVEL_B, "admin_ct", "admin_t" }
}

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)
}

Аватар
gadinkata
Извън линия
Потребител
Потребител
Мнения: 259
Регистриран на: 21 Мар 2018, 12:33
Местоположение: Враца
Се отблагодари: 25 пъти
Получена благодарност: 7 пъти
Обратна връзка:

Преработка на Админ Модел Плъгин

Мнение от gadinkata » 22 Мар 2018, 00:10

OciXCrom™ написа: 21 Мар 2018, 23:58 Не ползвай тези смешни кодове. Направих ти нов. Скиновете се настройват от new const g_eModels, като въвеждаш само името на файла (без .mdl). Можеш да добавяш колкото искаш, както и да сложиш скин за играчите (флаг z).

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <cstrike>
#include <hamsandwich>

enum _:ModelsInfo
{
	Flag,
	CTModel[32],
	TModel[32]
}

new const g_eModels[][ModelsInfo] =
{
	{ ADMIN_LEVEL_A, "owner_ct", "owner_t" },
	{ ADMIN_LEVEL_B, "admin_ct", "admin_t" }
}

new Trie:g_tModels

public plugin_init()
{
	register_plugin("Multiple Player Models", "1.0", "OciXCrom")
	RegisterHam(Ham_Spawn, "player", "OnPlayerSpawn", 1)
	g_tModels = TrieCreate()
}

public plugin_end()
	TrieDestroy(g_tModels)

public plugin_precache()
{
	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)
}
Една Бира от мен,компилира се,няма грешки в конзолата,скиновете бачкат :)

Код за потвърждение: Избери целия код

new const g_eModels[][ModelsInfo] =
{
	{ ADMIN_LEVEL_A, "/// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_ct", "/// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_owner_t" },
	{ ADMIN_LEVEL_B, "/// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_adm_ct", "/// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///_adm_t" }
}
тук на нов ред от долу да добавя кой флаг искам и скиновете за "Т" "CT " за преяр играчите
Супер е,ще го архивирам и в папка важни,зада си имам хубави плугини,още веднъж Благодаря,знаех си,че ти ще ми свършиш работа

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

Преработка на Админ Модел Плъгин

Мнение от OciXCrom » 24 Мар 2018, 16:12

Имаше лека грешка в кода, който предоставих. Редът g_tModels = TrieCreate() трябва да се премести в началото на функцията plugin_precache(), в противен случай ще изхвърля грешки в конзолата и няма да рестартира модела при прераждане. Поправих го. Благодаря на LoShIaA, че ме уведоми.

Заключено
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Заявки за плъгини”

Кой е на линия

Потребители разглеждащи този форум: Bing [Bot] и 31 госта