Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 3 из 3
  1. #1
    Аватар для 1lyad
    Пользователь

    Статус
    Оффлайн
    Регистрация
    10.09.2016
    Сообщений
    20
    Репутация:
    1 ±

    Необязательные параметры в sscanf.

    Собственно, вопрос в названии топика. Поясню на простом примере:
    PHP код:
    CMD:cmd(playeridparams[])
    {
        if(
    sscanf(params"iI(opt_number1)I(opt_number2)"params[0], params[1], params[2])) 
            return 
    SendClientMessage(playerid, -1msg[]);
        return 
    true;

    Например, мне нужно, чтобы переменные params[1] и params[2] были необязательными, как показано выше, устанавливается любое значение opt_number1 и opt_number2, НО, если мы вводим два первых значения и пропускаем третье, то есть params[2], то params[1] устанавливается значение opt_number1, вместо введенной игроком. Есть ли какие-либо способы это исправить?

  2. #2
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от 1lyad Посмотреть сообщение
    то params[1] устанавливается значение opt_number1, вместо введенной игроком. Есть ли какие-либо способы это исправить?
    Это не есть норма для sscanf. Точнее, бага такого там вообще нет (как минимум, в последней версии). Показывайте конкретный код, в котором появляется проблема, и скажите версию sscanf, которая у вас установлена.
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  3. Пользователь сказал cпасибо:
    1lyad (13.09.2016)
  4. #3
    Аватар для 1lyad
    Пользователь

    Статус
    Оффлайн
    Регистрация
    10.09.2016
    Сообщений
    20
    Репутация:
    1 ±
    Прошу прощения, что ввёл в заблуждение, всю ночь не спал, голова не работает уже.
    "Баг" был не со стороны плагина от Y_Less, надо было проверить с помощью printf, перед тем как создавать тему, как уже выше написал, голова не работает.
    Ошибка заключалась в следующем:
    PHP код:

    stock n_AddStaticVehicleEx
    (modelIDFloatspawn_XFloatspawn_YFloatspawn_ZFloatz_Anglecolor1color2respawn_Delayaddsiren=0)
    {
        if(
    color1 || color2 0)
        {
            
    color1 random(256);
            
    color2 random(256);
        }
        
    modelID AddStaticVehicleEx(modelIDspawn_Xspawn_Yspawn_Zz_Anglecolor1color2respawn_Delayaddsiren);
        
        new
            
    colorStr[24]
        ;    
        
    format(colorStrsizeof(colorStr), "%d-%d"color1color2);
        
    setproperty(_""PROPERTY_OFFSET(modelID), colorStr);
        
        return 
    modelID;

    Так как color2 был равен -1, собсна, и color1 устанавливалось значение рандомное. Можете закрыть тему.

 

 

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

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

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

Ваши права

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