variable unbekannt

  • variable unbekannt

    noch son ding:

    das is aber jetz rein informativ, weils mich interessiert, is also nicht lebenswichtig, dass jemand antwortet ;)
    wenn ich im creation event einer instanz ein skript ausführen lasse, in dem steht:

    GML-Quellcode

    1. {
    2. var blabla;
    3. blabla="hallo";
    4. }


    dann kommt bei zugriff auf die variable die meldung, die variable blabla wäre nicht bekannt. wenn ich aber dieses dragndrop-zeugs benutze, um im creation event die variable zu definieren, funktioniert alles einwandfrei.

    Falls das wieder so offensichtlich ist, wie beim letzten mal: Entschuldigung schon im Voraus :D Ich bin nicht gerade ne Leuchte, wenns ums Fehlersuchen geht.

    nachtrag: also meine frage is natürlich, warum das so ist, wo das doch eigentlich das gleiche sein sollte.

    EDIT by WIN: GML-tags eingefügt
    Ne invoces expellare non possis!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Moschi ()

  • kann an 2 sachen liegen:


    1. Wenn du Variablen mit "var" deklarierst, werden sie (aus Speichertechnischen Gründen) nach einem Stap gelöscht.

    2. Wenndu variablen einen normalen namen zuweist, sind es nur lokale Variablen.
    Wenn du sie also in anderen Objekten abfragen willst musst du sie Global deklarieren.

    ALLES NACHZULESEN IN DER HILFE!
    Hier werden sie geholfen:
    [Regeln] [GML] [Hilfe] [Suche] [Posten] [Duden.de]
    [Wenn das alles nicht mehr hilft] [Dunning-Kruger]


    "Die Vernunft sollte Autorität definieren; nicht umgekehrt!"
    "Selber denken regt das Gehirn an."
    - Niffel f.k.a. Kilik
  • die step-erklärung halte ich für logisch, aber wie deklarier ich die dinger dann?
    wenn ich einfach nur schreib blabla="hallo" funzts auch nicht, hab ich schon probiert.

    und die wird auf jeden fall auch lokal abgefragt. das kanns also nicht sein.
    Ne invoces expellare non possis!
  • Also wenn du sie lokal abfragst und normal deklarierst hast du irgendwo anders n Fehler gemacht.
    Hier werden sie geholfen:
    [Regeln] [GML] [Hilfe] [Suche] [Posten] [Duden.de]
    [Wenn das alles nicht mehr hilft] [Dunning-Kruger]


    "Die Vernunft sollte Autorität definieren; nicht umgekehrt!"
    "Selber denken regt das Gehirn an."
    - Niffel f.k.a. Kilik
  • naja, is nicht so wild es funktioniert ja. nur dragndrop kommt mir so unprofessionell vor, deswegen wollt ichs in ein skript packen. ich schaus mir morgen nochmal im wachzustand an :)

    nacht allerseits :wink:
    Ne invoces expellare non possis!
  • Es gibt 3 Arten von Variablen (im Gamemaker)

    1. Script-Lokal
    Sie werden am Anfang eines Scriptes mit

    GML-Quellcode

    1. var blabal;
    festgelegt. Sie sind nur in diesem Script gültig.

    2.Objekt-Lokal
    Sie müssen nicht definiert werden, sondern sind direkt benutzbar. Z.B.

    GML-Quellcode

    1. lalala=32;

    3.Global
    Sie müssen nicht definiert werde und sind in allen Räumen und Objekten gültig. Sie werden durch die Vorsilbe global. definiert. Z.B.

    GML-Quellcode

    1. global.singsang="Eine globale Variable";


    Dragoon
    int (*x(*x(int))[5])(int*);
    Confused? Yes, it's C!