Files

1.3 KiB

Texture Animation

L42 is a table containing animation information for textures. 4 entries are stored in this table.

The Animation Group field of the Texture Properties specifies the index into this table. A wall that has such a texture set will use further textures. According to the Number of frames field of this table entry, more textures are used from the Texture Map.

Meaning, if the level uses texture X which has an animation group set, the corresponding animation entry specifies how many further textures are used for this animation. These then have all to be next to each other in the texture map.

The properties of the first texture determine how the remaining will behave (climbable, ...)

Since most textures have their animation group set to 0x00 and have no animation, the first entry in this table is unused and the bytes always 0.

Animation Entry (7 bytes)

0000  int16  Frame time (in milliseconds)
0002  int16  Current frame time
0004  byte   Current frame index
0005  byte   Number of frames for loop
0006  byte   Loop type/Loop state

Loop Type (1 byte)

0x00  Loop forward
0x01  Loop forth-and-back (forward state)
0x81  Loop forth-and-back (backward state)