Как определить место нахождение созданного объекта, который был привязан к авто ? -
anonim15 - 24.03.2012
Создаю объект
new Float

,Float:y,Float:z, Float:angle;
GetVehiclePos(GetPlayerVehicleID(playerid), x, y, z);
GetVehicleZAngle(GetPlayerVehicleID(playerid), angle);
Код:
Object1 = CreateObject(любой ид,x,y,z,0.0,0.0,0.0,angle);
AttachObjectToVehicle(Object1,GetPlayerVehicleID(playerid),-0.1,-3.9,-0.9,0.0,0.0,0.0);
Когда проверяю на нахождение
Код:
GetPlayerObjectPos(playerid, TrashObject2, X, Y, Z);
или GetObjectPos тоже самое.
Он прикреплён к авто, но координаты у него показывает 0.0,0.0,0.0.
Re: Как определить место нахождение созданного объекта, который был привязан к авто ? -
eakwarp - 24.03.2012
Если относительно авто, то только сохранять координаты при аттаче, если вообще, то только по координатам местонахождения самого автомобиля.
Re: Как определить место нахождение созданного объекта, который был привязан к авто ? -
anonim15 - 24.03.2012
Сделал Enum и когда игрока выкидывало с Авто сделал сохранение координат сейчас сделаю тест.
Re: Как определить место нахождение созданного объекта, который был привязан к авто ? -
Alexander_Petrov - 24.03.2012
PHP код:
new Float:x, Float:y, Float:z, Float:pa;
GetVehicleZAngle(GetPlayerVehicleID(playerid),pa);
GetVehiclePos(GetPlayerVehicleID(playerid), x, y, z);
x += (x прикрепления к машине * floatcos(pa+90.0, degrees));
y += (y прикрепления к машине * floatsin(pa+90.0, degrees));
z += (z прикрепления к машине);
оставшиеся координаты x y z и есть координаты объекта
Re: Как определить место нахождение созданного объекта, который был привязан к авто ? -
anonim15 - 24.03.2012
Quote:
Originally Posted by Alexander_Petrov
PHP код:
new Float:x, Float:y, Float:z, Float:pa;
GetVehicleZAngle(GetPlayerVehicleID(playerid),pa);
GetVehiclePos(GetPlayerVehicleID(playerid), x, y, z);
x += (x прикрепления к машине * floatcos(pa+90.0, degrees));
y += (y прикрепления к машине * floatsin(pa+90.0, degrees));
z += (z прикрепления к машине);
оставшиеся координаты x y z и есть координаты объекта
|
x прикрепления к машине какая именно х ? Из какой функции ?
Re: Как определить место нахождение созданного объекта, который был привязан к авто ? -
Alexander_Petrov - 24.03.2012
AttachObjectToVehicle(Object1,GetPlayerVehicleID(p layerid),-0.1,-3.9,-0.9,0.0,0.0,0.0);
х прикрепления к машине = -0.1
у прикрепления к машине = -3.9
z прикрепления к машине = -0.9
Re: Как определить место нахождение созданного объекта, который был привязан к авто ? -
Mutha_X - 25.03.2012
Quote:
Originally Posted by Alexander_Petrov
PHP код:
new Float:x, Float:y, Float:z, Float:pa;
GetVehicleZAngle(GetPlayerVehicleID(playerid),pa);
GetVehiclePos(GetPlayerVehicleID(playerid), x, y, z);
x += (x прикрепления к машине * floatcos(pa+90.0, degrees));
y += (y прикрепления к машине * floatsin(pa+90.0, degrees));
z += (z прикрепления к машине);
оставшиеся координаты x y z и есть координаты объекта
|
Неудачный пример, а если тачка наклонена в какую-нибудь сторону?
Можешь пойти по кватернионам, если сможешь)
Re: Как определить место нахождение созданного объекта, который был привязан к авто ? -
Alexander_Petrov - 25.03.2012
Не думаю, что точность нужна до 0.001. Судя по названию объекта, это мусорник. Если делать проверку, то в радиусе 1.5. Приведи пример лучше, если мой неудачный
Re: Как определить место нахождение созданного объекта, который был привязан к авто ? -
anonim15 - 26.03.2012
GetVehiclePos(LastCar[playerid], X, Y, Z);
LastCar[playerid] записывать как предыдущее авто
И проверять GetXYInFrontOfVehicle(LastCar[playerid], X, Y, дистанция);