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

Реклама


**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 200руб/мес, Текстовая 100руб/мес.
Показано с 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
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    Цитата Сообщение от 1lyad Посмотреть сообщение
    то params[1] устанавливается значение opt_number1, вместо введенной игроком. Есть ли какие-либо способы это исправить?
    Это не есть норма для sscanf. Точнее, бага такого там вообще нет (как минимум, в последней версии). Показывайте конкретный код, в котором появляется проблема, и скажите версию sscanf, которая у вас установлена.
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 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)

Ваши права

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