Instance Change mit der selben Taste

  • GM 8

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

  • Instance Change mit der selben Taste

    Hallo Leute,
    ich habe ein Problem mit Change Instance, ich würde es gerne so machen, dass wenn ich z.B. W drücke, dass sich mein Objekt in ein anderes Objekt verwandelt und wenn ich wieder W drücke soll es sich zurück verwandeln.
    Bei mir funktioniert das einfach nicht, ich habe mal irgendwas mit Variablen gelesen aber ich verstehe das einfach nicht. :(
    Bitte um Hilfe und vielen Dank für eure hoffentlich hilfreichen antworten! :)
    Wer Fehler findet darf sie behalten! :D
  • Ja du musst vor instance_change ein variable wie vogel = 1 definieren

    GML-Quellcode

    1. if vogel = 1
    2. {
    3. instance_change(obj_mensch, true)
    4. exit;
    5. }
    6. if vogel = 0
    7. {
    8. instance_change(obj_vogel, true)
    9. exit;
    10. }


    Ich hatte oft das Problem dass er dann im "gechangden" Object wieder da sW Event ausführt und sich sofort zurückverwandelt, aber mit dem exit sollte das gelöst sein.

    PS: dass musss in einem Release-Key Event drin sein

    out now: KNOSSOS auf itch.io
    ancient-pixel.com <<< ich freue mich über einen Besuch! ^^
  • Ersteinmal vielen Dank für die Antwort!
    Ich blicke da irgendwie nicht durch wenn überhaupt schaff ich das, dass es sich einmal in das andere Objekt verwandelt aber nicht wieder zurück.
    Muss ich den Code irgendwie in beide Objekte einfügen oder nur in eins? Brauch ich eigentlich sowas :action_variable: dafür, ne oder?
    Wer Fehler findet darf sie behalten! :D
  • Ahso...du machst das mit drag and drop

    Also, du brauchst den Code in beiden Objekten, zB Object Mensch und Object Vogel für das release- W- Event

    • vogel = 1
    • Mensch
    • perform Events yes
    • vogel = 1
    • Vogel, perform Events yes
    Im Create Event von Vogel musst du die Variable Vogel auf Eins stellen

    • Vogel = 1
    Und im Create Event von Mensch musst du die Variable auf Null stellen
    Vogel = 0
    Ich hoffe das war jetzt verständlicher...ansonsten könntest du mir auch die gmk datei hochladen und ich sehs mir mal an und schicks dir gemacht und kommentiert zurück

    out now: KNOSSOS auf itch.io
    ancient-pixel.com <<< ich freue mich über einen Besuch! ^^
  • Vielen dank für deine Antwort, sie hat mich schon ein Stück weitergebracht du hast es sehr verständlich gemacht!
    Das leider weitere Problem ist wenn ich bei beiden Objekten das Event Mouse Left Release verwende funktioniert es nicht aber wenn ich Mouse Left Pressed für ein Objekt nehme und für das andere Mouse Left Release nehme funktioniert es. Das ding ist aber wenn ich das so mache, verwandelt es sich sofort wieder zurück!
    Was kann ich da machen? :)

    Hier noch das im Dateianhang, dass wenn du möchtest es mir somit präsentieren/demonstriren kannst(es ist die gmk Datei).

    MFG KampfPanda
    Dateien
    • Test.zip

      (9,91 kB, 179 mal heruntergeladen, zuletzt: )
    Wer Fehler findet darf sie behalten! :D
  • Ok...also ich hab es jetzt noch ein wenig anders gelöst (war auch wieder eine gute Auffrischungsübung für mich^^) In den Objekten ist nun ein Delay eingebaut der erst einen Step nach erstellen des neuen Objektes auch die variable umstellt...und ich hab dir die variable global gemacht, falls du auch mal von wo anderst dann auf die Objekte zugreifen willst :)
    Dateien
    • Test.zip

      (9,83 kB, 176 mal heruntergeladen, zuletzt: )

    out now: KNOSSOS auf itch.io
    ancient-pixel.com <<< ich freue mich über einen Besuch! ^^