Landkarte Problem

  • Landkarte Problem

    Hallo! :)
    Also: Ich hab da so eine Landkarte, in der ich Levels aussuchen kann!
    Ungefähr so: (P=Player)
    >----P------1--------2--------3-------4--------5
    usw...
    Der Player kann zuerst Level 1, dann Level 2 dann 3 dann 4 dann 5 machen!
    So, jetzt meine Frage: Wie kann ich es machen, dass ich erst zu Level 2 kann wenn ich Level 1 gemacht habe! Also Level 2 erst aussuchen, wenn ich Level 1 gemacht habe!
    Und Level 3 erst wenn ich Level 2 gemacht hab ?( (ohne für jedes Level 1 Extra Variable zu machen)
    Wie kann ich das machen ?(
    Danke schon mal für alle Antworten! :)
  • ich würde das mit global lösen, also erst wenn global.2level=true ist, das der spieler sich bewegen darf.

    Also im creat event(von der Person die sich bewegt:

    GML-Quellcode

    1. global.2level=false global3=false


    Im step event:

    GML-Quellcode

    1. If keyboard_check_pressed(vk_right) //oder was auch immer
    2. {if global2level=true{deine Aktion}}


    Ich weiss nicht ob das richtig ist aber ich schätz einmal
  • jo, das ist nich mein Problem! Aber wie kann ich es machen, dass wenn ich ein Level schaffe, das ich dann auf der Landkarte das 2te machen kann?
    Das heißt: Ein Block verhindert den Weg zu Level2! Wenn ich Level 1 Schaffe wird dieser Block im anderen Room zerstört! Wie mache ich das?
  • Du benutzt in deinen Problembeschreibung die ganze zeit "Wenn"...
    Auf Englisch übersetzt heißt das "if".
    Also arbeite an besagten Stellen einfach mit einer if-Abfrage.
    Könntest zb. eine globale Level-Variable bei jedem Levelende erhöhen und bei der Auswahl abfragen ob die Level-Variable hoch genug ist.
  • Jo, daran hab ich auch schon gedacht, nur if ich dann ein Level 2 mal mache, wird sie wieder ehöht! Also mache ich das 1te Level 2 mal, dann kann ich sofort ins dritte! :rolleyes:
    Aber: könnte ich als "Stopper" der in der Landkarte das zum Level 2 gehen verhindert nicht invisible und Presistent machen? Dann würde er im Level auch sein und ich könnte ihn zerstören wenn ich das Level beendet hab!
  • Du musst ja nicht mit
    global.level+=1
    arbeiten, mach einfach dass wenn Level 2 geschafft:
    if (global.level<2)
    global.level=2

    damit wird verhindert, dass sie zu hoch wird aber auch, das Fortschritte gelöscht werden.
    ___________________________________________________________
    Beware of wild pointers
    ______Hinweis für Allergiker: Kann Spuren von Ironie enthalten_____
  • Sowie Spellmaker hätte ich das auch gelöst.
    Ich weis nicht wie du die Blöcke realisierst, aber anscheinend mit Objekten, dann setzt doch einfach in Block, der level 2 sperrt:
    Creat-Event:

    GML-Quellcode

    1. if (global.level>=2){instance_destroy()}


    Und schon hast dus.



  • Benutzer online 1

    1 Besucher