global Variable

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

  • global Variable

    Als oich hätte eine frage zu den Global Variablen.

    Ich habe einen Room mit einem Controller Objekt drin, wo eine bestimmte Globale Variable ist. (In meinem Fall: global.live.)

    Wie mache ich jetzt dass die Global Variable Live in einem anderem Room auch noch vorhanden ist, aber nicht zurückgesetzt wird!

    In dem anderen Room hab ich nähmlich nicht im Create Event Set Variable Live to 0 stehen. Und natürlichj ist dann im 2 ten Room beim draw event ein ``Draw Variable global Live.´´ da. Nur kommt dann eine Fehlermeldung das es die Variable global Live nicht gibt.


    Wie mache ich das also, dass die Variable global Live in den 2ten Raum übernommen wird?


    udn 2tens:

    Wie kann ich machen, dass wenn es eine Variable (z.B: Car) gibt, dass dan 1 Sprite gezeichnet wird. (Also es soll genaus sein wie Draw Live as a Sprite nur halt mit eigenen Variablen.)

    Könnt ihr mir da helfen?
  • Eine globale Variable existiert unabhängig von Räumen. Sobald einmal gesetzt, kannst du sie überall verwenden.
    Du musst natürlich auch immer genau global.Live (mit Punkt getrennt und auf Groß/Kleinschreibung achten) verwenden, ansonsten erkennt der GM die Variable nicht.
    Falls die Variable nur im ersten Level gesetzt wird, der erste Level aber übersprungen werden kann, dann kann es natürlich zu Problemen kommen.
    Eine Lösung wäre, die Variable nur dann neu zu setzen, wenn sie noch nicht existiert.
    Erstelle ein Objekt, das du in jeden Raum platzierst und schreib ins Create Event:

    GML-Quellcode

    1. if (!variable_global_exists("Live") ) {
    2. global.Live=3;
    3. }


    zu 2.:
    Würde ich in einer kleinen for-Schleife im Draw Event eines eigenen Objektes lösen. Gib dem Objekt das Sprite, das wiederholt gezeichnet werden soll und platziere es da im Raum, wo die Anzeige erscheinen soll. Die Variable variablenname musst du natürlich durch deine Variable ersetzen (zB. global.Live). Habs nicht getestet, aber so sollte es ungefähr funktionieren:

    GML-Quellcode

    1. for (i=0;i<variablenname;i+=1) {
    2. draw_sprite(sprite_index,image_index,x+i*sprite_width,y);
    3. }
    Einige meiner Spiele:
  • Benutzer online 1

    1 Besucher