Команда проверки онлайн админов

Активный
Статус
Сообщения
516
Лайки
32

8

месяц на сайте

Идея и назначение

Идея в том, чтобы у игроков была простая команда для просмотра списка админов, которые сейчас находятся в игре.

Это полезно для обращения за помощью, жалобами или вопросами по серверу.

Команда выводит ник и уровень админа.


Суть реализации

1. Храним уровень админа в массиве для каждого игрока.

2. В команде перебираем всех подключенных игроков.

3. Если у игрока уровень админа больше нуля, показываем его в списке.


Реализация

Код:
new AdminLevel[MAX_PLAYERS];


CMD:admins(playerid)
{
    new found;
    SendClientMessage(playerid, -1, "Онлайн админы:");

    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        if(!IsPlayerConnected(i)) continue;
        if(AdminLevel[i] <= 0) continue;

        new name[MAX_PLAYER_NAME], str[64];
        GetPlayerName(i, name, sizeof name);

        format(str, sizeof str, "%s [LVL: %d]", name, AdminLevel[i]);
        SendClientMessage(playerid, 0x00FF00FF, str);

        found = 1;
    }

    if(!found) SendClientMessage(playerid, -1, "Админов нет в сети.");

    return 1;
}


Дополнительные идеи

1. Сортировать список по уровню админа.

2. Выводить общий онлайн админов сверху.

3. Добавить фильтр по флагам, если админские права делятся на роли.
 

1 человек читают эту тему (Всего: 1, Пользователей: 0, Гостей: 1)

Сверху