Die klassische Mega Man-Serie von NES verwendet eine sehr spezielle Bildlauf-Technik, bei der es mir schwer fällt, mich auf die Implementierung einzulassen. Im Wesentlichen ist die Ebene in "Bildschirme" unterteilt, die alle die gleiche Größe haben. Einige Bildschirme rollen nahtlos ineinander und erwecken den Eindruck eines größeren Spielfelds. Einige Bildschirme verhindern das Scrollen der Kamera, bis der Player den Rand des Bildschirms erreicht hat. Zu diesem Zeitpunkt erfolgt ein Übergang, und der nächste Bildschirm wird angezeigt. Es ist auch möglich, dass ein einzelner Bildschirm mehr als eine Überblendung hat, zum Beispiel eine Leiter, die zu einem Bildschirm führt, aber Sie können auch vorwärts zu einem anderen Bildschirm gehen.
Wie können diese Bildschirmübergänge modelliert werden?
- Bildschirm 0 ist der Startbildschirm, auf dem der Player gestartet wird.
- Bildschirm 0-3 rollt horizontal reibungslos und erscheint dem Spieler als ein kontinuierliches Spielfeld.
- Da es einen Übergang zwischen Bildschirm 3 und den benachbarten Bildschirmen 4 und 5 gibt, bewegt sich die Kamera nicht über den rechten oder oberen Rand von Bildschirm 3 hinaus, es sei denn, der Player bewegt sich zu diesem jeweiligen Rand und "schiebt" sich zum nächsten Bildschirm durch.
Sobald sich der Player an einer der Überblendungskanten befindet, wird die Benutzereingabe vorübergehend deaktiviert und die Kamera wechselt in den neuen Bereich. Danach wird die Benutzereingabe wiederhergestellt.
Der blaue Bildschirm (Bildschirm 5) hat das horizontale Scrollen deaktiviert, sodass nur vertikale Übergänge möglich sind.
- Der grüne Bildschirm (Bildschirm 6) hat einen vertikalen Übergang zurück zu Bildschirm 5, ermöglicht jedoch auch ein horizontales ruckelfreies Scrollen in Bildschirm 7.
Edit : Das Implementieren der Übergänge in Bezug auf Räume führt mich dazu:
Die kleinen Kerben mit einem Pfeil sind die Bereiche, in denen ein Übergang auftreten kann. Jede Region hat eine „Richtung“ und liegt nur außerhalb des sichtbaren Bereichs des Raumes. Sobald der Spieler eine Region erreicht, wird ein Übergang gestartet.