Was ist an dem Befehl falsch das mein Compiler abstürzt

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
  • Hey ich hätte mal eine Frage unzwar wie ich es schaffe das wenn jemand in ein besonderes Pickup hineingeht und dann das Pickup an einem anderen Ort spawn
    ALso so zufalls Prinzip


    Ich habe mir das so vorgestellt das ich im Script ca 20 verschiedene Spawn festlege und nach jedem aufheben des Pickups spawnt es an ein dieser 20 Orte

    Einmal editiert, zuletzt von jaykay ()

  • Ich würde dir helfen aber hab deine Frage nicht mal genau verstanden also was du willst.


    Mit freundlichen Grüßen
    Samir

  • Ok Also


    Ich Möchte In Meinen Script Ca. 20 Verschiedene Spawne Festlegen .
    Dann möchte ich ein gewisses Pickup Irgendwo positionieren, wenn ein Spieler dann dieses Pickup findet und aufnimmt dann soll dieses Pickup an ein dieser 20 Orte aus Zufallsprinizp spawnen nicht nach Reihenfolge sondern aus Zufall die ich im Script festgelegt habe spawnen

  • Das ist garnicht so schwer!


    Zunächst musst du natürlich deine 20 spawns festlegen:


    enum Spawninfo
    {
    Float:posx,
    Float:posy,
    Float:posz
    }


    new RandomSpawns[20][Spawninfo] = {
    {0.0,0.0,0.0},
    ...
    .
    .
    };


    Damit er nun zufällig eins der 20 spawns auswählt, benötigen wir die Random funktion:


    new spawn = Random(sizeof RandomSpawns); // spawn ist = eine zufällige Zahl von 0 - 19. also insgesamt 20. 20, da er die größe von RandomSpawns nimmt


    Um nun das Pickup zu erstellen ganz einfach:
    CreatePickup(pickupid,type,RandomSpawns[spawn][posx],RandomSpawns[spawn][posy],RandomSpawns[spawn][posz],virtualworld);


    Das wärs auch schon ;)


    Liebe Grüße
    Simon

  • Mein Compiler strürzt ab wenn ich diesen Code habe



    enum pickupinfo
    {
    Float:posx,
    Float:posy,
    Float:posz
    }


    new RandomSpawns[4][pickupinfo] = {
    {1677.7097,-2016.7513,28.0000},
    {1093.5492,-1608.2822,23.6407},
    {682.7953,-1494.4757,14.8516},
    {679.0420,-1672.1473,3.0987}
    };


    new spawn = Random(sizeof RandomSpawns);// den hier <----

    Einmal editiert, zuletzt von jaykay ()

  • Es ist schon mal nicht Random,sondern random.
    Der Compiler stürzt sicherlich bei dir ab,weil du die Zeile in keiner Funktion hast. Du kannst keine Funktionen ( in diesem Fall random ) aufrufen, außerhalb von andere Funktionen. Bischen blöd zu erklären, ... :/
    Du musst also spawn = random( sizeof(RandomSpawns) ); in einer anderen Funktion aufrufen.
    Mach es einfach unter OnGameModeInit / Filterscript.


    Wenn du ein neuen Spawn auswählst für das Pickup,solltest du auch sicher stellen,dass es nicht wieder am gleichen Ort erstellt wird. Kann man über eine do-while Schleife regeln.