Variablen/Objekt ganz löschen

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

    • Variablen/Objekt ganz löschen

      Hallo zusammen,

      ich hab mal wieder ein Problem. Nun, um das genauer zu erläutern erklär ich erstmal was ich bisher gemacht habe.

      Ich hab ein Objekt per "drag&drop" (also nicht via code) erstellt (hab es mal obj_test genannt). Dann hab ich das Objekt auf persistent geschalten. Nun habe ich im Create Event (obj_test) via Code weitere Objekte erstellt.. das sieht so aus :

      obj_meinobjekt = object_add();

      Jetzt habe ich beim obj_meinobjekt ein Befehl hinzugefügt (auch im Create) der Grafiken extern reinläd.. also sowas hier :

      spr_test = sprite_add(...);

      soweit so gut. Nun habe ich auch noch zwei Räume erstellt. In einem Raum habe ich diese Instanz obj_meinobjekt (auch via code) erstellt damit er dort die Grafik reinläd.
      Wenn ich jetzt den Raum zurück wechsel zu dem wo gar keine Instanz (halt nur die obj_test die ja persistent ist) ertellt wurde, leert er den Grafikspeicher einfach nicht aus. Irgendwie sind die Grafiken immer noch im Grafikspeicher obwohl die Instanz gar nicht vorhanden ist. So, nun dachte ich mir ich bastel ein Script mit dem ich einfach via object_delete(...) das ganze objekt lösche (also das obj_meinobjekt). Geht aber nicht.. er löscht anscheinend das Objekt, aber irgendwie leert er immer noch nicht den Grafikspeicher.

      Ich hab mir auch mal bei Debug-Modus die Localen Variablen von obj_test angesehen.. dort wird egal was ich mache die Variable bzw. das Objekt "obj_meinobjekt" einfach nicht ganz gelöscht.
      Wenn ich den Befehl object_delete() benutze steht dort dann -4, verschwindet aber nicht ganz.

      Kann man irgendwie Objekte oder Variablen ganz raus löschen ? Weil anscheined leert er für das Objekt anscheinend nicht den Grafikspeicher... ;(
    • Ich glaube da verwechselst du was. Objekte liegen überhaupt nicht im Grafikspeicher vor, sondern nur sprites und backgrounds. Objekte sind lediglich Beschreibungen für den Aufbau und das Verhalten derer Instanzen. Es reicht also nicht das Objekt zu löschen, sondern du musst auch die sprites und backgrounds mit sprite_delete bzw. background_delete löschen. Praktisch wäre in deinem Fall im Objekt "obj_meinobjekt" in dem "Room End"-Event die Ressourcen löschen zu lassen.