Wie weist man einem Objekt eine Zufalls-Variable zu?

  • GM 8

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Wie weist man einem Objekt eine Zufalls-Variable zu?

    Hallo, ich bin hier neu und hab da mal eine Frage:
    In meinem Spiel soll der Spieler etliche gefundene Geschenke aufmachen. Aber nur in einem von ihnen ist ein Schlüssel versteckt, den es zu finden gilt. Die Anzahl der Geschenke wird über 'instance_number' ermittelt und daraus eine Zufallszahl generiert.

    Nur: wie weist man diese Zufallszahl jetzt der betreffenden Geschenke-Nummer zu?? Beispiel: 15 Geschenke sind in dem Spielfeld, die ermittelte Zufallszahl ist 6. Wie kann ich jetzt das "Geschenk Nr. 6" ermitteln und wie dem Spieler mitteilen, daß er dieses Geschenk gefunden hat??
    Kann mir da jemand weiterhelfen? Da die Geschenke nach Kollision nicht verschwinden, kann ich leider die Zufallszahl nicht mit der Anzahl der Geschenke abgleichen...

    CB
  • Sind die Geschenke einfach in einem Raum verteilt?
    Dann kannst du ein Geschenk-Objekt ohne und eins mit Schlüssel erstellen.
    Von dem ohne Schlüssel müsstest du in deinem Beispiel 14 in den Raum werfen,
    und dann noch das eine mit Schlüssel. Die Nachricht, dass man das richtige Geschenk gefunden hat,
    muss dann halt in das Left-pressed Event (oder was auch immer) vom Geschenk-mit-Schlüssel Objekt.
    Für die Zufällige plazierung müsstest du noch in beidein Geschenk-Typen angeben.
  • machs doch einfach so:

    :action_ifvariable: wenn schlüsselvariable = 0
    :action_begin:

    :action_ifdice: chance 1 to wasweissich

    :action_begin:

    :action_variable: set schlüsselvariable auf 1

    UND DANN DAS WAS DU VERWENDEST WENN DU DEN SCHLÜSSEL BEKOMMST
    :action_end:

    :action_end:

    per drag and drop würd ichs so mal schnell machen.

    oder du machsts anders:
    start des levels beim geschenk:

    GML-Quellcode

    1. geschenk_nummer=random(100) //100 durch andere zahl ersetzen, wenn nötiggeschenk_id=0


    collisions event mit spieler:

    GML-Quellcode

    1. geschenk_id=geschenk_id+1
    2. if (geschenk_id=geschenk_nummer){schlüssel=1 //oder wie auch immer}
    ////////////////////////////////////////////////////////////////////////////////////////////////
  • Phoenix schrieb:

    Machs doch einfach so:
    Danke, das ist eine hilfreiche Antwort. Denke damit werde ich es machen. Wollte jetzt hier nicht den Code noch mal zitieren ;)

    Chaos Creator schrieb:

    Sind die Geschenke einfach in einem Raum verteilt?
    Dann kannst du ein Geschenk-Objekt ohne und eins mit Schlüssel erstellen.
    Eben nicht, die Geschenke sind das Resultat der vorangegangenen Schritte und da kann ich nicht einfach eines "dazustellen" oder so. Ich muß mich schon auf die Objekte beziehen, die der Spieler bereits erspielt hat.

    Also, thx erst mal, ich denke, einiges wird mir weiterhelfen. Muss ich eben noch was ummodeln. Wusste nicht, daß es in GML so schwierig ist, einem Objekt etwas zuzuweisen... In anderen Sprachen hätte man einfach geschrieben: if rnd = obj_geschenk[rnd] oder so ähnlich...

    CB
  • Benutzer online 1

    1 Besucher