Перейти к содержанию

ryancoolround

Рекомендуемые сообщения

  • Администратор
Опубликовано

По идее этот скрипт должен запретить кикать ботов через Callvote. Но либо он не работает, либо я дурак и не знаю как его можно проверить. Но вдруг кому пригодится на заметку.

#include <sourcemod>

#pragma semicolon 1
#pragma newdecls required

public Plugin myinfo =
{
    name = "Kick Immunity to Bots",
    author = "L4D2Noob.RU",
    description = "Этот плагин должен предотвращать кик ботов в игре",
    version = "0.3",
    url = "http://L4D2Noob.RU"
};

public void OnPluginStart()
{
	AddCommandListener(cmdCallVote, "callvote");
}

public Action cmdCallVote(int client, const char[] command, int argc)
{
	if (!(0 < client <= MaxClients && IsClientInGame(client)))
	{
		return Plugin_Continue;
	}
	
	char sType[32];
	GetCmdArg(1, sType, sizeof sType);
	if (StrEqual(sType, "kick", false))
	{
		char sTarget[32];
		GetCmdArg(2, sTarget, sizeof sTarget);
		int iTarget = GetClientOfUserId(StringToInt(sTarget));
		if (IsFakeClient(iTarget))
		{
			return Plugin_Handled;
		}
	}
	
	return Plugin_Continue;
} 

 

«Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон

  • 4 месяца спустя...
  • Ответов 2
  • Создана
  • Последний ответ
Опубликовано

У меня на моем сервере не работало. Но если у тебя работает, я рад!

  • 2 года спустя...
  • Администратор
Опубликовано

Гость, спасибо за информацию. Посмотрим, что можно улучшить в этом скрипте. Возможно, проблема в определенных условиях или настройках сервера. Давай внимательно изучим код и возможные моменты, которые могли бы повлиять на его работу.

Прежде всего, убедимся, что скрипт активен и корректно загружается. Добавим отладочные сообщения, чтобы следить за ходом выполнения кода. Возможно, мы сможем выявить, в каком месте возникает проблема.

public void OnPluginStart()
{
    AddCommandListener(cmdCallVote, "callvote");
    PrintToServer("Плагин Kick Immunity to Bots успешно загружен.");
}

Добавим этот код в начало OnPluginStart, чтобы убедиться, что плагин загружается. После этого тщательно следим за консолью сервера после перезапуска.

Также, проверим, что команда callvote вызывается корректно. Мы можем добавить еще одно отладочное сообщение в начале cmdCallVote:

public Action cmdCallVote(int client, const char[] command, int argc)
{
    PrintToServer("Команда callvote вызвана.");
    // остальной код...
}

Следим за консолью, чтобы убедиться, что команда действительно вызывается.

Давай проведем этот анализ, и я дам тебе конкретные рекомендации для улучшения работы скрипта.

«Успех – это приятно, но он не должен быть единственной причиной, по которой вы – музыкант». - Честер Беннингтон

Заархивировано

Эта тема находится в архиве и закрыта для дальнейших ответов.



×
×
  • Создать...

Важная информация

Мы используем cookie для обеспечения работы сайта и улучшения пользовательского опыта. Продолжая использовать сайт, вы соглашаетесь на их использование. Подробнее: Условия использования, Политика конфиденциальности, Правила. Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.