Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.

Реклама


**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 200руб/мес, Текстовая 100руб/мес.
Показано с 1 по 4 из 4
  1. #1
    Аватар для Иван Бубнов
    Пользователь

    Статус
    Оффлайн
    Регистрация
    22.12.2015
    Сообщений
    162
    Репутация:
    8 ±

    DC_CMD | CMD::название(playerid, params[])

    Всем привет.

    Хотел сделать команду "Получить описание команд", по задумке, при вводе команды, PVAR "plGet" ставится 1, и во всех остальных команд, ставится проверка: if(GetPVarInt(playerid, "plGet") == 1) return SendClientMessage(playerid, -1, "Описание"); Но не тут то было, когда ввожу команду в диалоговое окно, и вызываю его через cmd::inputtext(playerid, params[]) команда не вызывается!

    Попробовал 2 оных варианта, все безуспешно.
    PHP код:
    1 вар.
    OnPlayerCommandReceived(playeridinputtext);
    2 вар.
    OnPlayerCommandReceived(playerid"/"#inputtext""); 
    Кто знает как можно исправить?

  2. #2
    Аватар для ziggi
    Проверенный

    Статус
    Оффлайн
    Регистрация
    14.05.2015
    Сообщений
    1,037
    Репутация:
    705 ±
    PHP код:
    new string[32];
    format(stringsizeof(string), "cmd_%s"inputtext);
    CallLocalFunction(string"i"playerid); 
    Но такой код ОЧЕНЬ не безопасен. Да и вообще, использовать команды в качестве функций не красиво.
    Последний раз редактировалось ziggi; 05.02.2016 в 01:48.

  3. #3
    Аватар для DmX
    Пользователь

    Статус
    Оффлайн
    Регистрация
    22.04.2013
    Адрес
    Краснодар
    Сообщений
    292
    Репутация:
    23 ±
    Код скинь полностью команды.

  4. #4
    Аватар для Иван Бубнов
    Пользователь

    Статус
    Оффлайн
    Регистрация
    22.12.2015
    Сообщений
    162
    Репутация:
    8 ±
    Цитата Сообщение от DmX Посмотреть сообщение
    Код скинь полностью команды.
    Эмм

    PHP код:
    if(dialogid == DLG_CMDHELP)
    {
        if(!
    response) return SetPVarInt(playerid"getCmd"0);
        
    OnPlayerCommandText(playeridinputtext);
        
    ShowPlayerDialog(playeridDLG_CMDHELPDIALOG_STYLE_INPUT"Получить описание""Введите команду""Ввод""Отмена");
        
    SetPVarInt(playerid"getCmd"1);
        return 
    1;
    }

    И в любой команде:
    if(
    GetPVarInt(playerid"getCmd") == 1
        return 
    SendClientMessage(playerid, -1"Описание"); 
    - - - Добавлено - - -

    Цитата Сообщение от ziggi Посмотреть сообщение
    PHP код:
    new string[32];
    format(stringsizeof(string), "cmd_%s"inputtext);
    CallLocalFunction(string"i"playerid); 
    Но такой код ОЧЕНЬ не безопасен. Да и вообще, использовать команды в качестве функций не красиво.
    Чем это вредит серверу?

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •