Objekt nur einmal erstellen.

  • GM 8
  • Objekt nur einmal erstellen.

    Hallo, zuerst einmal ich bin blutiger anfänger auch wenn mein erster Eintrag schon über ein Jahr her ist. Ich hatte aufgehört mit Gamemaker. :thumbdown:
    Ich besitze lediglich die Lite Version von Gamemaker 8.1. Im Forum hab ich nirgends den gleichen Fehler gefunden also scheint es auch ein Anfängerfehler zu sein.

    Das Game ist aufgebaut wie SuperMario.

    Mein Problem ist: Meine Figur sammelt durch berühren eines Gegenstandes diesen auf.
    Jetzt wird er im Rucksack angezeigt. (Es wird als Objekt angezeigt und da hinter die Anzahl)
    Der Rucksack ist allerdings nich im Menü aufzurufen sondern "klappt auf" wenn man sein Symbol im bildschirm drückt.
    Ist der Rucksack offen kann man allerdings noch weiter laufen, man sieht lediglich die bilder der eingesammelten objekte und eben deren Anzahl.
    Wenn man allerdings läuft wird immer wieder eine bild-Objekt des sich im Rucksack befinden Objekts erstellt.

    schwer zu erklären deshalb ein bsp.:
    Mein "SuperMario" läuft auf einen am boden liegenden Pilz zu. Er berührt ihn und dieser verschwindet. Und zwar als neues Objekt in sein Rucksack. Öffnet man nun den Rucksack und läuft nach links oder Rechts wird das bild verfielfacht, und zwar mit jedem Schritt einmal mehr, in die Richtung die man läuft und im selben Tempo. Die Zahl hinter dem bild die die Anzahl der aufgesammlten Objekte angibt bleibt jedoch gleich. Klickt man nun auf das im Rucksack befindene Objekt, Springt die Zahl eins tiefer und das bild verfielfältigt sich nichtmehr beim laufen. Die andern verfielfältigten bilder bleiben allerdings bestehen bis man auch diese anklickt.

    Wie schaffe ich es dass das Objekt im Rucksack nur einmal erstellt wird?

    Ich vermute das mein Fehler hierin liegt, ich habe:
    • If global nr_pilz is larger than 0
    • Create Instance to Object Pilz
    Also ich hab kein befehl der sagt: wenn das bild bereits vorhanden ist, hör auf es nochmal zu erstellen.
    nur eben das wenn du mehr als null Pilze aufgesammelt hast, erstell ein bild im rucksack
    Tausend dank im vorraus, ich hab mir schon den Kopf zerbrochen :headtouch:
  • also ich bin zwar auch noch nicht so lange mit dem game maker vertraut aber ich versuchs mal :rolleyes:

    als erstes stellst du einfach bei irgenteinen objekt, im create-event, diese variable auf:
    :action_variable: set variable global.can_draw to 0

    dann zum rest:
    :action_ifvariable: if global.nr_pilz is larger than 0
    :action_begin:
    :action_ifvariable: if global.can_draw is equal to 0
    :action_begin:
    :action_create: create instance to object pilz
    :action_variable: set variable global.can_draw to 1
    :action_end:
    :action_end:
    :action_ifvariable: if global.nr_pilz is not larger than 0
    :action_begin:
    :action_variable: set variable global.can_draw to 0
    :action_end:

    hoffe es ist verständlich erklärt :rolleyes: