Aus Drag & Drop ordentliches GML machen

  • Aus Drag & Drop ordentliches GML machen

    Hi, der eine oder andere mag glauben ich sei nur zu faul mir selbst die Mühe zu machen das Ganze stückchenweise zu übersetzen aber leider ist mein GML nicht gut genug um jeden Schritt richtig umzuwandeln und selbst wenn ich das schaffen würde, bekäme ich es nie zum Laufen weil ich dann einzelne Zeichen wie (), ; vergessen würde.
    Ich verlange es von keinem aber wenn jemand bereits so routiniert in GML ist das er D&D lesen und GML schreiben kann (wie man das zum Beispiel bei deutsch/englisch machen würde) wäre er mir wirklich eine SuperGroßeHilfe!
    Viellecht gibt es ja auch den einen oder anderen Kniff um das ganze um die Hälfte zu kürzen, wenn ja wäre ich auch hierfür total dankbar.

    Information about object: Inventar_obj

    Sprite: Inventar
    Solid: false
    Visible: true
    Depth: 0
    Persistent: true
    Parent: <no parent>
    Mask: <same as sprite>

    Create Event:
    execute code:

    x_position = x - view_xview[0];
    y_position = y - view_yview[0];

    Mouse Event for Left Released:
    if expression instance_exists(zurueck_obj) is not true
    set variable global.Turn to 0
    execute code:

    instance_create(Kontrollpunkt.x+384, Kontrollpunkt.y+320, Boden_Umrandung)

    instance_create(Kontrollpunkt.x+656, Kontrollpunkt.y+464, zurueck_obj)

    instance_create(Kontrollpunkt.x+400, Kontrollpunkt.y+336, Slot_Boden_frei)

    instance_create(Kontrollpunkt.x+528, Kontrollpunkt.y+336, Slot_Boden)
    instance_create(Kontrollpunkt.x+656, Kontrollpunkt.y+336, Slot_Boden)
    instance_create(Kontrollpunkt.x+400, Kontrollpunkt.y+400, Slot_Boden)
    instance_create(Kontrollpunkt.x+528, Kontrollpunkt.y+400, Slot_Boden)
    instance_create(Kontrollpunkt.x+656, Kontrollpunkt.y+400, Slot_Boden)
    instance_create(Kontrollpunkt.x+400, Kontrollpunkt.y+464, Slot_Boden)
    instance_create(Kontrollpunkt.x+528, Kontrollpunkt.y+464, Slot_Boden)
    if expression global.player_play == 1 is true
    for all Player1: if at relative position (0,0) there is object Schwert
    for all Slot_Boden_frei: change the instance into object Schwert_Boden, not performing events
    if expression instance_exists (Slot_Boden_frei) is not true
    if expression instance_exists (Slot_Boden) is true
    for all Jumper_Boden: move to position (Slot_Boden.x,Slot_Boden.y)
    if expression global.player_play == 2 is true
    for all Player2: if at relative position (0,0) there is object Schwert
    for all Slot_Boden_frei: change the instance into object Schwert_Boden, not performing events
    if expression instance_exists (Slot_Boden_frei) is not true
    if expression instance_exists (Slot_Boden) is true
    for all Jumper_Boden: move to position (Slot_Boden.x,Slot_Boden.y)
    if expression global.player_play == 3 is true
    for all Player3: if at relative position (0,0) there is object Schwert
    for all Slot_Boden_frei: change the instance into object Schwert_Boden, not performing events
    if expression instance_exists (Slot_Boden_frei) is not true
    if expression instance_exists (Slot_Boden) is true
    for all Jumper_Boden: move to position (Slot_Boden.x,Slot_Boden.y)
    if expression global.player_play == 4 is true
    for all Player4: if at relative position (0,0) there is object Schwert
    for all Slot_Boden_frei: change the instance into object Schwert_Boden, not performing events
    if expression instance_exists (Slot_Boden_frei) is not true
    if expression instance_exists (Slot_Boden) is true
    for all Jumper_Boden: move to position (Slot_Boden.x,Slot_Boden.y)
    else
    set variable global.Turn to 1
    for all zurueck_obj: destroy the instance
    for all Schwert_Boden: destroy the instance
    for all Slot_Boden: destroy the instance
    for all Slot_Boden_frei: destroy the instance
    for all Boden_Umrandung: destroy the instance

    Merke gerade es sieht so untereinander in der Information schon wesentlich hübscher aus als im GM selbst:
    Bilder
    • total.JPG

      127,49 kB, 754×1.118, 157 mal angesehen
  • o...keeey... Muss zu meiner Schande gestehen, dass ich nach sowas natürlich nicht gesucht habe.
    Hätte auch nie gedacht das es sowas gibt... werd das gleich mal ausprobieren und gucken ob es seinen Zweck erfüllt... Sollte dennoch jemand eine "Vereinfachung" oder Idee zur Änderung der "Grundstruktur" haben bin ich für Comments dennoch dankbar.

    Falls die Frage aufkommen sollte warum das ganze so kompliziert wenns auch einfacher geht:
    Ich hab bestimmt jedes Inventory Tutorial durchgenommen das es gibt und auch schon 90% aller gängigen Engines dafür gesehen und mich dann doch für ein eigenes System entschieden.
    Dies bringt gleich drei Vorteile mit sich:
    1. Ich muss mir rechtlich keine Gedanken machen und auch niemanden in meinen Credits erwähnen, wenn ich das nicht will.
    2. Es ist mein Inventar und nur zu einem einzigen Sinn und Zweck gemacht, nämlich in meinem Spiel zu funktionieren.
    3. Ich verstehs, vom ersten Create-Event bis zum letzten instance_destroy weiß ich (vielleicht nur ich) warum es da ist und wofür es da ist...und dieses Gefühl hab ich in nun fast zwei Jahren GameMaker bei keiner anderen Inventar-Engine gehabt.

    Wie mein Mathelehrer so gern gesagt hat: Es ist eine Lösung, nicht die beste, nicht die schnellste, nicht die logischte, nicht die schönste, nicht die einfachste und auch nicht die, die ich erwartet hätte - aber eine Lösung.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Jokohono ()

  • Benutzer online 1

    1 Besucher