Команды для убийства самого себя

Yura7181

Участник
Сообщения
678
Реакции
594
Всем привет.

Заметил на сервере некоторых странных игроков убивающих себя неизвестными командами.

Сервер имеет некоторые заблокированные для использования команды:

kill

joinclass

jointeam

spectate


Может быть существуют другие команды в csgo о которых я не знаю?
 

Yura7181

Участник
Сообщения
678
Реакции
594
Всем спасибо.
Добавил.
Если кто-то знает ещё команды пишите пожалуйста.
Каким то древним плагином блокирую, даже название не помню:

PHP:
#include <sourcemod>
#include <csgo_colors>

public OnPluginStart()
{
    AddCommandListener(BlockKill, "kill");
    AddCommandListener(BlockKill, "joinclass");
    AddCommandListener(BlockKill, "jointeam");
    AddCommandListener(BlockKill, "spectate");
    AddCommandListener(BlockKill, "killvector");
    AddCommandListener(BlockKill, "explode");
    AddCommandListener(BlockKill, "explodevector");
}

public Action:BlockKill(client, const String:command[], argc)
{
    if (client && IsClientInGame(client) && IsPlayerAlive(client))
    {
        CGOPrintToChat(client, "\x04[Console Blocker] \x02 НЕКОТОРЫЕ КОНСОЛЬНЫЕ КОМАНДЫ ЗАБЛОКИРОВАНЫ РАДИ ВАШЕЙ БЕЗОПАСНОСТИ.");
        return Plugin_Handled;
    }return Plugin_Continue;
}
 
Последнее редактирование:

Drumanid

Нестандартное звание
Сообщения
1,862
Реакции
1,748
@Yura7181,

Блокирует команду как в чате, так и в консоле.
PHP:
#define CL(%0) view_as<CommandListener>(BlockCommand), %0
ArrayList g_hArray;

public void OnMapStart()
{
    char sBuffer[64];
    if(g_hArray != null)
    {
        int iSize;
        if((iSize = g_hArray.Length) > 0)
        {
            for(int i; i < iSize; i++)
            {
                g_hArray.GetString(i, sBuffer, sizeof(sBuffer));
                RemoveCommandListener(CL(sBuffer));
            }

            g_hArray.Clear();
        }
    }
    else g_hArray = new ArrayList(ByteCountToCells(sizeof(sBuffer)));

    File hFile; BuildPath(Path_SM, sBuffer, sizeof(sBuffer), "configs/block_commands.ini");
    if((hFile = OpenFile(sBuffer, "r")) == null) SetFailState("No found file: %s", sBuffer);

    while(hFile.ReadLine(sBuffer, sizeof(sBuffer)))
    {
        TrimString(sBuffer);
        if(sBuffer[0] && StrContains(sBuffer, "//") == -1)
        {
            AddCommandListener(CL(sBuffer));
            g_hArray.PushString(sBuffer);
        }
    }

    delete hFile;
}

Action BlockCommand(int iClient)
{
    if(CheckClient(iClient, NULL_STRING, false)) return Plugin_Handled;
    return Plugin_Continue;
}

public Action OnClientSayCommand(int iClient, const char[] sCommand, const char[] sArgs)
{
    if(CheckClient(iClient, sArgs, true)) return Plugin_Handled;
    return Plugin_Continue;
}

bool CheckClient(int iClient, const char[] sMessage, bool bChat)
{
    if(iClient > 0/* && IsPlayerAlive(iClient)*/ && sMessage[0] == 0 || g_hArray.FindString(sMessage) != -1)
    {
        if(bChat) PrintToChat(iClient, "Данная команда была запрещена на сервере!");
        else PrintToConsole(iClient, "Данная команда была запрещена на сервере!");

        return true;
    }

    return false;
}

Как же задолбал форум исправлять код... Символы пляшут.
 

Вложения

  • block_commands.ini
    71 байт · Просмотры: 24
Сверху Снизу