Float Random Problem

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
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
  • Moin Gemeinde,


    ist vieleicht jemand Online, der mir mal erklären kann, wie ich einen "Float Random" benutze?
    Ich habe minx,max,miny,maxy .


    Er sagt mir aber Tag mistach:


    Code
    new Float:X = random(405.9860 )- 381.0157;
    	new Float:Y = random(-1826.9744) - -1810.9653;
            SetPlayerPos(playerid,X,Y, 19.58);

    vielen Dank im vorraus.


    Lg

  • #define randomEx(%0,%1) (random((%1)-(%0)+1)+(%0))
    Das schreib mal oben in dein Skript :)


    Und dann mach einfach sowas:


    new Float:X = randomEx(floatround(381.0157), floatround(405.9860));


    Es geht zwar der Float an sich verloren, aber auf diese 0.9 kommt es glaube ich nicht an und es ist der einfachste Weg :D

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Hier die savepositions:


    AddPlayerClass(20,381.0157,-1811.2117,7.8315,358.7239,0,0,0,0,0,0); // 1 min x /
    AddPlayerClass(20,405.8052,-1810.9653,7.8281,270.6765,0,0,0,0,0,0); // 2 min y / MIN Z
    AddPlayerClass(20,405.9860,-1826.7716,7.8359,180.1223,0,0,0,0,0,0); // 3 max X /
    AddPlayerClass(20,381.7617,-1826.9744,7.8359,89.8814,0,0,0,0,0,0); // 4 max y / MAX Z


    Den Code siehst du ja oben schon.
    Ober vertausche ich da irgendwelche koordinaten?


    Man soll halt random in dem Gebiet spawnen

  • Nein :D


    Ich will deinen Code sehen, wie du meine Funktion nun verwendest.


    Und ich will Gegenprüfen wie die Koordinaten am Ende sind, die aus der random Funktion kommen, deshalb das print :)

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Hey, mein Rechner hat sich gestern Abend verabschiedet ^^.


    Hier ist der Code wie ich ihn jetzt habe :



    Code
    new Float:X = randomEx(floatround(381.0157), floatround(405.9860));
    new Float:Y = randomEx(floatround(-1810.9653), floatround(-1826.9744));
    SetPlayerPos(playerid,X,Y, 19.58);

    //Edit : Zusatz //


    Hier ist der print:


  • new Float:Y = randomEx(floatround(-1810.9653), floatround(-1826.9744));

    Du hast hier die Werte Vertauscht, der kleinere Wert muss immer vorne stehen ^^


    Also so schreiben:


    new Float:Y = randomEx(floatround(-1826.9744), floatround(-1810.9653));

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S