Counter-Strike 1.6
CS1.BG | DUST2 NOSHTA GARMI [RANKED PLAY] #1
45.144.155.113:27015
de_dust2
Играчи: 30/32
de_dust2
Counter-Strike 1.6
Cs-PlovdiV.com - Aim Attack 93.123.16.4:27022 aim_aztec Играчи: 0/16

Премахване на reapi от плъгин

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
MaPaXyuA
Извън линия
Потребител
Потребител
Мнения: 162
Регистриран на: 08 Ное 2016, 16:29
Местоположение: Горна Оряховица
Се отблагодари: 5 пъти
Получена благодарност: 18 пъти
Обратна връзка:

Премахване на reapi от плъгин

Мнение от MaPaXyuA » 05 Яну 2023, 14:28

Здравейте.
Някой може ли да премахне reapi от този плъгин и да го направи да работи както трябва.
Пробвах да премахна само този ред ( #include <reapi> ) но не се получиха работите...


Скрито съдържание
Форумът изисква да си влезнал в акаунта си за да можеш да четеш това.
Изображение

Аватар
YankoNL
Извън линия
Потребител
Потребител
Мнения: 163
Регистриран на: 06 Апр 2017, 09:07
Местоположение: Варна
Се отблагодари: 22 пъти
Получена благодарност: 9 пъти

Re: Премахване на reapi от плъгин

Мнение от YankoNL » 07 Яну 2023, 01:36

Тествай

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

#include <amxmodx>
#include <zombieplague>
#include <hamsandwich>

#pragma semicolon 1

native zp_override_user_model(id, const newmodel[], modelindex = 0);

#define flag_get(%1,%2) (%1 & (1 << (%2 & 31)))
#define flag_get_boolean(%1,%2) (flag_get(%1,%2) ? true : false)
#define flag_set(%1,%2) %1 |= (1 << (%2 & 31))
#define flag_unset(%1,%2) %1 &= ~(1 << (%2 & 31))

new Array: g_iArray_ModelUserData, g_iBitUserCostumModel;
new g_iPlayerSkin_Human[33][64], g_iModelUserData;

enum _:eData_CustomModels
{
	TYPE_AUTH[4],
	USER_INFO[64],
	MODEL_USER_HUMAN[64]
};

public plugin_init()
{
	register_plugin("Custom model", "9.0", "OnlineRU");

	register_dictionary("ping_checker.txt");

	RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1);
}

public plugin_precache() {
	new szCfgDir[64], szCfgFile[128]; get_localinfo("amxx_configsdir", szCfgDir, charsmax(szCfgDir));
	formatex(szCfgFile, charsmax(szCfgFile), "%s/custom_models.ini", szCfgDir);

	switch (file_exists(szCfgFile))
	{
		case 0:
			log_to_file("%s/logs/log_error.log", "File ^"%s^" not found!", szCfgDir, szCfgFile);

		case 1:
		{
			new aDataModelUserData[eData_CustomModels], szBuffer[256], iLine, iLen;
			g_iArray_ModelUserData = ArrayCreate(eData_CustomModels);

			while (read_file(szCfgFile, iLine++, szBuffer, charsmax(szBuffer), iLen))
			{
				if (!iLen || szBuffer[0] == ';')
					continue;

				parse(szBuffer, aDataModelUserData[TYPE_AUTH], charsmax(aDataModelUserData[TYPE_AUTH]), aDataModelUserData[USER_INFO], charsmax(aDataModelUserData[USER_INFO]), aDataModelUserData[MODEL_USER_HUMAN], charsmax(aDataModelUserData[MODEL_USER_HUMAN]));
				format(szBuffer, charsmax(szBuffer), "models/player/%s/%s.mdl", aDataModelUserData[MODEL_USER_HUMAN], aDataModelUserData[MODEL_USER_HUMAN]);

				if (file_exists(szBuffer))
					precache_model(szBuffer);

				ArrayPushArray(g_iArray_ModelUserData, aDataModelUserData);
			}

			g_iModelUserData = ArraySize(g_iArray_ModelUserData);
		}
	}
}

public client_disconnected(id)
	flag_unset(g_iBitUserCostumModel, id);

public client_putinserver(id)
{
	g_iPlayerSkin_Human[id] = "";

	for (new iUserModel; iUserModel < g_iModelUserData; iUserModel++)
	{
		new aDataModelUserData[eData_CustomModels]; ArrayGetArray(g_iArray_ModelUserData, iUserModel, aDataModelUserData);

		switch (aDataModelUserData[TYPE_AUTH])
		{
			case 'n':
			{
				new szName[32]; get_user_name(id, szName, charsmax(szName));

				if (equal(aDataModelUserData[USER_INFO], szName))
				{
					flag_set(g_iBitUserCostumModel, id);
					copy(g_iPlayerSkin_Human[id], charsmax(g_iPlayerSkin_Human[]), aDataModelUserData[MODEL_USER_HUMAN]);
					break;
				}
			}

			case 's':
			{
				new szSteamID[25]; get_user_authid(id, szSteamID, charsmax(szSteamID));

				if (equal(aDataModelUserData[USER_INFO], szSteamID))
				{
					flag_set(g_iBitUserCostumModel, id);
					copy(g_iPlayerSkin_Human[id], charsmax(g_iPlayerSkin_Human[]), aDataModelUserData[MODEL_USER_HUMAN]);
					break;
				}
			}

			case 'i':
			{
				new szIP[16]; get_user_ip(id, szIP, charsmax(szIP), 1);

				if (equal(aDataModelUserData[USER_INFO], szIP))
				{
					flag_set(g_iBitUserCostumModel, id);
					copy(g_iPlayerSkin_Human[id], charsmax(g_iPlayerSkin_Human[]), aDataModelUserData[MODEL_USER_HUMAN]);
					break;
				}
			}

			case 'f':
			{
				if (get_user_flags(id) & read_flags(aDataModelUserData[USER_INFO]))
				{
					flag_set(g_iBitUserCostumModel, id);
					copy(g_iPlayerSkin_Human[id], charsmax(g_iPlayerSkin_Human[]), aDataModelUserData[MODEL_USER_HUMAN]);
					break;
				}
			}
		}
	}
}

public fwHamPlayerSpawnPost(id)
{
	if (!is_user_alive(id))
		return;

	if (!is_user_bot(id))
		query_client_cvar(id, "cl_minmodels", "iCvar_FuncResult");

	if (flag_get(g_iBitUserCostumModel, id) && !zp_get_user_zombie(id))
	{
		if (zp_get_user_survivor(id) || zp_get_user_sniper(id))
			return;

		zp_override_user_model(id, g_iPlayerSkin_Human[id]);
	}
}

public iCvar_FuncResult(id, iCvar[], iValue[])
{
	if (equal(iValue, "1"))
		server_cmd("kick #%d ^"%L^"", get_user_userid(id), id, "CVAR_REASON_KICK");
}

public zp_user_humanized_post(id)
{
	if (zp_get_user_survivor(id) || zp_get_user_sniper(id))
		return;

	if (flag_get(g_iBitUserCostumModel, id))
		zp_override_user_model(id, g_iPlayerSkin_Human[id]);
}

Аватар
MaPaXyuA
Извън линия
Потребител
Потребител
Мнения: 162
Регистриран на: 08 Ное 2016, 16:29
Местоположение: Горна Оряховица
Се отблагодари: 5 пъти
Получена благодарност: 18 пъти
Обратна връзка:

Re: Премахване на reapi от плъгин

Мнение от MaPaXyuA » 09 Яну 2023, 08:18

Извинявам се за забавянето..
При компилиране дава грешка.
Прикачени файлове
Untitled.png
Untitled.png (648.18 KiB) Преглеждано 346 пъти
Untitled.png
Untitled.png (648.18 KiB) Преглеждано 346 пъти
Изображение

Аватар
Stilex
Извън линия
Потребител
Потребител
Мнения: 138
Регистриран на: 27 Авг 2021, 23:58
Се отблагодари: 13 пъти
Получена благодарност: 7 пъти
Обратна връзка:

Re: Премахване на reapi от плъгин

Мнение от Stilex » 09 Яну 2023, 13:58

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

#include <amxmodx>
#include <zombieplague>
#include <hamsandwich>

#pragma semicolon 1

native zp_override_user_model(id, const newmodel[], modelindex = 0);

#define flag_get(%1,%2) (%1 & (1 << (%2 & 31)))
#define flag_get_boolean(%1,%2) (flag_get(%1,%2) ? true : false)
#define flag_set(%1,%2) %1 |= (1 << (%2 & 31))
#define flag_unset(%1,%2) %1 &= ~(1 << (%2 & 31))

new Array: g_iArray_ModelUserData, g_iBitUserCostumModel;
new g_iPlayerSkin_Human[33][64], g_iModelUserData;

enum _:eData_CustomModels
{
	TYPE_AUTH[4],
	USER_INFO[64],
	MODEL_USER_HUMAN[64]
};

public plugin_init()
{
	register_plugin("Custom model", "9.0", "OnlineRU");

	register_dictionary("ping_checker.txt");

	RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1);
}

public plugin_precache() {
	new szCfgDir[64], szCfgFile[128]; get_localinfo("amxx_configsdir", szCfgDir, charsmax(szCfgDir));
	formatex(szCfgFile, charsmax(szCfgFile), "%s/custom_models.ini", szCfgDir);

	switch (file_exists(szCfgFile))
	{
		case 0:
			log_to_file("%s/logs/log_error.log", "File ^"%s^" not found!", szCfgDir, szCfgFile);

		case 1:
		{
			new aDataModelUserData[eData_CustomModels], szBuffer[256], iLine, iLen;
			g_iArray_ModelUserData = ArrayCreate(eData_CustomModels);

			while (read_file(szCfgFile, iLine++, szBuffer, charsmax(szBuffer), iLen))
			{
				if (!iLen || szBuffer[0] == ';')
					continue;

				parse(szBuffer, aDataModelUserData[TYPE_AUTH], charsmax(aDataModelUserData[TYPE_AUTH]), aDataModelUserData[USER_INFO], charsmax(aDataModelUserData[USER_INFO]), aDataModelUserData[MODEL_USER_HUMAN], charsmax(aDataModelUserData[MODEL_USER_HUMAN]));
				format(szBuffer, charsmax(szBuffer), "models/player/%s/%s.mdl", aDataModelUserData[MODEL_USER_HUMAN], aDataModelUserData[MODEL_USER_HUMAN]);

				if (file_exists(szBuffer))
					precache_model(szBuffer);

				ArrayPushArray(g_iArray_ModelUserData, aDataModelUserData);
			}

			g_iModelUserData = ArraySize(g_iArray_ModelUserData);
		}
	}
}

public client_disconnected(id)
	flag_unset(g_iBitUserCostumModel, id);

public client_putinserver(id)
{
	g_iPlayerSkin_Human[id] = "";

	for (new iUserModel; iUserModel < g_iModelUserData; iUserModel++)
	{
		new aDataModelUserData[eData_CustomModels]; ArrayGetArray(g_iArray_ModelUserData, iUserModel, aDataModelUserData);

		switch (aDataModelUserData[TYPE_AUTH])
		{
			case 'n':
			{
				new szName[32]; get_user_name(id, szName, charsmax(szName));

				if (equal(aDataModelUserData[USER_INFO], szName))
				{
					flag_set(g_iBitUserCostumModel, id);
					copy(g_iPlayerSkin_Human[id], charsmax(g_iPlayerSkin_Human[]), aDataModelUserData[MODEL_USER_HUMAN]);
					break;
				}
			}

			case 's':
			{
				new szSteamID[25]; get_user_authid(id, szSteamID, charsmax(szSteamID));

				if (equal(aDataModelUserData[USER_INFO], szSteamID))
				{
					flag_set(g_iBitUserCostumModel, id);
					copy(g_iPlayerSkin_Human[id], charsmax(g_iPlayerSkin_Human[]), aDataModelUserData[MODEL_USER_HUMAN]);
					break;
				}
			}

			case 'i':
			{
				new szIP[16]; get_user_ip(id, szIP, charsmax(szIP), 1);

				if (equal(aDataModelUserData[USER_INFO], szIP))
				{
					flag_set(g_iBitUserCostumModel, id);
					copy(g_iPlayerSkin_Human[id], charsmax(g_iPlayerSkin_Human[]), aDataModelUserData[MODEL_USER_HUMAN]);
					break;
				}
			}

			case 'f':
			{
				if (get_user_flags(id) & read_flags(aDataModelUserData[USER_INFO]))
				{
					flag_set(g_iBitUserCostumModel, id);
					copy(g_iPlayerSkin_Human[id], charsmax(g_iPlayerSkin_Human[]), aDataModelUserData[MODEL_USER_HUMAN]);
					break;
				}
			}
		}
	}
}

public fwHamPlayerSpawnPost(id)
{
	if (!is_user_alive(id))
		return;

	if (!is_user_bot(id))
		query_client_cvar(id, "cl_minmodels", "iCvar_FuncResult");

	if (flag_get(g_iBitUserCostumModel, id) && !zp_get_user_zombie(id))
	{
		if (zp_get_user_survivor(id))
			return;

		zp_override_user_model(id, g_iPlayerSkin_Human[id]);
	}
}

public iCvar_FuncResult(id, iCvar[], iValue[])
{
	if (equal(iValue, "1"))
		server_cmd("kick #%d ^"%L^"", get_user_userid(id), id, "CVAR_REASON_KICK");
}

public zp_user_humanized_post(id)
{
	if (zp_get_user_survivor(id))
		return;

	if (flag_get(g_iBitUserCostumModel, id))
		zp_override_user_model(id, g_iPlayerSkin_Human[id]);
}
От телефона го редактирах.

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

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

Кой е на линия

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