27.09.2007, 23:00
Vielleicht hilft Euch das hier ja weiter...
Code:
ACE-Datei-Format (ab Version 1.06)
1. Ace-Header:
char Label[4] = "ACE\0"; // Kennbytes
int Version = 1; // Versions-Nummer
UByte Sequences; // 0..250
UByte Speed; // 0..99
2. a. falls (Sequences == 1): Ass-Header (Ace-Single-Sequence-Header):
int CelWidth; // Größe der Cels
int CelHeight;
UByte Amount; // Anzahl der Cels
UByte PlayMode; // Abspielmodus
b. sonst: [Sequences] mal: Sequence-Header:
long Offset; // Seek-Offset zur Sequenz
int Label; // Kenn-Nummer der Sequenz
int CelWidth; // Größe der Cels
int CelHeight;
int HotSpotX; // Koordinaten des Hot-Spots (< 0!)
int HotSpotY;
UByte Amount; // Anzahl der Cels
UByte PlayMode; // Abspielmodus
3. [Sequences] * [Amount] mal:
a. NewCelHeader:
long Size; // Größe der Cel-Daten int XOffset; // Position des Frames in der Cel
int YOffset;
int Width; // Größe des Frames in der Cel
int Height;
UByte Compression; // verwendeter Packer
UByte Action; // Action-Button der Cel
b. [Size] Bytes;
4. Farbpalette:
768 Bytes; // 256 Farben * 3 Farbtöne