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

    Статус
    Оффлайн
    Регистрация
    13.02.2016
    Сообщений
    77
    Репутация:
    0 ±

    Машины по скилам

    Всем привет.
    Вот делаю работу такси и мне нужно, что когда садишься в определенную машину вылазило окно аренды, а если скил мал то выкидывало
    Вот как сделал но диалог ренты не показывается.
    Код:
    new model = GetVehicleModel(vehicleid);
    if(model != 404)
    {
    if(model != 560 && pInfo[playerid][pTaxiSkill] < TAXI_LEVEL_2)
    {
    SendClientMessage(playerid,error,"Ваш уровень не достаточный");
    RemovePlayerFromVehicle(playerid);
    return 1;
    }
    if(model != 400 && pInfo[playerid][pTaxiSkill] < TAXI_LEVEL_3)
    {
    SendClientMessage(playerid,error,"Ваш уровень не достаточный");
    RemovePlayerFromVehicle(playerid);
    return 1;
    }
    if(GetPlayerMoney(playerid) < 200)
    {
    SendClientMessage(playerid,error,"Вам нужно 200$ для аренды");
    RemovePlayerFromVehicle(playerid);
    return 1;
    }
    }
    ShowPlayerDialog(playerid,DIALOG_RENT,0,"Аренда",""W"Вы хотите арендовать,\nчтобы возить на нем пассажиров и зарабатывать деньги?","Да","Нет");

  2. #2
    Аватар для TheMallard
    Пользователь

    Статус
    Оффлайн
    Регистрация
    08.12.2015
    Адрес
    San Fierro
    Сообщений
    217
    Репутация:
    39 ±
    Нужно неравенства заменить на равенства.

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

    Статус
    Оффлайн
    Регистрация
    26.11.2013
    Сообщений
    195
    Репутация:
    21 ±
    PHP код:
    if(model != 404
    Объясни, пожалуйста, к чему эта проверка?

    А вообще, допустим он сидит в машине под номером 560. Сначала ты проверяешь, не является ли машина в которой игрок 404 - ой, - нет, не является => выполняем код.
    Дальше ты проверяешь, не является ли машина в которой игрок 560 - ой, - является => идем к следующей проверке не является ли машина в которой игрок 400 - ой, - нет, не является => выполняем код. И так вариантов при которых покажется диалог нет (так как он не может сидеть одновременно в машине с ID 560 и 400). Два условия противоречат друг другу. Как сказал пользователь выше != замени на ==
    Последний раз редактировалось TimoXa32; 29.12.2017 в 13:57.
    Двойной класс

  4. #4
    Аватар для BodyanZe
    Пользователь

    Статус
    Оффлайн
    Регистрация
    31.01.2017
    Сообщений
    23
    Репутация:
    0 ±
    PHP код:
    new model GetVehicleModel(vehicleid);
    if(
    model != 404)
    {
        if( (
    model == 560 && pInfo[playerid][pTaxiSkill] < TAXI_LEVEL_2) || 
            (
    model == 400 && pInfo[playerid][pTaxiSkill] < TAXI_LEVEL_3) )
        {
            
    SendClientMessage(playerid,error,"Ваш уровень не достаточный");
            
    RemovePlayerFromVehicle(playerid);
            return 
    1;
        }
        if(
    GetPlayerMoney(playerid) < 200)
        {
            
    SendClientMessage(playerid,error,"Вам нужно 200$ для аренды");
            
    RemovePlayerFromVehicle(playerid);
            return 
    1;
        }
    }
    ShowPlayerDialog(playerid,DIALOG_RENT,0,"Аренда",""W"Вы хотите арендовать,\nчтобы возить на нем пассажиров и зарабатывать деньги?","Да","Нет"); 

 

 

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

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

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

Ваши права

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