Jump to content
  • 0

pomoc [Help] Souřadnice


PcHawkVich

Dotaz

Zdravím, potřebuji poradit s tím, jak zjistit souřadnice např. pět metrů napravo od vozidla a metr za ním.. Napadla mě funkce GetXYInFrontOfPlayer (Vehicle) jenže ta dokáže zjistit souřadnice jen po "délce" vozidla.. potřeboval bych to nějak upravit aby to šlo i do stran..

 

Díky za všechny rady jak na to :)

Link to comment
Share on other sites

7 odpovědí na tuto otázku

Recommended Posts

  • 0

No tak zkus

 

new Float:X, Float:Y, Float:Z;

GetVehiclePos(GetPlayerVehicleID(playerid), X, Y+5, Z);

 

Vím že to +5 asi není 5 metrů, ale to už si nějak upravís

Doufám že přičítám hodnotu správnému koordinátu :d trochu se mi pletou a jestli chceš zjistit třeba 5 metrů před ním a 8 vpravo od něj tak si jen přidávej hodnoty.

 

A ty souřadnice X, Y, Z máš zapsané v proměnných.

Link to comment
Share on other sites

  • 0
new Float:x, Float:y, Float:z, Float:a, Float:x2, Float:y2;

GetVehiclePos(vehicleid, x, y, z);
GetVehicleZAngle(vehicleid, a);

a+=90; //cize pridame ku rotacii vozidla 90 stupnov (ale neviem ci plus alebo minus)

x2 = x + (5.0 * floatsin(-a, degrees));
y2 = y + (5.0 * floatcos(-a, degrees));

//a teraz bude x2 a y2 predstavoat suradnice 5 metrov nalavo alebo napravo od auta
//ak to nebude napravo ale nalavo zmen a+=90 na a-=90

Link to comment
Share on other sites

  • 0

lyrics911 díky :)

jinak martanius toto

No tak zkus

 

new Float:X, Float:Y, Float:Z;

GetVehiclePos(GetPlayerVehicleID(playerid), X, Y+5, Z);

 

Vím že to +5 asi není 5 metrů, ale to už si nějak upravís

Doufám že přičítám hodnotu správnému koordinátu :d trochu se mi pletou a jestli chceš zjistit třeba 5 metrů před ním a 8 vpravo od něj tak si jen přidávej hodnoty.

 

A ty souřadnice X, Y, Z máš zapsané v proměnných.

zjistí souřadnice okolo auta ale bez ohledu na jeho rotaci.. takže je to na nic

Link to comment
Share on other sites

  • 0

 

new Float:x, Float:y, Float:z, Float:a, Float:x2, Float:y2;

GetVehiclePos(vehicleid, x, y, z);

GetVehicleZAngle(vehicleid, a);

a -= 90;

x2 = x + (2.5 * floatsin(-a, degrees));

y2 = y + (5.0 * floatcos(-a, degrees));

if(cp == true)

{

DisablePlayerCheckpoint(i);

}

SetPlayerCheckpoint(i, x2, y2, 10.8200, 1.0);

cp = true;

 

skáče to sice okolo auta ale pokaždé jinde :/ jako když auto stojí tak to vygeneruje vždy stejné souřadnice ale když ho přemístím tak je cp klidně na druhé straně auta, před ním nebo za ním..

 

Edit: sry za planý poplach.. :) už jsem doma..

Link to comment
Share on other sites

  • 0

new Float:x, Float:y, Float:z, Float:a, Float:x2, Float:y2;

GetVehiclePos(vehicleid, x, y, z);

GetVehicleZAngle(vehicleid, a);

a -= 90;

x2 = x + (2.5 * floatsin(-a, degrees));

y2 = y + (5.0 * floatcos(-a, degrees));

if(cp == true)

{

DisablePlayerCheckpoint(i);

}

SetPlayerCheckpoint(i, x2, y2, 10.8200, 1.0);

cp = true;

 

skáče to sice okolo auta ale pokaždé jinde :/ jako když auto stojí tak to vygeneruje vždy stejné souřadnice ale když ho přemístím tak je cp klidně na druhé straně auta, před ním nebo za ním..

 

Edit: sry za planý poplach.. :) už jsem doma..

2.5 a 5.0? musis to dat rovnake

Link to comment
Share on other sites

  • 0

Jo jo :) už jsem tu funkci pochopil.. moc dík, potřeboval jsem to aby se to posunulo zároveň dozadu a zároveň do strany takže jsem to vyřešil takto

 

GetXYInFrontOfVehicle(vehicleid, &Float:x, &Float:y, Float:distance)
{
new Float:a;
GetVehiclePos(vehicleid, x, y, a);
GetVehicleZAngle(vehicleid, a);
x += (distance * floatsin(-a, degrees));
y += (distance * floatcos(-a, degrees));
}

GetXYInSideOfVehicle(vehicleid, &Float:x, &Float:y, Float:distance)
{
new Float:a;
GetVehicleZAngle(vehicleid, a);
a = a + 90;
if(a > 360)
{
    a = a - 360;
}
x += (distance * floatsin(-a, degrees));
y += (distance * floatcos(-a, degrees));
}

 

možná někdo využije :)

Link to comment
Share on other sites

  • 0
lyrics911 díky :)

jinak martanius toto

No tak zkus

 

new Float:X, Float:Y, Float:Z;

GetVehiclePos(GetPlayerVehicleID(playerid), X, Y+5, Z);

 

Vím že to +5 asi není 5 metrů, ale to už si nějak upravís

Doufám že přičítám hodnotu správnému koordinátu :d trochu se mi pletou a jestli chceš zjistit třeba 5 metrů před ním a 8 vpravo od něj tak si jen přidávej hodnoty.

 

A ty souřadnice X, Y, Z máš zapsané v proměnných.

zjistí souřadnice okolo auta ale bez ohledu na jeho rotaci.. takže je to na nic

 

Aha sry asi jsem tvůj dotaz nepochopil :oops:

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...