Added code for including room header flags and supported actions
svn-id: r23779
This commit is contained in:
parent
0b1c1702a5
commit
09bfa99b95
2 changed files with 13 additions and 6 deletions
|
@ -128,6 +128,8 @@ void read_room_data(byte *&data, uint16 &totalSize)
|
||||||
lure_exe.read(&buffer, sizeof(RoomResource));
|
lure_exe.read(&buffer, sizeof(RoomResource));
|
||||||
|
|
||||||
RoomResourceOutput *rec = (RoomResourceOutput *) (data + offset);
|
RoomResourceOutput *rec = (RoomResourceOutput *) (data + offset);
|
||||||
|
rec->hdrFlags = headerEntry.hdrFlags;
|
||||||
|
rec->actions = FROM_LE_32(buffer.actions);
|
||||||
rec->roomNumber = headerEntry.roomNumber;
|
rec->roomNumber = headerEntry.roomNumber;
|
||||||
rec->descId = headerEntry.descId;
|
rec->descId = headerEntry.descId;
|
||||||
rec->numLayers = buffer.numLayers;
|
rec->numLayers = buffer.numLayers;
|
||||||
|
@ -1128,8 +1130,8 @@ void validate_executable() {
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
const char *inFilename = (argc >= 2) ? argv[1] : "f:\\games\\lure\\lure.exe";
|
const char *inFilename = (argc >= 2) ? argv[1] : "c:\\games\\lure\\lure.exe";
|
||||||
const char *outFilename = (argc == 3) ? argv[2] : "f:\\games\\lure\\lure.dat";
|
const char *outFilename = (argc == 3) ? argv[2] : "c:\\games\\lure\\lure.dat";
|
||||||
|
|
||||||
if (!lure_exe.open(inFilename))
|
if (!lure_exe.open(inFilename))
|
||||||
{
|
{
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
#include "common/endian.h"
|
#include "common/endian.h"
|
||||||
|
|
||||||
#define VERSION_MAJOR 1
|
#define VERSION_MAJOR 1
|
||||||
#define VERSION_MINOR 11
|
#define VERSION_MINOR 12
|
||||||
#define ENGLISH_LURE
|
#define ENGLISH_LURE
|
||||||
|
|
||||||
#define DATA_SEGMENT 0xac50
|
#define DATA_SEGMENT 0xac50
|
||||||
|
@ -103,7 +103,8 @@ struct RoomHeaderEntry {
|
||||||
uint16 offset;
|
uint16 offset;
|
||||||
uint16 roomNumber;
|
uint16 roomNumber;
|
||||||
uint16 descId;
|
uint16 descId;
|
||||||
byte unused[3];
|
uint16 unused;
|
||||||
|
byte hdrFlags;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct HotspotHeaderEntry {
|
struct HotspotHeaderEntry {
|
||||||
|
@ -185,12 +186,13 @@ struct HotspotResourceOutput {
|
||||||
};
|
};
|
||||||
|
|
||||||
struct RoomResource {
|
struct RoomResource {
|
||||||
byte unknown1[6];
|
uint32 actions;
|
||||||
|
uint16 unknown1;
|
||||||
uint16 pixelListOffset;
|
uint16 pixelListOffset;
|
||||||
byte numLayers;
|
byte numLayers;
|
||||||
uint16 layers[4];
|
uint16 layers[4];
|
||||||
uint16 sequenceOffset;
|
uint16 sequenceOffset;
|
||||||
byte unknown3[5];
|
byte unknown2[5];
|
||||||
uint8 walkBoundsIndex;
|
uint8 walkBoundsIndex;
|
||||||
int16 clippingXStart;
|
int16 clippingXStart;
|
||||||
int16 clippingXEnd;
|
int16 clippingXEnd;
|
||||||
|
@ -208,6 +210,9 @@ struct RoomRectOut {
|
||||||
|
|
||||||
struct RoomResourceOutput {
|
struct RoomResourceOutput {
|
||||||
uint16 roomNumber;
|
uint16 roomNumber;
|
||||||
|
uint8 hdrFlags;
|
||||||
|
uint8 unused;
|
||||||
|
uint32 actions;
|
||||||
uint16 descId;
|
uint16 descId;
|
||||||
uint16 numLayers;
|
uint16 numLayers;
|
||||||
uint16 layers[4];
|
uint16 layers[4];
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue