"Unknown variable", das kann aber nicht sein ... oder doch?

  • GM 8

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

  • "Unknown variable", das kann aber nicht sein ... oder doch?

    Ich war gerade dabei eine kleine und routinierte Sache zu programmieren.
    Sprich, ich hab zur einer bereits funktierenden Sache noch etwas hinzufügen wollen.

    Mein Programmteil sieht folgendermaßen aus:

    obj_Item ist ein parent von obj_Helm01.

    Im create-Event von obj_Item steht stand folgendes:

    GML-Quellcode

    1. // ####################################################
    2. // # Setzen der parent-Variablen für die Itemobjekte. #
    3. // ####################################################
    4. var self.relX = global.kX; // Rucksack-X-Koordinate setzen
    5. var self.relY = global.kY; // Rucksack-Y-Koordinate setzen
    6. var self.slotID = global.iSlot; // Position im Inventar setzen
    7. var self.relMX = 0; // (noch benutzt?)
    8. var self.relMY = 0; // (noch benutzt?)
    9. var self.mouseOver = 0; // 1 für Mauszeiger ist über dem Objekt
    10. var self.remove = 0;
    Alles anzeigen


    Nun steht im left mouse button released - Event ein langer Code, der die obigen Variablen miteinschließt.
    Einige wenige Zeilen am Ende hießen:

    GML-Quellcode

    1. if ((mouseOver == 1) && (collision_point(mouse_x, mouse_y, obj_emptyEq_all, false, true) >= 0))
    2. {
    3. ...
    4. }


    Hat alles geklappt.
    Nun habe ich das create um eine Variable erweitert:

    GML-Quellcode

    1. var self.eqPos = 0;


    und im mouse-Event, die Zeilen verändert nach:

    GML-Quellcode

    1. if ((mouseOver == 1) && (collision_point(mouse_x, mouse_y, obj_emptyEq_all, false, true) >= 0) && (eqPos < 8))
    2. {


    Führe ich nun alles aus, sagt er mir, er kennt die Variable eqPos nicht. Ersetze ich eqPos aber durch eine der anderen Variablen, funktioniert der Code (natürlich sinnfrei dann). Ändere ich den Namen von eqPos, gehts allerdings nicht!

    Total verrückt.
    Habe schon den GameMaker neu gestartet, hilft alles nicht.

    grüße
    naibaf77
    True story!
  • Nein, durch das self. bleiben sie erhalten, habe das auch im debugg-modus schon nachvollzogen. die anderen variablen habe ich ja auch mit var erstellt. bei denen klappt es ja komischweise auch ... :-/

    [Zusammengeschoben von xxskxx]

    Ich bin total am verzweifeln.

    Im Objekt Helm_02, steht im create-Event:

    "call the inherited event"
    "execute a piece of code"

    Im Code steht echt folgendes:

    GML-Quellcode

    1. var self.ITEM_ID = 1001;
    2. var self.eqPos = 4;


    Die Obere Variable kann ich im parent-objekt im mouse-event benutzen, die untere (nachträglich hineingeschrieben) nicht! Was zur Hölle soll der Mist?
    Ich probiere schon die ganze Zeit herum -.-

    Hat jemand einen Plan, was da schief gelaufen sein kann?
    True story!