funktion um Punkt vor dem Punkt zu berechnen :D

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo,
    ich benötige eine Funktion, die mir einen Koordinanten Punkt vor meinem berechnet
    ich habe die Werte x,y,z, und die Roation r, kann man damit einen sag ich mal 2.5 einheiten entfernten Punkt berechnen?


    mfg

    Falsche Freunde: Fragen nach Kippen !
    Wahre Freunde: Sind der Grund, warum du keine Kippen hast !
    Falsche Freunde: Nennen deine Eltern Frau/Herr !
    Wahre Freunde: Nennen deine Eltern Mom/Dad !
    Falsche Freunde: Holen dich aus dem Knast und sagen dir, was getan hast, war falsch !
    Wahre Freunde: Sitzen in der Zelle neben dir und sagen: Scheiße...wir haben‘s verkackt...war aber verdammt lustig ! :P
    Falsche Freunde: Haben dich noch nie weinen sehen !
    Wahre Freunde: Weinen mit dir !
    Falsche Freunde: Werden dich stehen lassen, wenn die Menge das tut !
    Wahre Freunde: Werden der kompletten Menge den Arsch treten, die dich stehen gelassen hat ! c:
    Falsche Freunde: Bleiben für ne Weile !
    Wahre Freunde: Bleiben ein Leben lang !
    Falsche Freunde: Werden die Person, die Scheiße über dich erzählt, blöd vollabern !
    Wahre Freunde: Werden sie einfach ausknocken !
    Falsche Freunde: Werden das hier ignorieren !
    Wahre Freunde: Es Kopieren !

  • Jo klar ich hab dazu eine Funktion geschrieben
    diese nennt sich is

    stock IsViewInRangeOfPoint(playerid, Float: r, Float: x, Float: y, Float: z)
    {
    new Float:GP[3], Float:GPCFV[3], Float: Output[3];
    const Float: weite = 4.0;
    GetPlayerCameraPos(playerid, GP[0], GP[1], GP[2]);
    GetPlayerCameraFrontVector(playerid, GPCFV[0], GPCFV[1], GPCFV[2]);
    Output[0] = GP[0] + floatmul(GPCFV[0], weite);
    Output[1] = GP[1] + floatmul(GPCFV[1], weite);
    Output[2] = GP[2] + floatmul(GPCFV[2], weite);
    if((Output[0] - x)*(Output[0] - x) + (Output[1] - y)*(Output[1] - y) <= r*r && Output[2] <= z) return 1;
    else return 0;
    }


    diese solltest halt noch an deine Verwendung anpassen hier wird berechnet ob der Spieler in einen Punkt hinein schaut die entfernung beträgt hier 4.0
    da ich das für die reichweite für meinen feuerlöscher verwendet habe


    //edit um das zu berechnen brauchst du den Satz des Pythagoras