КАК ПОЛУЧИТЬ ЗНАЧЕНИЕ ИЗ АРГУМЕНТА КОМАНДЫ
Fasendas :: ИГРОСТРОЙ :: Сервера Left 4 Dead 1/2 :: Особенности программирования скриптов (краткий справочник)
Страница 1 из 1
КАК ПОЛУЧИТЬ ЗНАЧЕНИЕ ИЗ АРГУМЕНТА КОМАНДЫ
На примере команды переименовывания (Формат команды "!arename НовыйНик"):
RegAdminCmd("sm_arename", Command_Arename, ADMFLAG_ROOT, "sm_arename - Rename player"); // Команда админа с флагом "Z"
или
RegConsoleCmd("sm_arename", Command_Arename, "sm_arename - Rename player");
// Простая пользовательская команда
.
.
.
.
public Action:Command_Arename(Client, args)
{
if(args > 1) \\ Проверяем наличие аргумента после команды
{
PrintToChat(client, "[RName] Правильный формат команды: !arename НовыйНик "); \\ Если ник не указан сообщаем как надо правильно прописывать команду
return Plugin_Handle; \\ выходим из функции!
}
new String:NewName[MAX_NAME_LENGTH]; // Создаем строковую переменную "NewName"
GetCmdArgString(NewName, sizeof(NewName)); // Получаем новое имя игрока из аргумента
GetClientName(Client, oldname, sizeof(oldname)); // Получаем текущий ник игрока
// Далее обрабатываем клиента используя новый ник из переменной "NewName"
SetClientInfo(Client, "name", NewName); // Переходим к самому переименовыванию
PrintToChatAll("\x04[RName] \x03Игрок \x04%s\x03 сменил ник на \x04%s",oldname, NewName); // Общее оповещение об переименовывании игрока
}
Данный способ подходит если мы хотим передать только 1 параметр!
RegAdminCmd("sm_arename", Command_Arename, ADMFLAG_ROOT, "sm_arename - Rename player"); // Команда админа с флагом "Z"
или
RegConsoleCmd("sm_arename", Command_Arename, "sm_arename - Rename player");
// Простая пользовательская команда
.
.
.
.
public Action:Command_Arename(Client, args)
{
if(args > 1) \\ Проверяем наличие аргумента после команды
{
PrintToChat(client, "[RName] Правильный формат команды: !arename НовыйНик "); \\ Если ник не указан сообщаем как надо правильно прописывать команду
return Plugin_Handle; \\ выходим из функции!
}
new String:NewName[MAX_NAME_LENGTH]; // Создаем строковую переменную "NewName"
GetCmdArgString(NewName, sizeof(NewName)); // Получаем новое имя игрока из аргумента
GetClientName(Client, oldname, sizeof(oldname)); // Получаем текущий ник игрока
// Далее обрабатываем клиента используя новый ник из переменной "NewName"
SetClientInfo(Client, "name", NewName); // Переходим к самому переименовыванию
PrintToChatAll("\x04[RName] \x03Игрок \x04%s\x03 сменил ник на \x04%s",oldname, NewName); // Общее оповещение об переименовывании игрока
}
Данный способ подходит если мы хотим передать только 1 параметр!
Fasendas :: ИГРОСТРОЙ :: Сервера Left 4 Dead 1/2 :: Особенности программирования скриптов (краткий справочник)
Страница 1 из 1
Права доступа к этому форуму:
Вы не можете отвечать на сообщения
|
|
Пт Май 08, 2020 6:18 pm автор Gedifilyte
» Создание точки появления противников (Устаревшее)
Сб Дек 14, 2019 2:34 am автор Gedifilyte
» Создание инвентаря (устаревшее)
Пт Апр 13, 2018 7:43 pm автор Eris
» Программное создание Mesh
Пн Фев 05, 2018 12:05 am автор Eris
» Помогите !!! (вопросы, советы, обсуждения)
Вт Июн 06, 2017 11:39 am автор Zhuravlev Yuri
» Редакторы карт и ресурсов
Ср Май 24, 2017 10:23 pm автор Чумной Доктор
» Создание "Игрового типа" (GameType)
Ср Апр 05, 2017 2:19 am автор Filat
» Экспорт из 3ds Max
Сб Мар 11, 2017 12:22 pm автор Uggo
» Создание "Выбор персонажа"
Сб Фев 25, 2017 11:32 am автор Filat