Ja, ich hab es in der Tat fast komplett neu machen müssen. Wie beschrieben sind nur knapp 20% des Quellcodes übernommen worden. Es geht aber flotter voran beim 2ten Mal weil man neue Kenntnisse gesammelt hat die einem hier zu Gute kommen.Zitat
Ich kenne kein verbreitetes Format welches ich für diese Zwecke nehmen könnte daher hab ich ein eigenes entworfen. Aufgrund der vielen Möglichkeiten die geboten werden sollen passt es zu keinem Format und erfordert eine eigene Methode der Speicherung.Zitat
Da wären Objekte mit einer Vielzahl von Eigenschaften welche alle gespeichert werden müssen (Größe und Form, Farbe, transparenz, textur + Auflösung, Frames und Animationszeiten, Ereignisse bei Berührung/klick und vieles mehr), Texturlisten (Pfadangaben), die Prefabs (werden aber einzeln in eigenen Prefablisten gespeichert), die Karteneinstellung (Größe und Name). Das genaue Format steht noch nicht fest da es ständig in der Weiterentwicklung ist. Ich weiß ja noch nicht genau welche Eigenschaften noch alles zum Objekt hinzu kommen. Demnach würde sich die Menge der zu speichernden Daten ständig ändern, sich jetzt schon festzulegen wäre nicht möglich.
Aber die Dateieindung wird *.mem sein was für "Map Edit! Map" steht. Dies werden auch die ersten 3 Byte in der Datei sein zur Identifizierung dieser (ähnlich wie die Byte "BMP" in der Bitmap-Datei)
Das Dateiformat für die Prefab-Liste sieht dahingegen recht simpel aus. Es werden einfach der Reihe nach die Eigenschaften der Objekte gespeichert. Vorangestellt eine boolsche Variable, welche den Typ angibt (gespeichert mit Textur oder ohne) sowie eine short Variabel welche die Objekt-Name Länge angibt, gefolgt vom Objektnamen selbst. Dann folgen einfach stumpf die Objekteigenschaften durch welche dann beim Platzieren eines Prefabs auch wieder so ausgelesen werden. Eventuell füge ich noch eine eindeutige ID für die Prefabs hinzu, wird sich zeigen ob es ohne auch gut geht.
Also es wird keinerlei Kompatiblität mit dem Maker-Format geben. 1. kenne ich das Format nicht und 2. ist es ein vollkommen anderes als das meine. Ich habe keine Tiles mehr sondern nur noch Objekte, dafür hat der Maker events mit Scriptanweisungen die ich nicht habe. Es passt einfach nicht zusammen. Ebenso würde es keinen Sinn machen, Maker-Maps einladen zu können, da diese sich aus Tiles zusammen setzen. Das in Objekte zu packen wär' entweder ein aufwändiges zusammengeflicke von passenden Tiles zu einem großen Objekt oder man hätte jedes einzelne 16 x 16 pixel Tile als Objekt was wenig Sinn ergibt. Und noch dazu verwende ich derzeit nur *.TGA (targa) Grafiken mit Alphatransparenz als Tilesets. PNG wird später vielleicht noch hinzugefügt.