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

FS 'дом на колёсах' работает только на созданные в нём машины

Dimdimich

Новичок
Скачал в интернете ФС на дом на колесах(подходишь к боковой двери нажимаешь F и тебя телепортирует в интерьер). Все работает только с теми машинами которые заспавнил автор, а если я админкой заспавню транспорт то ничего не работает.
Вот код
C++:
#include <a_samp>
#include <streamer>
#include <foreach>

new Float:VehiclePos[8][4] = {//x,y,z,f - Координаты для транспорта.
    {681.5339, 1945.1458, 5.7797, 179.7000},
    {686.5339, 1945.1458, 5.7797, 179.7000},
    {701.5339, 1945.1458, 5.7797, 179.7000},
    {706.5339, 1945.1458, 5.7797, 179.7000},
    {711.5339, 1945.1458, 5.7797, 179.7000},
    {716.5339, 1945.1458, 5.7797, 179.7000},
    {721.5339, 1945.1458, 5.7797, 179.7000},
    {726.5339, 1945.1458, 5.7797, 179.7000}
};

new VehicleID[sizeof(VehiclePos)];//Массив для ИД транспорта.

enum e_pInfo {
    TrailerID
}
new pInfo[MAX_PLAYERS][e_pInfo];

main(){}

public OnGameModeInit()
{
    DisableInteriorEnterExits();
    //Создаём транспорт//
    for(new i; i < sizeof(VehiclePos); i++) VehicleID[i] = CreateVehicle(508, VehiclePos[i][0], VehiclePos[i][1], VehiclePos[i][2], VehiclePos[i][3], -1, -1, 100);
    //Маппинг трейлера//
    CreateDynamicObject(14385, 681.00250, -459.25739, -15.88801,   0.00000, 0.00000, 0.00000);
    CreateDynamicObject(18038, 679.96381, -454.56100, -18.94561,   0.00000, 0.00000, 0.00000);
    CreateDynamicObject(19453, 705.55487, -450.06360, -19.44230,   0.00000, 0.00000, 0.00000);
    CreateDynamicObject(19361, 703.94281, -445.35669, -19.44230,   0.00000, 0.00000, 90.00000);
    CreateDynamicObject(19454, 704.08612, -449.94519, -17.72217,   0.00000, 90.00000, 0.00000);
    CreateDynamicObject(19361, 703.94281, -454.85669, -19.44230,   0.00000, 0.00000, 90.00000);
    CreateDynamicObject(19453, 702.39490, -450.06360, -19.44230,   0.00000, 0.00000, 0.00000);
    CreateDynamicObject(14819, 702.30939, -452.91422, -20.02400,   0.00000, 0.00000, 90.00000);
    CreateDynamicObject(2336, 704.98407, -453.26450, -21.17420,   0.00000, 0.00000, 270.00000);
    CreateDynamicObject(2337, 704.98407, -452.25409, -21.17330,   0.00000, 0.00000, 270.00000);
    CreateDynamicObject(2528, 702.78522, -445.95401, -21.17310,   0.00000, 0.00000, 0.00000);
    CreateDynamicObject(19390, 703.94281, -447.85669, -19.44230,   0.00000, 0.00000, 90.00000);
    CreateDynamicObject(11743, 705.19171, -453.09381, -20.11750,   0.00000, 0.00000, 270.00000);
    CreateDynamicObject(11707, 705.40503, -446.98990, -19.72800,   0.00000, 0.00000, 270.00000);
    CreateDynamicObject(19172, 703.98877, -454.76730, -18.61850,   0.00000, 0.00000, 180.00000);
    CreateDynamicObject(2631, 704.20068, -446.83981, -21.20890,   0.00000, 0.00000, 0.00000);
    CreateDynamicObject(2131, 702.87842, -451.46420, -21.17400,   0.00000, 0.00000, 90.00000);
    CreateDynamicObject(2156, 705.27570, -450.89191, -21.17360,   0.00000, 0.00000, 270.00000);
    CreateDynamicObject(1764, 705.06836, -448.10687, -21.26620,   0.00000, 0.00000, 270.00000);
    CreateDynamicObject(19916, 702.68292, -452.36066, -21.17336,   0.00000, 0.00000, 89.46001);
    CreateDynamicObject(19787, 702.42603, -448.91626, -19.73790,   0.00000, 0.00000, 90.00000);
    CreateDynamicObject(936, 702.62280, -448.96121, -20.85460,   0.00000, 0.00000, 89.76000);
    CreateDynamicObject(1491, 703.15558, -447.84540, -21.17370,   0.00000, 0.00000, 0.00000);
    CreateDynamicObject(2526, 703.75018, -445.91400, -21.17310,   0.00000, 0.00000, 0.00000);
    CreateDynamicObject(14481, 704.49353, -445.90240, -19.14640,   0.00000, 0.00000, 90.00000);
    CreateDynamicObject(19434, 703.21997, -445.59921, -19.44230,   0.00000, 0.00000, 0.00000);
    CreateDynamicObject(3034, 705.46478, -452.29669, -19.08840,   0.00000, 0.00000, 270.00000);
    CreateDynamicObject(14752, 705.31018, -453.13400, -18.88450,   0.00000, 0.00000, 0.00000);
    CreateDynamicObject(14752, 705.29016, -451.41809, -18.88450,   0.00000, 0.00000, 0.00000);
    CreateDynamicObject(2608, 705.26147, -449.07159, -18.22900,   0.00000, 0.00000, 270.00000);
    return 1;
}

public OnPlayerConnect(playerid)
{
    pInfo[playerid][TrailerID] = -1;
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    pInfo[playerid][TrailerID] = -1;
    return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
    pInfo[playerid][TrailerID] = -1;
    return 1;
}

public OnVehicleDeath(vehicleid, killerid)
{
    for(new i; i < sizeof(VehiclePos); i++)
    {
        if(VehicleID[i] == vehicleid)
        {
            foreach(Player, r)
            {
                if(pInfo[r][TrailerID] == VehicleID[i]) SetPlayerHealth(r, 0.0);
            }
        }
    }
    return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    switch(newkeys)
    {
        case KEY_SECONDARY_ATTACK:
        {
            if(InTrailer(playerid))
            {
                new Float:x, Float:y, Float:z, Float:f;
                SetPlayerInterior(playerid, 0);
                SetPlayerVirtualWorld(playerid, 0);
                GetExitPos(playerid, x, y, z, f);
                SetPlayerPos(playerid, x, y, z);
                SetPlayerFacingAngle(playerid, f);
                pInfo[playerid][TrailerID] = -1;
                return 1;
            }
            if(pInfo[playerid][TrailerID] == -1)
            {
                new VehID = IsOnEnterPos(playerid);
                if(VehID != 0)
                {
                    SetPlayerPos(playerid, 703.3044,-453.8220,-20.1722);
                    SetPlayerFacingAngle(playerid, 270.0);
                    SetPlayerInterior(playerid, 1);
                    SetPlayerVirtualWorld(playerid, VehID);
                    pInfo[playerid][TrailerID] = VehID;
                    return 1;
                }
            }
        }
    }
    return 1;
}

stock IsOnEnterPos(playerid)
{
    new Float:x, Float:y, Float:z, Float:angle;
    for(new i; i < sizeof(VehiclePos); i++)
    {
        GetVehiclePos(VehicleID[i], x, y, z);
        GetVehicleZAngle(VehicleID[i], angle);
        x += (1.7 * floatsin(-angle+84.0, degrees));
        y += (1.7 * floatcos(-angle+84.0, degrees));
        if(IsPlayerInRangeOfPoint(playerid, 0.5, x, y, z-0.5)) return VehicleID[i];
    }
    return 0;
}

stock GetExitPos(playerid, &Float:x, &Float:y, &Float:z, &Float:f)
{
    new Float:angle;
    GetVehiclePos(pInfo[playerid][TrailerID], x, y, z);
    GetVehicleZAngle(pInfo[playerid][TrailerID], angle);
    x += (1.7 * floatsin(-angle+84.0, degrees));
    y += (1.7 * floatcos(-angle+84.0, degrees));
    z -= 1.0;
    f = angle - 90.0;
    return 1;
}

stock InTrailer(playerid)
{
    if(IsPlayerInRangeOfPoint(playerid, 1.0 ,702.8312,-453.6777,-20.1722)) return 1;
    return 0;
}
Помогите пожалуйста, я уже очень давно ищу решение проблемы, кто поможет буду очень благодарен.
(Если комуто интересно где стоят автомобили, то они находятся в городе Лас Вентурас возле заправки которая находится возле рельс)
 
Сверху Снизу