• Уважаемый Гость.
    - Прежде чем создать свою тему, пожалуйста, попробуй воспользоваться этим -> ПОИСКОМ !!!
    - После решения Вашего вопроса (проблемы) - нажмите "Лучший ответ", на сообщении, которое его решило. За игнорирование этого действия - Вы получите соответствующее предупреждение. Мы - стараемся Вам помочь. Уделите 10 секунд - чтобы нажать кнопку. (Если у Вас нет такой возможности - укажите в последнем своем сообщении какой ответ Вы считаете лучшим. Наши модераторы сделают это за Вас)
    ЗАПРЕЩЕНО:
    - Cоздавать темы с названиями "Помогите", "Плиз", "Ошибка", "Не могу найти", "Хелп" и тому подобное;
    - Cоздавать темы без детального описания того, что нужно исправить.
    - Cоздавать темы из одного скриншота.
    За игнор правил форума - Ваша тема будет удалена, а Вы получите системное предупреждение.

Как сделать, чтобы пассажир также телепортировался в гараж или выходил из машины без телепорта?

Narek

Компетентный
Здравствуйте! У меня возникла проблема с модом: когда владелец гаража находится в машине и телепортируется в свой гараж, игрока на пассажирском сиденье не телепортирует вместе с владельцем а кидает в интерьер гаража из которого уже не выйдешь. Я бы хотел, чтобы пассажира также телепортировало в гараж или более желательно чтобы просто выкинуло из тачки без телепорта, то есть телепорт без пассажиров. Подскажите, как это можно эти две подхода реализовать? Я также попробовал разобраться самостоятельно, но не смог.

Код:
stock GarageMovement(playerid)
{
    new veh_id = GetPlayerVehicleID(playerid);
    if(GarageEntered[playerid] == -1)
    {
        for(new i; ++i < MAX_HOUSES;)
        {
            if(HouseInfo[i][hGarage] == 1)
            {
                if(IsPlayerInRangeOfPoint(playerid, 2.0, HouseInfo[i][hGarage_X], HouseInfo[i][hGarage_Y], HouseInfo[i][hGarage_Z]))
                {
                    if(PI[playerid][pHouseKey] != i && !IsACop(playerid))
                        return SendClientMessage(playerid, COLOR_LIGHTRED, !"[Ошибка]{FFFFFF} Это не ваш гараж!");

                    if(veh_id != 0)
                    {
                        new
                            count = 0;
                        for(new vehid; vehid < MAX_VEHICLES; vehid++)
                        {
                            if(GetVehicleVirtualWorld(vehid) != (i+50))
                                continue;

                               count ++;
                        }
                        if(count == 2 && HouseInfo[i][hKlass] == 1)
                            return SendClientMessage(playerid, COLOR_LIGHTRED, !"[Ошибка] {FFFFFF}В этом гараже уже есть 2 машины!");

                        if(count == 4 && (HouseInfo[i][hKlass] == 2 || HouseInfo[i][hKlass] == 3 || HouseInfo[i][hKlass] == 4))
                            return SendClientMessage(playerid, COLOR_LIGHTRED, !"[Ошибка] {FFFFFF}В этом гараже уже есть 4 машины!");

                         if(count == 5 && (HouseInfo[i][hKlass] == 5 || HouseInfo[i][hKlass] == 6))
                            return SendClientMessage(playerid, COLOR_LIGHTRED, !"[Ошибка] {FFFFFF}В этом гараже уже есть 5 машин!");
                         if(PI[playerid][pHouseKey] != i && !IsACop(playerid)){
                                return SendClientMessage(playerid, COLOR_LIGHTRED, !"[Ошибка]{FFFFFF} Это не ваш гараж!");
                         }
                         else{
                        SetVehiclePos(
                            veh_id,
                            GaragesInteriors[HouseInfo[i][hKlass] - 1][e_GARAGE_INTERIOR_X],
                            GaragesInteriors[HouseInfo[i][hKlass] - 1][e_GARAGE_INTERIOR_Y],
                            GaragesInteriors[HouseInfo[i][hKlass] - 1][e_GARAGE_INTERIOR_Z]+2.0
                        );
                        SetVehicleZAngle(veh_id,GaragesInteriors[HouseInfo[i][hKlass] - 1][e_GARAGE_INTERIOR_A]);
                        LinkVehicleToInterior(veh_id, 2);
                        SetVehicleVirtualWorld(veh_id, i + 50);
                    }
                    J_SetPlayerPos(
                        playerid,
                        GaragesInteriors[HouseInfo[i][hKlass] - 1][e_GARAGE_INTERIOR_X],
                        GaragesInteriors[HouseInfo[i][hKlass] - 1][e_GARAGE_INTERIOR_Y],
                        GaragesInteriors[HouseInfo[i][hKlass] - 1][e_GARAGE_INTERIOR_Z] + 1.0
                    );
                    SetPlayerFacingAngle(playerid,GaragesInteriors[HouseInfo[i][hKlass] - 1][e_GARAGE_INTERIOR_A]);
                    SetPlayerInterior(playerid, 2);
                    SetPlayerVirtualWorld(playerid, i + 50);
                    if(veh_id != 0) PutPlayerInVehicle(playerid, veh_id, 0);
                    GarageEntered[playerid] = i;
                    }
                    return 1;
                }
                else {
                    continue;
                }
            }
        }
    }
    return 0;
}
 
Последнее редактирование:
Сверху Снизу