Registriert seit: 22. Dez 2003
544 Beiträge
Delphi 2006 Professional
|
Re: [DelphiX] Im RPG die Karte flüssig bewegen...
24. Jul 2005, 12:24
Also, da das eine Basisfrage von Tile-Scrolling-Lösungen ist, solltest Du erstmal googlen.
Aber in Kurzform so:
- Du hast ein Array mit der Map
- z.B. ist ein Tile 32x32 Pixel groß
- die in jedem Durchlauf zu zeichnende Map hat oben, unten, links und rechts jeweils eine zusätzliche Tilereihe, die man erstmal nicht sieht (der zu zeichnende Teil ist ein Ausschnitt aus dem Maparray)
- Du startest bei "vollen" Positionen, also erstes Tile bei x=0, nächstes bei x=32, etc.
- bewegt sich jetzt Deine Figur bzw. Deine Map, zeichnest Du alle Tiles (auch die unsichtbaren) mit dem entsprechenden Offset - also z.B. (2 Tiles) Tile[1] X=0-1, Tile[2] X=32-1 etc.
- hast Du einen vollen Tiledurchlauf (also 32 Pixel in diesem Beispiel) setzt Du den Offset auf 0 und jetzt das Wichtigste die zu zeichnenden Tiles im Array eins weiter. In dem Beispiel wird dann daraus: Tile[2] X=0 und Tile[3] X=32
Ich hoffe, Du verstehst: Im Offsetzzyklus verschiebst Du die aktuellen Tiles der Map, ist dieser Zyklus durch, änderst Du die anzuzeigenden Tiles um 1.
Gruß Igotcha
|