Jam999
Нуль
- Регистрация
- 16 Янв 2019
- Сообщения
- 4
- Лучшие ответы
- 0
- Репутация
- 1
Всем привет! Сегодня я сделаю команду /o (/ooc), это будет отправление сообщение всему серверу.
Приступим.
Действие №1: Создание команды
CMD: - Функция создания команды
o - Сама команда (при вводе ее, эта команда активируется)
playerid - ID Персонажа
params[] - Параметры (Он для проверки на правильный ввод команды)
Действие №2: Делаем проверку на админку
if(PI[playerid][pAdmin] - Своя проверка
< 1 - Это если у игрока уровень админки меньше 1. (Т.е это команда доступна от 1-го уровня)
если у него нету админки, то выводим ему сообщение.
Действие №3: Используем sscanf для проверки на то, верно ли игрок ввел команду.
Параметр "s[128]" - Это текстовое значение, длина которого не может превышать 128-ми символов
Параметр "s[128]" записывается в params[0]
Если игрок не ввел параметры, то ему выводится текст.
Действие №4: Выводим текст всем игрокам
neew string[256] - Создание переменной.
format(string, sizeof(string), - Форматируем строку
%s - Ник персонажа (Используется: PI[playerid][pName] (Заменить на свою проверку)
%d - ID игрока (Используется: playerid)
%s - Выводимый текст (Используется: params[0]);
SendClientMessageToAll(0xFF0000FF, string) - Выводим текст всем игрокам
0xFF0000FF - Красный цвет
string - Переменная.
Действие №5: Делаем так, что бы при вводе /ooc - тоже использовалась команда /o
Вот и все, команда создана. Надеюсь я помог кому-нибудь. Всем удачи!
Приступим.
Действие №1: Создание команды
PHP:
CMD:o(playerid, params[])
{
return true;
}
o - Сама команда (при вводе ее, эта команда активируется)
playerid - ID Персонажа
params[] - Параметры (Он для проверки на правильный ввод команды)
Действие №2: Делаем проверку на админку
PHP:
CMD:o(playerid, params[])
{
if(PI[playerid][pAdmin] < 1) return SendClientMessage(playerid, -1, "Ошибка! Вы не администратор."); // Здесь своя проверка
return true;
}
< 1 - Это если у игрока уровень админки меньше 1. (Т.е это команда доступна от 1-го уровня)
если у него нету админки, то выводим ему сообщение.
Действие №3: Используем sscanf для проверки на то, верно ли игрок ввел команду.
PHP:
CMD:o(playerid, params[])
{
if(PI[playerid][pAdmin] < 1) return SendClientMessage(playerid, -1, "Ошибка! Вы не администратор."); // Здесь своя проверка
if(sscanf(params, "s[128]", params[0])) return SendClientMessage(playerid, -1, "Ошибка! Используйте: /o(oc) [Текст]");
return true;
}
Параметр "s[128]" записывается в params[0]
Если игрок не ввел параметры, то ему выводится текст.
Действие №4: Выводим текст всем игрокам
PHP:
CMD:o(playerid, params[])
{
if(PI[playerid][pAdmin] < 1) return SendClientMessage(playerid, -1, "Ошибка! Вы не администратор."); // Здесь своя проверка
if(sscanf(params, "s[128]", params[0])) return SendClientMessage(playerid, -1, "Ошибка! Используйте: /o(oc) [Текст]");
new string[256];
format(string, sizeof(string), "[OOC] %s[%d]: {FFFFFF}%s", PI[playerid][pName], playerid, params[0]);
SendClientMessageToAll(0xFF0000FF, string);
return true;
}
format(string, sizeof(string), - Форматируем строку
%s - Ник персонажа (Используется: PI[playerid][pName] (Заменить на свою проверку)
%d - ID игрока (Используется: playerid)
%s - Выводимый текст (Используется: params[0]);
SendClientMessageToAll(0xFF0000FF, string) - Выводим текст всем игрокам
0xFF0000FF - Красный цвет
string - Переменная.
Действие №5: Делаем так, что бы при вводе /ooc - тоже использовалась команда /o
PHP:
CMD:o(playerid, params[])
{
if(PI[playerid][pAdmin] < 1) return SendClientMessage(playerid, -1, "Ошибка! Вы не администратор."); // Здесь своя проверка
if(sscanf(params, "s[128]", params[0])) return SendClientMessage(playerid, -1, "Ошибка! Используйте: /o(oc) [Текст]");
new string[256];
format(string, sizeof(string), "[OOC] %s[%d]: {FFFFFF}%s", PI[playerid][pName], playerid, params[0]);
SendClientMessageToAll(0xFF0000FF, string);
return true;
}
alias:o("ooc");