Szerző Téma: Object meglövése  (Megtekintve 1250 alkalommal)

Object meglövése
« Dátum: 2013. július 21. - 19:18:21 »
0 Show voters
Üdv egy olyan scriptet kérnék tõletek, hogy van egy object. És azt a player meglövi akkor történjen valami. Teljesen mindegy mi azt bele írom, de sehogy se tudok rá jönni,hogy kivitelezhetõ. Elõre is köszönöm a válaszokat

Object meglövése
« Válasz #1 Dátum: 2013. július 21. - 20:09:47 »
0 Show voters
Helló,
Jelenlegi állás szerint nem kivitelezhetõ. Semmiféle callback-el nem vagyunk megáldva ami ezt lehetõvé tenné. Szóval úgymond \'egyszerûbb\' módon nem megoldható. A nehezebb mód egy kis matekozás, számítgatás, játékos billentyû keresgetés után talán, bár ez utóbbi csak a képzeletemben él.
Tehát nem kivitelezhetõ.

Object meglövése
« Válasz #2 Dátum: 2013. július 21. - 22:40:28 »
0 Show voters
de kivitelezhetõ mert láttam már szerveren. IsPlayerLookAt al. De hogy hogyan azt nemtudom

Nem elérhető ZyZu.

  • Globális moderátor
  • 8939
  • my turbo diesel forum
  • Discord: ZyZu.
    • Profil megtekintése
Object meglövése
« Válasz #3 Dátum: 2013. július 22. - 07:28:37 »
0 Show voters
Még nem láttam hasonló kódokat én sem.. de kiváncsi lennék ennek a szervernek az IP címére.. probálj PM -ben küldeni egy IP címet és felmegyünk megnézem.. lehet ha szemrõl látom meg tudom csinálni.. de mondom nem rémlik még, hogy láttam volna hasonló kódokat..  :hmmm:

Object meglövése
« Válasz #4 Dátum: 2013. július 22. - 11:43:50 »
0 Show voters
Nem tudok szeró ip adni mert azóta formáztam a gépet és az ip vesztek kb 3 hete. De nagy eséllyel amire gyanakodtam. IsPlayerLookAt al lesz megoldva.

Nem elérhető Rupert

  • 2301
    • Profil megtekintése
Object meglövése
« Válasz #5 Dátum: 2013. július 22. - 12:05:41 »
0 Show voters
Ez egyszerû. Szükséges az IsPlayerAimingAt függvény.
 

stock IsPlayerAimingAt(playerid, Float:x, Float:y, Float:z, Float:radius)
{
new Float:cx,Float:cy,Float:cz,Float:fx,Float:fy,Float:fz;
GetPlayerCameraPos(playerid, cx, cy, cz);
GetPlayerCameraFrontVector(playerid, fx, fy, fz);
return (radius >= DistanceCameraTargetToLocation(cx, cy, cz, x, y, z, fx, fy, fz));
}

 
Ha azt szeretnéd, hogy objectre célozzon, for ciklussal végig kell menned az objecteken. ( Ez viszont csak akkor mûködik, ha azok valami tömbben vannak pl. )
 

for(new i;i<MAX_DISZNOK;i++)
{
new Float:pos[3];
GetObjectPos(disznoobject, pos[0], pos[1], pos[2]);
if(IsPlayerAimingAt(pos[0], pos[1], pos[2])) SendClientMessage(playerid, -1, \"Te most egy disznóra célzol.\");
}

 
Ez csak egy példascript.

Object meglövése
« Válasz #6 Dátum: 2013. július 22. - 12:08:35 »
0 Show voters
Ha ez most beválik én megcsókollak :D

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal