Как выполнить конфиг по чат-команде?

wayLANder

Где AlmazON?
Сообщения
1,742
Реакции
577
Здравствуйте. Есть тренировочный сервер, суть хотелки такая:
Есть конфиг тренировочный, допустим, ak47.cfg, который лежит в папке csgo/cfg/sourcemod
Нужно сделать так, чтобы этот конфиг загружался по чат-команде !ak (sm_ak)
Как такое воплотить в жизнь?:)
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
Как такое воплотить в жизнь?
Можно даже круче сделать: какие конфиги есть:
в папке csgo/cfg/sourcemod
На те автоматически создаются команды по имена файла:
--> !ak47
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
cfg, который лежит в папке csgo/cfg/sourcemod
Нужно сделать так, чтобы этот конфиг загружался по чат-команде
PHP:
#pragma newdecls required

public void OnPluginStart()
{
    DirectoryListing file = OpenDirectory("cfg/sourcemod/configs");
    if (file)
    {
        char command[13] = "sm_";
        FileType type;
        while (file.GetNext(command[3], sizeof(command), type))
        {
            if (type == FileType_File) RegAdminCmd(command, CommandConfig, ADMFLAG_CONFIG);
        }
        delete file;
    }
    else SetFailState("Папка с конфигами отсутствует!");
}

public Action CommandConfig(int client, int args)
{
    char command[10];
    GetCmdArg(0, command, sizeof(command));
    ServerCommand("exec sourcemod/configs/%s.cfg", command);
    return Plugin_Handled;
}
Если в папке cfg/sourcemod/configs будет лежать конфиг-файл ak.cfg, то для его исполнения нужно прописать: !ak
 

wayLANder

Где AlmazON?
Сообщения
1,742
Реакции
577
@AlmazON, а можно вариант с админ-флагом на смену карты?:) просто я не ко всем конфигам хочу давать доступ)
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
с админ-флагом на смену карты
RegAdminCmd(command, CommandConfig, ADMFLAG_CONFIG);
Выделенное меняешь на ADMFLAG_CHANGEMAP. Оффтоп
 

wayLANder

Где AlmazON?
Сообщения
1,742
Реакции
577
@AlmazON, прошу прощения, неопытность:)
На ошибках учимся, учту :)
 
Сверху Снизу