mit mehreren Tilesets auf ein array malen

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

Freeman

Betreff: mit mehreren Tilesets auf ein array malen

BeitragMo, Mai 23, 2005 20:44
Antworten mit Zitat
Benutzer-Profile anzeigen
hi

ich möche mit mehreren tilesets auf ein array malen.das ist an und für sich ganz easy, klappt auch.
Leider gibt es da ein problem. bsp:
tileset1 = 900tiles
tileset2= 400 tiles

die map wurde mit tileset1 gemalt,wenn ich jetzt tileset2 hinzufüge gibt es natürlicher weise einen fehler da es tiles gibt (wegen der tileanzahl) die nicht auf tileset2 enthalten sind. Mein anliegen ist es jetzt so eine arte haupttileset zu bestimmen. Die frage ist wie, weil ich möchte weiterhin auf ein array malen. Geht das überhaupt wenn ich mehrere tiles nutze? Wäre toll wenn mir jemand nen hinweis geben könnte.

FrEeMaN
MacBook | MacOSX 10.5 | 80GB HDD | 1GB | BlitzMax 1.28
 

Dreamora

BeitragMo, Mai 23, 2005 20:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Das "wie" kommt darauf an, wie du es in deiner Struktur handhabst.

An sich ist es ganz einfach, indem du am einfachsten "unerlaubte Tile Indizes" einfach mit dem "leeres Tile" Index überschreibst.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Alfadur

BeitragDi, Mai 24, 2005 17:35
Antworten mit Zitat
Benutzer-Profile anzeigen
versteh ich dich richtig, du malst dir eine karte mit 2 unterschiedlichen tilesets und möchtest dann aus der karte heraus ein tileset erstellen das alle tiles beinhaltet die in der karte vorkommen? also pro karte ein tileset quasi!?
A Cray is the only computer that runs an endless loop in less than four hours.

Freeman

BeitragDi, Mai 24, 2005 17:44
Antworten mit Zitat
Benutzer-Profile anzeigen
ne ich male mit 1 tileset auf einem array, jetztr füge ich mehrere Tilesets hinzu. allerdings klappt das nur solange wenn ich auf dem array kein tile nutze was zahlmäßig irgendeinanderes Tileset überschreitet. Verstehst du? ich suche eben nach einer Lösung. Hab schon probiert die tileanzahl der tilesets zu ändern klappt aber nich denn wenn der mapedi auf diese tiles zugreifen möchte gibt es natürlicherweise ein Fehler....
Deshalb suche ich jetzt nach einer methode um dieses Tile problem zu lösen
MacBook | MacOSX 10.5 | 80GB HDD | 1GB | BlitzMax 1.28

Jolinah

BeitragDi, Mai 24, 2005 21:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Dann prüf einfach in welchem Bereich du bist und zeichne je nachdem ein anderes Tileset. Um die richtigen Framenummern des Tilesets zu bekommen ziehst du von dem Wert einfach soviel ab bis du mit der ersten Nummer des Bereiches auf 0 kommst.


Code: [AUSKLAPPEN]

Local map:Int[,]
map = LoadMap() 'Daten in das Array füllen

...

Function Draw()
  ...
  If map[x, y] > 0 and map[x, y] <= 200

    DrawImage tileset1, x * tilew, y * tileh, map[x, y] - 1
 
  ElseIf map[x, y] > 200 and map[x, y] <= 400

    DrawImage tileset2, x * tilew, y * tileh, map[x, y] - 201

  Endif
  ...
End Function


Oder hab ich dich falsch verstanden? Wink

Freeman

BeitragDi, Mai 24, 2005 21:33
Antworten mit Zitat
Benutzer-Profile anzeigen
man du hst recht! ich danke dir !

Freeman
MacBook | MacOSX 10.5 | 80GB HDD | 1GB | BlitzMax 1.28

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group