Рекомендованные сообщения



Не найдено.

17 posts in this topic

Здравствуйте, форумчане.

 

Помогите пожалуйста исправить баг, когда я покупаю автомобиль, и сажусь в него, нажимаю на CTRL, машина заводиться, и появляется нитро, хоть машина была куплена только что, так же и с фракционными, помогите пожалуйста. Мод Union RP

Share this post


Link to post
Share on other sites

@Hakson ищи в моде AddVehicleComponent. Эта функция и отвечает за добавление к авто нитро и прочего тюнинга. 

Share this post


Link to post
Share on other sites

@DEST

Спойлер

 if(TunInfo[carid][nSpoiler] != 0) AddVehicleComponent(vehid,TunInfo[carid][nSpoiler]);
 if(TunInfo[carid][nHood] != 0) AddVehicleComponent(vehid,TunInfo[carid][nHood]);
 if(TunInfo[carid][nSideskirt] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nSideskirt]);
 if(TunInfo[carid][nNitro] != 0) AddVehicleComponent(vehid,TunInfo[carid][nNitro]);
 if(TunInfo[carid][nLamps] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nLamps]);
 if(TunInfo[carid][nExhaust] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nExhaust]);
 if(TunInfo[carid][nWheels] != 0 )AddVehicleComponent(vehid,TunInfo[carid][nWheels]);
 if(TunInfo[carid][nRoof] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nRoof]);
 if(TunInfo[carid][nStereo] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nStereo]);
 if(TunInfo[carid][nHydraulics] != 0 )AddVehicleComponent(vehid,TunInfo[carid][nHydraulics]);
 if(TunInfo[carid][nBullbar] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nBullbar]);
 if(TunInfo[carid][nRearBullbars] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nRearBullbars]);
 if(TunInfo[carid][nFrontSign] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nFrontSign]);
 if(TunInfo[carid][nFrontBullbars] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nFrontBullbars]);
 if(TunInfo[carid][nFrontBumper] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nFrontBumper]);
 if(TunInfo[carid][nRearBumper] != 0) AddVehicleComponent(vehid,TunInfo[carid][nRearBumper]);
 if(TunInfo[carid][nVents] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nVents]);
 if(TunInfo[carid][nPaintJob] != -1) ChangeVehiclePaintjob(vehid,TunInfo[carid][nPaintJob]);
 for(new i; i<14; i++) ModVehicle(vehid, GetVehicleComponentInSlot(vehid,i));

Что именно тут надо исправить?

Edited by Hakson

Share this post


Link to post
Share on other sites

@Hakson где это используется? 

Share this post


Link to post
Share on other sites

@DEST Не понял вопроса

 

Share this post


Link to post
Share on other sites

@Hakson в каком паблике / функции вызывается / находится? 

Share this post


Link to post
Share on other sites

@DEST 

Спойлер

void ModCar(vehid)
{
 new carid = GetTunID(vehid);
 if(GetVehicleModel( vehid ) != TunInfo[ carid ][ nModel ])
 {
  TunInfo[ carid ][ nSpoiler ] = 0;
  TunInfo[ carid ][ nHood ] = 0;
  TunInfo[ carid ][ nNitro ] = 0;
  TunInfo[ carid ][ nLamps ] = 0;
  TunInfo[ carid ][ nExhaust ] = 0;
  TunInfo[ carid ][ nWheels ] = 0;
  TunInfo[ carid ][ nRoof ] = 0;
  TunInfo[ carid ][ nStereo ] = 0;
  TunInfo[ carid ][ nHydraulics ] = 0;
  TunInfo[ carid ][ nBullbar ] = 0;
  TunInfo[ carid ][ nRearBullbars ] = 0;
  TunInfo[ carid ][ nFrontSign ] = 0;
  TunInfo[ carid ][ nFrontBullbars ] = 0;
  TunInfo[ carid ][ nFrontBumper ] = 0;
  TunInfo[ carid ][ nRearBumper ] = 0;
  TunInfo[ carid ][ nVents] = 0;
  TunInfo[ carid ][ nModel ] = GetVehicleModel( vehid );
  ResetTuning(vehid);
  return true;
 }
 if(TunInfo[carid][nSpoiler] != 0) AddVehicleComponent(vehid,TunInfo[carid][nSpoiler]);
 if(TunInfo[carid][nHood] != 0) AddVehicleComponent(vehid,TunInfo[carid][nHood]);
 if(TunInfo[carid][nSideskirt] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nSideskirt]);
 if(TunInfo[carid][nNitro] != 0) AddVehicleComponent(vehid,TunInfo[carid][nNitro]);
 if(TunInfo[carid][nLamps] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nLamps]);
 if(TunInfo[carid][nExhaust] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nExhaust]);
 if(TunInfo[carid][nWheels] != 0 )AddVehicleComponent(vehid,TunInfo[carid][nWheels]);
 if(TunInfo[carid][nRoof] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nRoof]);
 if(TunInfo[carid][nStereo] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nStereo]);
 if(TunInfo[carid][nHydraulics] != 0 )AddVehicleComponent(vehid,TunInfo[carid][nHydraulics]);
 if(TunInfo[carid][nBullbar] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nBullbar]);
 if(TunInfo[carid][nRearBullbars] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nRearBullbars]);
 if(TunInfo[carid][nFrontSign] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nFrontSign]);
 if(TunInfo[carid][nFrontBullbars] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nFrontBullbars]);
 if(TunInfo[carid][nFrontBumper] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nFrontBumper]);
 if(TunInfo[carid][nRearBumper] != 0) AddVehicleComponent(vehid,TunInfo[carid][nRearBumper]);
 if(TunInfo[carid][nVents] != 0 ) AddVehicleComponent(vehid,TunInfo[carid][nVents]);
 if(TunInfo[carid][nPaintJob] != -1) ChangeVehiclePaintjob(vehid,TunInfo[carid][nPaintJob]);
 for(new i; i<14; i++) ModVehicle(vehid, GetVehicleComponentInSlot(vehid,i));
 return true;
}

 

Share this post


Link to post
Share on other sites

@Hakson где вызывается ModCar? 

Share this post


Link to post
Share on other sites

@DEST  if(IsAOwnableCar(vehicleid)) [Если это то]

Edited by Hakson

Share this post


Link to post
Share on other sites

@Hakson кинь код покупки транспорта

Share this post


Link to post
Share on other sites

@DEST

Спойлер

  //aml(50, playerid, PN(offer), "покупка авто", CarPrice[playerid]);
     SetCarOwner(carid,Name(playerid));
     SetCarKeyer(carid,Name(playerid));
     PlayerPlaySound(playerid, 30800, 0.0, 0.0, 0.0);
     GetNumberCars(playerid,PlayerInfo[playerid][pCars]);
     GetNumberCars(offer,PlayerInfo[playerid][pCars]);
     SendClientMessage(playerid,-1,"Поздравляем с преобретением транспортного средства.");
     SendClientMessage(offer,-1,"Поздравляем с продажей транспортного средства.");
     J_RemovePlayerFromVehicle(offer);
     CarPrice[playerid] = 0;
     CarOffer[offer] = INVALID_PLAYER_ID;
     CarOffer[playerid] = INVALID_PLAYER_ID;
     SaveOwnableCar(number);
     CarInfo[number][cShtrafer] = 0;

 

Edited by Hakson

Share this post


Link to post
Share on other sites

@Hakson это полный код? 

Share this post


Link to post
Share on other sites

@DEST а вы можете скачать мод, и посмотреть, просто я не понимаю, где там начинается код 

 

посмотрел сейчас все заново, все равно не понял где начинается 

 

Edited by Hakson

Share this post


Link to post
Share on other sites

@Hakson просто кинь больше строк и все

Share this post


Link to post
Share on other sites

@DEST 

Спойлер
 if(response)
   {
    if(BuyCar[playerid] < 0) return true;
    new carid = -2;
    if(OlVirtualWorld[playerid] == 0)
    {
     if(BuyCar[playerid] > sizeof(EkonomVehicles)) return ToCheat(1, playerid, 55);
     carid = GetCarIdByModel(EkonomVehicles[BuyCar[playerid]]);
    }
    if(OlVirtualWorld[playerid] == 1)
    {
     if(BuyCar[playerid] > sizeof(MiddleVehicles)) return ToCheat(1, playerid, 55);
     carid = GetCarIdByModel(MiddleVehicles[BuyCar[playerid]]);
    }
    if(OlVirtualWorld[playerid] == 2)
    {
     if(BuyCar[playerid] > sizeof(EliteVehicles)) return ToCheat(1, playerid, 55);
     carid = GetCarIdByModel(EliteVehicles[BuyCar[playerid]]);
    }
    if(carid == -1) return SendClientMessage(playerid,-1,"Похоже, что последний транспорт этой модели только что купили!");
    if(carid == -2) return ToCheat(1, playerid, 60);
    if(IsASellCar(carid))
    {
     if(IsValidPassport(playerid))
     {
      new number = GetVehicleID(carid);
      if(GetMoney(playerid) >= CarInfo[number][cCost])
      {
       if(IsValidNumberCars(playerid))
       {
        J_RemovePlayerFromVehicle(playerid);
        if(VehicleToBuy[playerid] != INVALID_VEHICLE_ID) {DestroyVehicle(VehicleToBuy[playerid]);}
        VehicleToBuy[playerid] = INVALID_VEHICLE_ID;
        J_SetPlayerPos(playerid,534.5024,-1303.1180,3038.4648);
        SetPlayerFacingAngle(playerid,348.7073);
        SetCameraBehindPlayer(playerid);
        TogglePlayerControllable(playerid, 1);
        Fix_SetPlayerVirtualWorld(playerid,OlVirtualWorld[playerid]);
        BuyCar[playerid] = -1;
        for(new i;i<sizeof(Skinfon);i++)
        {
         TextDrawHideForPlayer(playerid,Skinfon);
        }
        TextDrawHideForPlayer(playerid,ButtonLeft);
        TextDrawHideForPlayer(playerid,ButtonRight);
        TextDrawHideForPlayer(playerid,ButtonCancel);
        TextDrawHideForPlayer(playerid,SelectSkin);
        PlayerTextDrawHide(playerid,InfoText[playerid]);
        CancelSelectTextDraw(playerid);
        SetCarOwner(carid, Name(playerid));
        SetCarKeyer(carid, Name(playerid));
        PlayerPlaySound(playerid, 30800, 0.0, 0.0, 0.0);
        SendClientMessage(playerid,-1,"Поздравляем! Ваш транспорт ждет вас на парковке!");
        SendClientMessage(playerid,-1,"Чтобы вставить/вытащить ключи в зажигание введите "COLOR_PROJECT_EX"/key");
        SendClientMessage(playerid,-1,"Для управления своим транспортом используйте "COLOR_PROJECT_EX"/cars");
        GetNumberCars(playerid, PlayerInfo[playerid][pCars]);
        GiveMoney(playerid, -CarInfo[number][cCost],"BuyCar");
        //aml(52, playerid, "", "покупки авто", CarInfo[number][cCost]);
        format(string,sizeof(string),"[A] %s[%d] Купил авто по госу за %d$!",PN(playerid),playerid,CarInfo[number][cCost]);
        SendAdminsMessage(COLOR_GREEN,string);

        CarInfo[number][cShtrafer] = 0;
        // SetString(CarInfo[number][cNumber],"SA");
        // ReSetCarPrice(number);
        CarInfo[number][cLock] = 0;
        CarInfo[number][cShtraf] = 0;
        CarInfo[number][cKeyIN] = 0;
        CarInfo[number][cAlarmON] = 0;
        CarInfo[number][cMilage] = 0;
        if(OlVirtualWorld[playerid] == 0){SetVehicleToEkonomParking(carid,number);}
        else if(OlVirtualWorld[playerid] == 1){SetVehicleToSrednieParking(carid,number);}
        else if(OlVirtualWorld[playerid] == 2){SetVehicleToEliteParking(carid,number);}
        DelTunCar(carid);
        ResetTuningC(carid);
OlVirtualWorld[playerid] = -1;
        SaveOwnableCar(number);
        // SetTimerEx("RespawnVehicleOwn", 3000, 0, "d", carid);
        // UpdateCarInfo(carid);
       }
       else
       {
        SendClientMessage(playerid,-1,"Ваш уровень VIP недостаточно высок чтобы иметь столько авто!");
        //J_RemovePlayerFromVehicle(playerid);
       }
      }
      else
      {
       PlayerPlaySound(playerid, 30802, 0.0, 0.0, 0.0);
       SendClientMessage(playerid,-1,"У вас недостаточно денег. Вы можете пополнить свой баланс [/donate]");
       // J_RemovePlayerFromVehicle(playerid);
      }
     }
     else
     {
      PlayerPlaySound(playerid, 30802, 0.0, 0.0, 0.0);
      SendClientMessage(playerid,COLOR_GREY, "Срок действия вашего паспорта подошел к концу для покупки этого транспорта, получить его можно в мэрии.");
      // J_RemovePlayerFromVehicle(playerid);
     }
    }
    else
    {
     PlayerPlaySound(playerid, 30802, 0.0, 0.0, 0.0);
     SendClientMessage(playerid,COLOR_GREY, "Этот транспорт не для продажи.");
     // J_RemovePlayerFromVehicle(playerid);
    }
   }
   return true;
  }
 case 12:
  {
   if(response)
   {
    new offer = CarOffer[playerid];
    if(CarOffer[offer] != playerid) return SendClientMessage(playerid,COLOR_GREY, "Ошибка.");
    if(!IsPlayerInHisVehicle(offer)) return SendClientMessage(playerid,COLOR_GREY, "Продавец должен находится в личном транспорте.");
    if(!IsValidPassport(playerid)) return SendClientMessage(playerid,COLOR_GREY, "Срок действия вашего паспорта подошел к концу для покупки этого транспорта, получить его можно в мэрии.");
    new carid = GetPlayerVehicleID(offer);
    if(!ProxDetectorS(7.0, playerid, offer, 1)) return SendClientMessage(playerid,COLOR_GREY, "Вы далеко от игрока.");
    if(GetMoney(playerid) < CarPrice[playerid]) return SendClientMessage(playerid,COLOR_RED,">>>>{FFFFFF} - У вас недостаточно денег. Вы можете пополнить свой баланс [/donate]");
    if(IsValidNumberCars(playerid))
    {
     new number = GetVehicleID(carid);
     if(pTemp[offer][Anti_Pvar][38] != number)return SendClientMessage(playerid,COLOR_GREY, "Владелец должен находиться в машине, которую хочет продать.");
     GiveMoney(offer,CarPrice[playerid],"SellCar+");
     GiveMoney(playerid,-CarPrice[playerid],"SellCar-");

     //aml(50, playerid, PN(offer), "покупка авто", CarPrice[playerid]);
     SetCarOwner(carid,Name(playerid));
     SetCarKeyer(carid,Name(playerid));
     PlayerPlaySound(playerid, 30800, 0.0, 0.0, 0.0);
     GetNumberCars(playerid,PlayerInfo[playerid][pCars]);
     GetNumberCars(offer,PlayerInfo[playerid][pCars]);
     SendClientMessage(playerid,-1,"Поздравляем с преобретением транспортного средства.");
     SendClientMessage(offer,-1,"Поздравляем с продажей транспортного средства.");
     J_RemovePlayerFromVehicle(offer);
     CarPrice[playerid] = 0;
     CarOffer[offer] = INVALID_PLAYER_ID;
     CarOffer[playerid] = INVALID_PLAYER_ID;
     SaveOwnableCar(number);
     CarInfo[number][cShtrafer] = 0;
    }
    else
    {
     SendClientMessage(playerid,-1,"Ваш уровень VIP недостаточно высок чтобы иметь столько авто!");
     PlayerPlaySound(playerid, 30802, 0.0, 0.0, 0.0);
    }
   }
   else
   {
    PlayerPlaySound(playerid, 30802, 0.0, 0.0, 0.0);
    CarPrice[playerid] = 0;
    CarOffer[CarOffer[playerid]] = INVALID_PLAYER_ID;
    CarOffer[playerid] = INVALID_PLAYER_ID;
   }
   return true;

Это?

Share this post


Link to post
Share on other sites

@Hakson Зачем нам качать ваш мод когда эту проблему надо устранить вам а не нам... (как сказали выше больше кода!) чекай везде где юзаеться AddVehicleComponent

Share this post


Link to post
Share on other sites
15 часов назад, Hakson сказал:

DelTunCar(carid);
        ResetTuningC(carid);

вот эти две функции скинь (при поиске в PAWNO на конце ; не ставить) 

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • odosenok
      By odosenok
      Описание системы.
      Система полета камерой представляет собой возможность перемещаться в пространстве игры по всем осям (X, Y, Z) путем нажатия кнопок на клавиатуре.
       
      Подключение системы.
      1. Система написана в отдельном файле - include. Вам необходимо скачать этот файл и добавить в папку, находящейся в следующей директории:
      "..\pawno\include" 2. Затем Вам следует открыть свой игровой мод и в начале, после всех инклудов, дописать следующую строку:
      #include <fly>  
      Работа с системой.
      В систему полета камерой включены две функции:
      1.
      SetPlayerFlyStatus(playerid, status = 2) /* playerid - ID игрока, которого Вы хотите "отправить" в режим полета status - режим полета* * предусмотрено три режима полета: CAMERA_MODE_NONE (0) - выключить режим полета, CAMERA_MODE_FLY (1) - включить режим полета, CAMERA_MODE_REVERSE (2) - сменить режим на реверсивный */ 2. 
      IsPlayerFlying(playerid) /* playerid - ID игрока, пребывание в состоянии полета которого Вы хотите проверить *данная функция возвращает: CAMERA_MODE_NONE (0), если игрок не находится в состоянии полета, CAMERA_MODE_FLY (1), если игрок находится в состоянии полета */ При помощи данных функций Вы можете управлять пребыванием игрока в режиме полета, а также получать информацию о том, "летает" ли игрок в тот или иной момент.
       
      Особенности системы.
      Системой полета предусмотрено, что игрок, выходящий из режима полета, появится именно там, где вышел. Так, если Вы покидаете режим полета, пребывая в озере, то появление игрока будет именно в этом озере.
       
      Пример использования.
      CMD:fly(playerid, params[]) { static const MSG_USE_CMD[] = !"» Usage the command: /fly [mode 0-2]"; if(isnull(params)) return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0; new mode; if(sscanf(params, "d", mode)) return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0; else if(!(0 <= mode <= 2)) return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0; SetPlayerFlyStatus(playerid, mode); return 1; } CMD:checkfly(playerid, params[]) { static const MSG_USE_CMD[] = !"» Usage the command: /checkfly [playerid]"; if(isnull(params)) return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0; new id; if(sscanf(params, "u", id)) return SendClientMessage(playerid, -1, MSG_USE_CMD) & 0; else if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, !"The player is not connected") & 0; static const status_fly[][] = { !"The player is not flying", !"The player is flying" }; SendClientMessage(playerid, -1, status_fly[IsPlayerFlying(id)]); return 1 } Авторское право.
      Функции для получения позиции для перемещения камеры, само перемещение вырезаны из разработки Norck.
      В свою очередь я, @odosenok, лишь преобразовал данный код, создал более удобный интерфейс.
       
      fly.inc
    • KAIF
      By KAIF
      Здравствуйте, хотел бы продать переделанный игровой мод всем знакомого проекта GTA RolePlay
      Фракции:
      1)Правительство
      2)ГИБДД
      3)Полиция Южного
      4)ФСБ
      5)ЦГБ-А
      6)Автошкола
      7)ВВС
      8)СМИ
      9)ОМОН
      10)опг.Тукаевские
      11)опг.Тяп-Ляп
      12)Чеченская Мафия
      13)Американская Мафия
      14)Якудза
      15)Русская Мафия
      16)Итальянская Мафия
      Добавлено/исправлено:
      1)Добавлен ВЕСЬ ОПТИМИЗИРОВАННЫЙ маппинг GTA ROLEPLAY.(2018-2019г)
      2)Добавлены организации мафий.
      3)Перенесены все чекпоинты как на GTA ROLEPLAY.
      4)Добавил в донат покупку военного билета.
      5)Изменил название рангов во фракциях как на GTA ROLEPLAY/
      6)Изменен логотип GTA ROLEPLAY
      7)Переделан весь GPS, изменены все координаты.
      В моде - 6 уровней администрации.(если хотите можете увелить кол-во админок)
      Имеется фуллдоступ, выдаётся в pawno.
      Так же в комплекте будет идти мод-пак к серверу.
      После покупки вы получите архив с модом, а в самом архиве будет текстовый файл с ссылкой на скачивание модпака.