62 lines
1.4 KiB
C++
62 lines
1.4 KiB
C++
// TexturePaletteRecord.h
|
|
|
|
#ifndef __FLT_TEXTURE_PALETTE_RECORD_H
|
|
#define __FLT_TEXTURE_PALETTE_RECORD_H
|
|
|
|
|
|
#include "opcodes.h"
|
|
#include "Record.h"
|
|
#include "RecordVisitor.h"
|
|
|
|
|
|
namespace flt {
|
|
|
|
|
|
struct STexturePalette
|
|
{
|
|
SRecHeader RecHeader;
|
|
char szFilename[200]; // Filename of texture pattern
|
|
int32 diIndex; // Pattern index
|
|
int32 diX; // x location in texture palette
|
|
int32 diY; // y location in texture palette
|
|
};
|
|
|
|
|
|
// Version 10, 12, 13
|
|
struct SOldTexturePalette
|
|
{
|
|
SRecHeader RecHeader;
|
|
char szFilename[80]; // Filename of texture pattern
|
|
int32 diIndex; // Pattern index
|
|
int32 diX; // x location in texture palette
|
|
int32 diY; // y location in texture palette
|
|
};
|
|
|
|
|
|
class TexturePaletteRecord : public AncillaryRecord
|
|
{
|
|
public:
|
|
|
|
TexturePaletteRecord();
|
|
|
|
virtual Record* clone() const { return new TexturePaletteRecord(); }
|
|
virtual const char* className() const { return "TexturePaletteRecord"; }
|
|
virtual int classOpcode() const { return TEXTURE_PALETTE_OP; }
|
|
virtual size_t sizeofData() const { return sizeof(STexturePalette); }
|
|
virtual void accept(RecordVisitor& rv) { rv.apply(*this); }
|
|
// virtual void traverse(RecordVisitor& rv);
|
|
|
|
protected:
|
|
|
|
virtual ~TexturePaletteRecord();
|
|
|
|
virtual void endian();
|
|
};
|
|
|
|
|
|
}; // end namespace flt
|
|
|
|
#endif
|
|
|
|
|