Initial commit
This commit is contained in:
219
devtools/create_cryo/create_cryo_dat.cpp
Normal file
219
devtools/create_cryo/create_cryo_dat.cpp
Normal file
@@ -0,0 +1,219 @@
|
||||
/* ScummVM - Graphic Adventure Engine
|
||||
*
|
||||
* ScummVM is the legal property of its developers, whose names
|
||||
* are too numerous to list here. Please refer to the COPYRIGHT
|
||||
* file distributed with this source distribution.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include "eden.h"
|
||||
#include "eden_icons.h"
|
||||
#include "eden_rooms.h"
|
||||
#include "eden_static.h"
|
||||
|
||||
#define CRYO_DAT_VER 1 // 32-bit integer
|
||||
|
||||
template <typename T>
|
||||
static void writeLE(FILE *f, T value) {
|
||||
for (unsigned int i = 0; i < sizeof(value); i++, value >>= 8) {
|
||||
unsigned char b = value & 0xFF;
|
||||
fwrite(&b, 1, 1, f);
|
||||
}
|
||||
}
|
||||
|
||||
static void writeByte(FILE *f, byte value) {
|
||||
fwrite(&value, 1, 1, f);
|
||||
}
|
||||
|
||||
struct _icon_t : icon_t {
|
||||
void write(FILE *f) const {
|
||||
writeLE<int16>(f, sx);
|
||||
writeLE<int16>(f, sy);
|
||||
writeLE<int16>(f, ex);
|
||||
writeLE<int16>(f, ey);
|
||||
writeLE<uint16>(f, cursor_id);
|
||||
writeLE<unsigned int>(f, action_id);
|
||||
writeLE<unsigned int>(f, object_id);
|
||||
}
|
||||
};
|
||||
|
||||
static void emitIcons(FILE *f) {
|
||||
const _icon_t *icons = (const _icon_t*)gameIcons;
|
||||
for (int i = 0; i < kNumIcons; i++)
|
||||
icons[i].write(f);
|
||||
}
|
||||
|
||||
struct _room_t : room_t {
|
||||
void write(FILE *f) const {
|
||||
writeByte(f, ff_0);
|
||||
writeByte(f, exits[0]);
|
||||
writeByte(f, exits[1]);
|
||||
writeByte(f, exits[2]);
|
||||
writeByte(f, exits[3]);
|
||||
writeByte(f, flags);
|
||||
writeLE<uint16>(f, bank);
|
||||
writeLE<uint16>(f, party);
|
||||
writeByte(f, level);
|
||||
writeByte(f, video);
|
||||
writeByte(f, location);
|
||||
writeByte(f, background);
|
||||
}
|
||||
};
|
||||
|
||||
static void emitRooms(FILE *f) {
|
||||
const _room_t *rooms = (const _room_t*)gameRooms;
|
||||
for (int i = 0; i < kNumRooms; i++)
|
||||
rooms[i].write(f);
|
||||
}
|
||||
|
||||
static void emitStatic(FILE *f) {
|
||||
const int kNumFollowers = 15;
|
||||
const int kNumLabyrinthPath = 70;
|
||||
const int kNumDinoSpeedForCitaLevel = 16;
|
||||
const int kNumTabletView = 12;
|
||||
const int kNumPersoRoomBankTable = 84;
|
||||
const int kNumGotos = 130;
|
||||
const int kNumObjects = 42;
|
||||
const int kNumObjectLocations = 45;
|
||||
const int kNumPersons = 58;
|
||||
const int kNumCitadel = 7;
|
||||
const int kNumCharacterRects = 19;
|
||||
const int kNumCharacters = 20;
|
||||
const int kNumActionCursors = 299;
|
||||
const int kNumAreas = 12;
|
||||
|
||||
for (int i = 0; i < kNumFollowers; i++) {
|
||||
writeByte(f, followerList[i]._id);
|
||||
writeByte(f, followerList[i]._spriteNum);
|
||||
writeLE<int16>(f, followerList[i].sx);
|
||||
writeLE<int16>(f, followerList[i].sy);
|
||||
writeLE<int16>(f, followerList[i].ex);
|
||||
writeLE<int16>(f, followerList[i].ey);
|
||||
writeLE<int16>(f, followerList[i]._spriteBank);
|
||||
writeLE<int16>(f, followerList[i].ff_C);
|
||||
writeLE<int16>(f, followerList[i].ff_E);
|
||||
}
|
||||
|
||||
fwrite(kLabyrinthPath, 1, kNumLabyrinthPath, f);
|
||||
fwrite(kDinoSpeedForCitaLevel, 1, kNumDinoSpeedForCitaLevel, f);
|
||||
fwrite(kTabletView, 1, kNumTabletView, f);
|
||||
fwrite(kPersoRoomBankTable, 1, kNumPersoRoomBankTable, f);
|
||||
fwrite(gotos, 5, kNumGotos, f); // sizeof(Goto)
|
||||
|
||||
for (int i = 0; i < kNumObjects; i++) {
|
||||
writeByte(f, _objects[i]._id);
|
||||
writeByte(f, _objects[i]._flags);
|
||||
writeLE<int>(f, _objects[i]._locations);
|
||||
writeLE<uint16>(f, _objects[i]._itemMask);
|
||||
writeLE<uint16>(f, _objects[i]._powerMask);
|
||||
writeLE<int16>(f, _objects[i]._count);
|
||||
}
|
||||
|
||||
for (int i = 0; i < kNumObjectLocations; i++) {
|
||||
writeLE<uint16>(f, kObjectLocations[i]);
|
||||
}
|
||||
|
||||
for (int i = 0; i < kNumPersons; i++) {
|
||||
writeLE<uint16>(f, kPersons[i]._roomNum);
|
||||
writeLE<uint16>(f, kPersons[i]._actionId);
|
||||
writeLE<uint16>(f, kPersons[i]._partyMask);
|
||||
writeByte(f, kPersons[i]._id);
|
||||
writeByte(f, kPersons[i]._flags);
|
||||
writeByte(f, kPersons[i]._roomBankId);
|
||||
writeByte(f, kPersons[i]._spriteBank);
|
||||
writeLE<uint16>(f, kPersons[i]._items);
|
||||
writeLE<uint16>(f, kPersons[i]._powers);
|
||||
writeByte(f, kPersons[i]._targetLoc);
|
||||
writeByte(f, kPersons[i]._lastLoc);
|
||||
writeByte(f, kPersons[i]._speed);
|
||||
writeByte(f, kPersons[i]._steps);
|
||||
}
|
||||
|
||||
for (int i = 0; i < kNumCitadel; i++) {
|
||||
writeLE<int16>(f, _citadelList[i]._id);
|
||||
for (int j = 0; j < 8; j++)
|
||||
writeLE<int16>(f, _citadelList[i]._bank[j]);
|
||||
for (int j = 0; j < 8; j++)
|
||||
writeLE<int16>(f, _citadelList[i]._video[j]);
|
||||
}
|
||||
|
||||
for (int i = 0; i < kNumCharacterRects; i++) {
|
||||
writeLE<int16>(f, _characterRects[i].left);
|
||||
writeLE<int16>(f, _characterRects[i].top);
|
||||
writeLE<int16>(f, _characterRects[i].right);
|
||||
writeLE<int16>(f, _characterRects[i].bottom);
|
||||
}
|
||||
|
||||
fwrite(_characterArray, 5, kNumCharacters, f);
|
||||
|
||||
for (int i = 0; i < kNumAreas; i++) {
|
||||
writeByte(f, kAreasTable[i]._num);
|
||||
writeByte(f, kAreasTable[i]._type);
|
||||
writeLE<uint16>(f, kAreasTable[i]._flags);
|
||||
writeLE<uint16>(f, kAreasTable[i]._firstRoomIdx);
|
||||
writeByte(f, kAreasTable[i]._citadelLevel);
|
||||
writeByte(f, kAreasTable[i]._placeNum);
|
||||
// pointer to _citadelRoomPtr is always initialized to null
|
||||
writeLE<int16>(f, kAreasTable[i]._visitCount);
|
||||
}
|
||||
|
||||
for (int i = 0; i < 64; i++) {
|
||||
writeLE<uint16>(f, tab_2CEF0[i]);
|
||||
}
|
||||
|
||||
for (int i = 0; i < 64; i++) {
|
||||
writeLE<uint16>(f, tab_2CF70[i]);
|
||||
}
|
||||
|
||||
fwrite(kActionCursors, 1, kNumActionCursors, f);
|
||||
fwrite(mapMode, 1, 12, f);
|
||||
fwrite(cubeTextureCoords, 6 * 2 * 3 * 2, 3, f);
|
||||
}
|
||||
|
||||
static int emitData(char *outputFilename) {
|
||||
FILE *f = fopen(outputFilename, "w+b");
|
||||
if (!f) {
|
||||
printf("ERROR: Unable to create output file %s\n", outputFilename);
|
||||
return 1;
|
||||
}
|
||||
|
||||
printf("Generating %s...\n", outputFilename);
|
||||
|
||||
fwrite("CRYODATA", 8, 1, f);
|
||||
writeLE<uint32>(f, CRYO_DAT_VER);
|
||||
|
||||
emitIcons(f);
|
||||
emitRooms(f);
|
||||
emitStatic(f);
|
||||
|
||||
fclose(f);
|
||||
|
||||
printf("Done!\n");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
|
||||
if (argc > 1)
|
||||
return emitData(argv[1]);
|
||||
else
|
||||
printf("Usage: %s <output.dat>\n", argv[0]);
|
||||
|
||||
return 0;
|
||||
}
|
||||
299
devtools/create_cryo/eden.h
Normal file
299
devtools/create_cryo/eden.h
Normal file
@@ -0,0 +1,299 @@
|
||||
/* ScummVM - Graphic Adventure Engine
|
||||
*
|
||||
* ScummVM is the legal property of its developers, whose names
|
||||
* are too numerous to list here. Please refer to the COPYRIGHT
|
||||
* file distributed with this source distribution.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
typedef unsigned char byte;
|
||||
typedef short int16;
|
||||
typedef unsigned short uint16;
|
||||
typedef int int32;
|
||||
typedef unsigned int uint32;
|
||||
|
||||
struct icon_t {
|
||||
int16 sx;
|
||||
int16 sy;
|
||||
int16 ex;
|
||||
int16 ey;
|
||||
uint16 cursor_id; // & 0x8000 - inactive/hidden
|
||||
unsigned int action_id;
|
||||
unsigned int object_id;
|
||||
};
|
||||
#define END_ICONS {-1, -1, -1, -1, 0, 0, 0}
|
||||
|
||||
struct room_t {
|
||||
byte ff_0;
|
||||
byte exits[4];
|
||||
byte flags;
|
||||
uint16 bank;
|
||||
uint16 party;
|
||||
byte level;
|
||||
byte video;
|
||||
byte location;
|
||||
byte background;
|
||||
};
|
||||
#define END_ROOMS {0xFF, {0xFF, 0xFF, 0xFF, 0xFF}, 0xFF, 0xFFFF, 0xFFFF, 0xFF, 0xFF, 0xFF, 0xFF}
|
||||
|
||||
struct Follower { // Characters on Mirror screen
|
||||
char _id; // character
|
||||
char _spriteNum; // sprite number
|
||||
int16 sx;
|
||||
int16 sy;
|
||||
int16 ex;
|
||||
int16 ey;
|
||||
int16 _spriteBank;
|
||||
int16 ff_C;
|
||||
int16 ff_E;
|
||||
};
|
||||
|
||||
namespace PersonId {
|
||||
enum PersonId {
|
||||
pidGregor = 0, // The King
|
||||
pidDina, // Pink dino
|
||||
pidTau, // Late grandpa
|
||||
pidMonk, // Old wizard
|
||||
pidJabber, // Executioner
|
||||
pidEloi, // Evergreen ptero
|
||||
pidMungo, // Dina's husband
|
||||
pidEve, // Blonde girl
|
||||
pidShazia, // Big boobs sis
|
||||
pidLeadersBegin, // 9
|
||||
pidChongOfChamaar = pidLeadersBegin, // Dogface
|
||||
pidKommalaOfKoto, // Clones
|
||||
pidUlanOfUlele, // Shaman
|
||||
pidCabukaOfCantura, // Stone people
|
||||
pidMarindaOfEmbalmers, // Gods
|
||||
pidFuggOfTamara, // Boar-like
|
||||
pidThugg, // Bodyguard
|
||||
pidNarrator, // 16, Old Eloi, also BGM
|
||||
pidNarrim, // Sea snake
|
||||
pidMorkus, // Vicious tyran
|
||||
pidDinosaur, // different species of friendly dino
|
||||
pidEnemy // different species of enemy dino
|
||||
};
|
||||
}
|
||||
|
||||
namespace PersonMask {
|
||||
enum PersonMask {
|
||||
pmGregor = 1,
|
||||
pmDina = 2,
|
||||
pmTau = 4,
|
||||
pmMonk = 8,
|
||||
pmJabber = 0x10,
|
||||
pmEloi = 0x20,
|
||||
pmMungo = 0x40,
|
||||
pmEve = 0x80,
|
||||
pmShazia = 0x100,
|
||||
pmLeader = 0x200, // valley tribe leader
|
||||
pmThugg = 0x400,
|
||||
pmQuest = 0x800, // special quest person
|
||||
pmDino = 0x1000,
|
||||
pmEnemy = 0x2000,
|
||||
pmMorkus = 0x4000
|
||||
};
|
||||
}
|
||||
|
||||
namespace PersonFlags {
|
||||
enum PersonFlags {
|
||||
pfType0 = 0,
|
||||
pftTyrann,
|
||||
pfType2,
|
||||
pfType3,
|
||||
pfType4,
|
||||
pfType5,
|
||||
pfType6,
|
||||
pfType7,
|
||||
pfType8,
|
||||
pftMosasaurus,
|
||||
pftTriceraptor,
|
||||
pftVelociraptor,
|
||||
pfType12,
|
||||
pfType13,
|
||||
pfType14,
|
||||
pfType15,
|
||||
pfTypeMask = 0xF,
|
||||
pf10 = 0x10,
|
||||
pf20 = 0x20,
|
||||
pfInParty = 0x40,
|
||||
pf80 = 0x80
|
||||
};
|
||||
}
|
||||
|
||||
namespace Objects {
|
||||
enum Objects {
|
||||
obNone,
|
||||
obWayStone,
|
||||
obShell,
|
||||
obTalisman,
|
||||
obTooth,
|
||||
obPrism, // 5
|
||||
obFlute,
|
||||
obApple,
|
||||
obEgg, // 8
|
||||
obRoot,
|
||||
obUnused10,
|
||||
obShroom, // 11
|
||||
obBadShroom, // 12
|
||||
obKnife, // 13
|
||||
obNest, // 14
|
||||
obFullNest, // 15
|
||||
obGold, // 16
|
||||
obMoonStone,
|
||||
obBag,
|
||||
obSunStone, // 19
|
||||
obHorn, // 20
|
||||
obSword,
|
||||
|
||||
obMaskOfDeath,
|
||||
obMaskOfBonding,
|
||||
obMaskOfBirth,
|
||||
|
||||
obEyeInTheStorm, // 25
|
||||
obSkyHammer,
|
||||
obFireInTheClouds,
|
||||
obWithinAndWithout,
|
||||
obEyeInTheCyclone,
|
||||
obRiverThatWinds,
|
||||
|
||||
obTrumpet, // 31
|
||||
obUnused32,
|
||||
obDrum,
|
||||
obUnused34,
|
||||
obUnused35,
|
||||
obRing,
|
||||
|
||||
obTablet1, // 37 is 1st plaque, 6 total
|
||||
obTablet2,
|
||||
obTablet3, // 39
|
||||
obTablet4,
|
||||
obTablet5,
|
||||
obTablet6
|
||||
};
|
||||
}
|
||||
|
||||
struct Goto {
|
||||
byte _areaNum; // target area
|
||||
byte _curAreaNum; // current area
|
||||
byte _enterVideoNum;
|
||||
byte _travelTime; // time to skip while in travel
|
||||
byte _arriveVideoNum;
|
||||
};
|
||||
|
||||
struct object_t {
|
||||
byte _id;
|
||||
byte _flags;
|
||||
int _locations; // index in kObjectLocations
|
||||
uint16 _itemMask;
|
||||
uint16 _powerMask; // object of power bitmask
|
||||
int16 _count;
|
||||
};
|
||||
|
||||
struct perso_t {
|
||||
uint16 _roomNum; // room this person currently in
|
||||
uint16 _actionId; // TODO: checkme
|
||||
uint16 _partyMask; // party bit mask
|
||||
byte _id; // character
|
||||
byte _flags; // flags and kind
|
||||
byte _roomBankId;// index in kPersoRoomBankTable for specific room banks
|
||||
byte _spriteBank; // sprite bank
|
||||
uint16 _items; // inventory
|
||||
uint16 _powers; // obj of power bitmask
|
||||
byte _targetLoc; // For party member this is mini sprite index
|
||||
byte _lastLoc; // For party member this is mini sprite x offset
|
||||
byte _speed; // num ticks per step
|
||||
byte _steps; // current ticks
|
||||
};
|
||||
|
||||
struct Citadel {
|
||||
int16 _id;
|
||||
int16 _bank[8];
|
||||
int16 _video[8];
|
||||
};
|
||||
|
||||
// A struct to hold the struct members of Common::Rect
|
||||
struct Rect {
|
||||
int16 left, top, right, bottom;
|
||||
};
|
||||
|
||||
namespace Areas {
|
||||
enum Areas {
|
||||
arMo = 1,
|
||||
arTausCave,
|
||||
arChamaar,
|
||||
arUluru,
|
||||
arKoto,
|
||||
arTamara,
|
||||
arCantura,
|
||||
arShandovra,
|
||||
arNarimsCave,
|
||||
arEmbalmersCave,
|
||||
arWhiteArch,
|
||||
arMoorkusLair
|
||||
};
|
||||
}
|
||||
|
||||
namespace AreaFlags {
|
||||
enum AreaFlags {
|
||||
afFlag1 = 1,
|
||||
afFlag2 = 2,
|
||||
afFlag4 = 4,
|
||||
afFlag8 = 8,
|
||||
afGaveGold = 0x10,
|
||||
afFlag20 = 0x20,
|
||||
|
||||
HasTriceraptors = 0x100,
|
||||
HasVelociraptors = 0x200,
|
||||
HasTyrann = 0x400,
|
||||
|
||||
TyrannSighted = 0x4000,
|
||||
afFlag8000 = 0x8000
|
||||
};
|
||||
}
|
||||
|
||||
struct Room {
|
||||
byte _id;
|
||||
byte _exits[4]; //TODO: signed?
|
||||
byte _flags;
|
||||
uint16 _bank;
|
||||
uint16 _party;
|
||||
byte _level; // Citadel level
|
||||
byte _video;
|
||||
byte _location;
|
||||
byte _backgroundBankNum; // bg/mirror image number (relative)
|
||||
};
|
||||
|
||||
struct Area {
|
||||
byte _num;
|
||||
byte _type;
|
||||
uint16 _flags;
|
||||
uint16 _firstRoomIdx;
|
||||
byte _citadelLevel;
|
||||
byte _placeNum;
|
||||
Room *_citadelRoomPtr;
|
||||
int16 _visitCount;
|
||||
};
|
||||
|
||||
namespace AreaType {
|
||||
enum AreaType {
|
||||
atCitadel = 1,
|
||||
atValley = 2,
|
||||
atCave = 3
|
||||
};
|
||||
}
|
||||
235
devtools/create_cryo/eden_icons.h
Normal file
235
devtools/create_cryo/eden_icons.h
Normal file
@@ -0,0 +1,235 @@
|
||||
/* ScummVM - Graphic Adventure Engine
|
||||
*
|
||||
* ScummVM is the legal property of its developers, whose names
|
||||
* are too numerous to list here. Please refer to the COPYRIGHT
|
||||
* file distributed with this source distribution.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
#include "eden.h"
|
||||
|
||||
// Note: the following data can be found in the original game's executable
|
||||
|
||||
// NB! this enum must match kActionCursors[] array
|
||||
enum kCursors { // offset in the executable
|
||||
cuNone = 0, // 0x51F
|
||||
cu1 = 1, // 0x563
|
||||
cu2 = 2, // 0x556
|
||||
cu3 = 3, // 0x549
|
||||
cu4 = 4, // 0x570
|
||||
cu5 = 5, // 0x57D
|
||||
cuHand = 6, // 0x502
|
||||
cu7 = 7, // 0x52C
|
||||
cu8 = 8, // 0x58A
|
||||
cu9 = 9, // 0x539
|
||||
cuFa = 0xF, // 0x50F
|
||||
cuFinger = 53, // 0x541
|
||||
ICON_HIDDEN = 0x8000
|
||||
};
|
||||
|
||||
// NB! this enum must match EdenGame::*mouse_actions[] array
|
||||
enum kActions { // offset in the executable
|
||||
ac_ret = 27, // 0xD651
|
||||
ac_clicplanval = 139, // 0xE068
|
||||
ac_endFrescoes = 140, // 0xB12A
|
||||
ac_choisir = 141, // 0xDD68
|
||||
ac_parle_moi = 246, // 0xBFE
|
||||
ac_adam = 247, // 0x9E4
|
||||
ac_takeobject = 248, // 0xE66B
|
||||
ac_putobject = 249, // 0xE681
|
||||
ac_clictimbre = 250, // 0xE03F
|
||||
ac_dinaparle = 251, // 0xDF32
|
||||
ac_close_perso = 252, // 0x13EC
|
||||
ac_generique = 260, // 0xAF51
|
||||
ac_choixsubtitle = 261, // 0xACBF
|
||||
ac_EdenQuit = 262, // 0xAF6D
|
||||
ac_restart = 263, // 0xAEE7
|
||||
ac_cancel2 = 264, // 0xACE8
|
||||
ac_testvoice = 265, // 0xACF8
|
||||
ac_reglervol = 266, // 0xAB9E
|
||||
ac_load = 267, // 0xAD76
|
||||
ac_save = 268, // 0xAD40
|
||||
ac_cliccurstape = 269, // 0xB004
|
||||
ac_playtape = 270, // 0x19DB
|
||||
ac_stoptape = 271, // 0xB095
|
||||
ac_rewindtape = 272, // 0xB0C9
|
||||
ac_forwardtape = 273, // 0xB0E3
|
||||
ac_confirmyes = 274, // 0xADAE
|
||||
ac_confirmno = 275, // 0xADC1
|
||||
ac_gotocarte = 276 // 0xE07E
|
||||
};
|
||||
|
||||
// Indicies in to gotos[] array for World map areas
|
||||
enum kTravel { // offset in the executable
|
||||
goMo = 24, // 0x324D
|
||||
goChamaar = 40, // 0x3287
|
||||
goUluru = 51, // 0x32AF
|
||||
goKoto = 65, // 0x32E3
|
||||
goNarim = 70, // 0x32F5
|
||||
goTamara = 75, // 0x3307
|
||||
goCantura = 84, // 0x3329
|
||||
goShandovra = 93, // 0x334B
|
||||
goEmbalmers = 102, // 0x336D
|
||||
goWhiteArch = 111, // 0x338F
|
||||
goMoorkusLair = 120 // 0x33B1
|
||||
};
|
||||
|
||||
const int kNumIcons = 136;
|
||||
const icon_t gameIcons[kNumIcons] = {
|
||||
{90, 50, 220, 150, cu8, ac_parle_moi, 0},
|
||||
{0, 0, 319, 178, cuNone, ac_close_perso, 0},
|
||||
END_ICONS,
|
||||
{220, 16, 310, 176, cu5, ac_adam, 0},
|
||||
{0, 0, 320, 200, cu8, ac_parle_moi, 0},
|
||||
END_ICONS,
|
||||
{215, 140, 245, 176, cuHand, ac_choisir, 0},
|
||||
{245, 140, 275, 176, cuHand, ac_choisir, 1},
|
||||
{275, 140, 305, 176, cuHand, ac_choisir, 2},
|
||||
END_ICONS,
|
||||
{245, 140, 275, 176, cuHand, ac_choisir, 0},
|
||||
{275, 140, 305, 176, cuHand, ac_choisir, 1},
|
||||
END_ICONS,
|
||||
{0, 0, 320, 165, cuFa, ac_dinaparle, 0},
|
||||
{0, 165, 320, 200, cu2, ac_endFrescoes, 0},
|
||||
END_ICONS,
|
||||
{0, 176, 319, 200, ICON_HIDDEN|cu9, ac_putobject, 0},
|
||||
{120, 0, 200, 16, cuFinger, ac_clictimbre, 0},
|
||||
{266, 0, 320, 16, ICON_HIDDEN|cuFinger, ac_clicplanval, 0},
|
||||
// Inventory bar items
|
||||
// Mac version displays only 9 items, with extra margins
|
||||
{0, 178, 28, 200, cuHand, ac_takeobject, 0}, // Not on Mac
|
||||
{30, 178, 57, 200, cuHand, ac_takeobject, 0},
|
||||
{59, 178, 86, 200, cuHand, ac_takeobject, 0},
|
||||
{88, 178, 115, 200, cuHand, ac_takeobject, 0},
|
||||
{117, 178, 144, 200, cuHand, ac_takeobject, 0},
|
||||
{146, 178, 173, 200, cuHand, ac_takeobject, 0},
|
||||
{175, 178, 202, 200, cuHand, ac_takeobject, 0},
|
||||
{204, 178, 231, 200, cuHand, ac_takeobject, 0},
|
||||
{233, 178, 260, 200, cuHand, ac_takeobject, 0},
|
||||
{262, 178, 289, 200, cuHand, ac_takeobject, 0},
|
||||
{290, 178, 317, 200, cuHand, ac_takeobject, 0}, // Not on Mac
|
||||
// reserve for room's icons
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
{0, 0, 0, 0, 0, 0, 0},
|
||||
END_ICONS,
|
||||
// Menu icons
|
||||
{0, 0, 319, 15, cuFinger, ac_generique, 32},
|
||||
{8, 42, 86, 51, cuFinger, ac_choixsubtitle, 16},
|
||||
{8, 51, 86, 60, cuFinger, ac_choixsubtitle, 17},
|
||||
{8, 60, 86, 69, cuFinger, ac_choixsubtitle, 18},
|
||||
{8, 69, 86, 78, cuFinger, ac_choixsubtitle, 19},
|
||||
{8, 78, 86, 87, cuFinger, ac_choixsubtitle, 20},
|
||||
{8, 87, 86, 96, cuFinger, ac_choixsubtitle, 21},
|
||||
{16, 137, 79, 148, cuFinger, ac_EdenQuit, 34},
|
||||
{129, 137, 192, 148, cuFinger, ac_restart, 35},
|
||||
{239, 137, 302, 148, cuFinger, ac_cancel2, 36},
|
||||
{130, 112, 193, 123, cuFinger, ac_testvoice, 37},
|
||||
{114, 40, 121, 110, cuFinger, ac_reglervol, 48},
|
||||
{121, 40, 128, 110, cuFinger, ac_reglervol, 56},
|
||||
{128, 40, 136, 110, cuFinger, ac_reglervol, 49},
|
||||
{147, 40, 154, 110, cuFinger, ac_reglervol, 50},
|
||||
{154, 40, 161, 110, cuFinger, ac_reglervol, 58},
|
||||
{161, 40, 169, 110, cuFinger, ac_reglervol, 51},
|
||||
{179, 40, 186, 110, cuFinger, ac_reglervol, 52},
|
||||
{186, 40, 193, 110, cuFinger, ac_reglervol, 60},
|
||||
{193, 40, 201, 110, cuFinger, ac_reglervol, 53},
|
||||
{249, 42, 307, 51, cuFinger, ac_load, 65},
|
||||
{249, 51, 307, 60, cuFinger, ac_load, 66},
|
||||
{249, 60, 307, 69, cuFinger, ac_load, 67},
|
||||
{231, 69, 307, 78, cuFinger, ac_load, 68},
|
||||
{230, 104, 307, 112, cuFinger, ac_save, 81},
|
||||
{230, 113, 307, 121, cuFinger, ac_save, 82},
|
||||
{230, 122, 307, 130, cuFinger, ac_save, 83},
|
||||
{0, 176, 0, 185, cuFinger, ac_cliccurstape, 100},
|
||||
{149, 185, 166, 200, cuFinger, ac_playtape, 96},
|
||||
{254, 185, 269, 200, cuFinger, ac_stoptape, 97},
|
||||
{85, 185, 111, 200, cuFinger, ac_rewindtape, 98},
|
||||
{204, 185, 229, 200, cuFinger, ac_forwardtape, 99},
|
||||
{0, 0, 320, 200, cuFinger, ac_ret, 0},
|
||||
END_ICONS,
|
||||
// Yes/No dialog icons
|
||||
{129, 84, 157, 98, cuFinger, ac_confirmyes, 0},
|
||||
{165, 84, 188, 98, cuFinger, ac_confirmno, 113},
|
||||
{0, 0, 320, 200, cuFinger, ac_ret, 0},
|
||||
END_ICONS,
|
||||
// World map hotspots
|
||||
{136, 100, 160, 124, cu5, ac_gotocarte, goMo},
|
||||
{150, 55, 174, 79, cu5, ac_gotocarte, goChamaar},
|
||||
{186, 29, 210, 53, ICON_HIDDEN|cu5, ac_gotocarte, goUluru},
|
||||
{217, 20, 241, 44, ICON_HIDDEN|cu5, ac_gotocarte, goKoto},
|
||||
{248, 45, 272, 69, ICON_HIDDEN|cu5, ac_gotocarte, goNarim},
|
||||
{233, 68, 257, 92, ICON_HIDDEN|cu5, ac_gotocarte, goTamara},
|
||||
{235, 109, 259, 133, ICON_HIDDEN|cu5, ac_gotocarte, goCantura},
|
||||
{163, 137, 187, 161, ICON_HIDDEN|cu5, ac_gotocarte, goEmbalmers},
|
||||
{93, 145, 117, 169, ICON_HIDDEN|cu5, ac_gotocarte, goWhiteArch},
|
||||
{70, 39, 94, 63, ICON_HIDDEN|cu5, ac_gotocarte, goShandovra},
|
||||
{99, 8, 123, 32, ICON_HIDDEN|cu5, ac_gotocarte, goMoorkusLair},
|
||||
{0, 0, 319, 199, cuNone, ac_close_perso, 0},
|
||||
END_ICONS,
|
||||
};
|
||||
464
devtools/create_cryo/eden_rooms.h
Normal file
464
devtools/create_cryo/eden_rooms.h
Normal file
@@ -0,0 +1,464 @@
|
||||
/* ScummVM - Graphic Adventure Engine
|
||||
*
|
||||
* ScummVM is the legal property of its developers, whose names
|
||||
* are too numerous to list here. Please refer to the COPYRIGHT
|
||||
* file distributed with this source distribution.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
#include "eden.h"
|
||||
|
||||
// Note: the following data can be found in the original game's executable
|
||||
const int kNumRooms = 424;
|
||||
const room_t gameRooms[kNumRooms] = {
|
||||
// Mo
|
||||
{ 1, {255, 0, 0, 0}, 0, 66, 0xFFFF,29, 93, 1, 4},
|
||||
{ 7, { 4, 0, 6, 0}, 4, 72, 0xFFFF, 8,143, 2, 2},
|
||||
{ 3, { 24, 0, 5, 0}, 6, 99, 1, 6, 6, 3, 0},
|
||||
{ 3, { 24, 0, 5, 0}, 6, 68, 0x21, 6,146, 3, 0},
|
||||
{30, { 24, 0, 5, 0}, 2, 97, 9, 6,147, 3, 0},
|
||||
{ 4, { 24, 0, 5, 0}, 2, 69, 0x29, 6,147, 3, 0},
|
||||
{31, { 24, 0, 5, 0}, 2, 98, 8, 6,147, 3, 0},
|
||||
{ 2, { 24, 0, 5, 0}, 2, 67, 0, 6,147, 3, 0},
|
||||
{ 5, { 5, 20, 2, 8}, 4, 70, 0xFFFF, 7, 64, 4, 72},
|
||||
{ 6, { 3, 7, 4, 9}, 4, 71, 0xFFFF, 5, 4, 5, 6},
|
||||
{ 8, { 1, 0, 23, 2}, 4, 73, 0x400,23,145, 6, 2},
|
||||
{29, { 1, 0, 0, 2}, 4, 96, 0, 0, 0, 6, 2},
|
||||
{ 9, { 0, 0, 5, 0}, 0, 74, 0, 0,112, 7, 8},
|
||||
{10, { 0, 0, 5, 0}, 0, 75, 0x20, 0,112, 7, 8},
|
||||
{28, { 0, 0, 4, 0}, 0, 95, 0, 0, 0, 8, 10},
|
||||
{11, { 0, 0, 4, 0}, 0, 76, 0x10, 5,110, 8, 10},
|
||||
{27, { 11, 0, 5, 0}, 4, 94, 0,37,152, 9, 12},
|
||||
{12, { 11, 0, 5, 0}, 4, 77, 8, 6, 5, 9, 12},
|
||||
{27, { 11, 0, 5, 0}, 4, 94, 0xFFFF,37,152, 9, 12},
|
||||
{13, { 13, 0, 12, 0}, 6, 78, 0,15, 10, 10, 48},
|
||||
{14, { 12, 0, 9, 0}, 4, 79, 0,12, 9, 11, 12},
|
||||
{15, { 10, 0, 11, 0}, 6, 80, 0,14, 12, 12, 16},
|
||||
{16, { 14, 0, 10, 0}, 6, 81, 0,13, 11, 13, 14},
|
||||
{17, { 15, 0, 13, 0}, 4, 82, 0, 0, 0, 14, 16},
|
||||
{18, { 16, 0, 14, 0}, 4, 83, 0,17, 13, 15, 16},
|
||||
{19, { 17, 0, 13, 0}, 0, 84, 0,18, 15, 16, 16},
|
||||
{20, { 18, 0, 9, 0}, 4, 85, 0,19, 16, 17, 16},
|
||||
{21, { 0, 1, 17, 0}, 0, 86, 0,20, 0, 18, 70},
|
||||
{21, { 0, 1, 17, 0}, 6, 87, 2,20, 14, 18, 70},
|
||||
{37, { 0, 0, 9, 0}, 0, 34, 0xFFFF, 0, 0, 19, 12},
|
||||
{ 6, { 0, 0, 4, 0}, 4, 53, 0xFFFF, 5,156, 20, 72},
|
||||
{22, {130, 0, 4, 0}, 0, 88, 0, 1, 0, 22, 46},
|
||||
{22, {130, 0, 4, 0}, 4, 89, 2, 5, 8, 22, 46},
|
||||
{23, { 6, 0, 0, 0}, 4, 90, 0xFFFF, 0, 0, 23, 2},
|
||||
{24, {103, 25, 3, 0}, 6, 91, 0, 3, 1, 24, 0},
|
||||
{25, { 0, 26, 3, 24}, 4, 92, 0,24, 2, 25, 0},
|
||||
{26, { 0, 0, 3, 25}, 4, 93, 0,25, 3, 26, 0},
|
||||
{32, { 0, 0, 89, 0}, 6,100, 0xFFFF, 0, 75, 32, 18},
|
||||
{33, { 0, 0, 50, 0}, 6,105, 0xFFFF, 0, 26, 33, 20},
|
||||
{33, { 0, 0, 51, 0}, 6,105, 0xFFFF, 0, 26, 34, 20},
|
||||
{33, { 0, 0, 52, 0}, 6,105, 0xFFFF, 0, 26, 35, 20},
|
||||
{33, { 0, 68, 53, 85}, 6,107, 0xFFFF, 0, 28, 36, 20},
|
||||
{33, { 33, 0, 54, 86}, 6,109, 0xFFFF, 0, 30, 37, 20},
|
||||
{33, { 34, 0, 55, 87}, 6,109, 0xFFFF, 0, 30, 38, 20},
|
||||
{33, { 35, 71, 56, 88}, 6,106, 0xFFFF, 0, 27, 39, 20},
|
||||
{33, { 36, 0, 57, 90}, 6,109, 0xFFFF, 0, 30, 40, 20},
|
||||
{33, { 37, 74, 58, 91}, 6,106, 0xFFFF, 0, 27, 41, 20},
|
||||
{33, { 0, 0, 59, 0}, 6,105, 0xFFFF, 0, 26, 42, 20},
|
||||
{33, { 0, 0, 60, 0}, 6,105, 0xFFFF, 0, 26, 43, 20},
|
||||
{33, { 0, 0, 61, 0}, 6,105, 0xFFFF, 0, 26, 44, 20},
|
||||
{33, { 0, 0, 62, 0}, 6,105, 0xFFFF, 0, 26, 45, 20},
|
||||
{33, { 42, 0, 63, 97}, 6,109, 0xFFFF, 0, 30, 46, 20},
|
||||
{33, { 43, 80, 64, 0}, 6,108, 0xFFFF, 0, 29, 47, 20},
|
||||
{33, { 44, 81, 65, 0}, 6,108, 0xFFFF, 0, 29, 48, 20},
|
||||
{33, { 46, 83, 66,101}, 6,106, 0xFFFF, 0, 27, 49, 20},
|
||||
{33, { 54, 86, 33, 0}, 6,108, 0xFFFF, 0, 29, 50, 20},
|
||||
{33, { 55, 87, 34, 0}, 6,108, 0xFFFF, 0, 29, 51, 20},
|
||||
{33, { 56, 88, 35, 71}, 6,106, 0xFFFF, 0, 27, 52, 20},
|
||||
{33, { 57, 90, 36, 0}, 6,108, 0xFFFF, 0, 29, 53, 20},
|
||||
{33, { 58, 91, 37, 74}, 6,106, 0xFFFF, 0, 27, 54, 20},
|
||||
{33, { 0, 92, 38, 75}, 6,107, 0xFFFF, 0, 28, 55, 20},
|
||||
{33, { 0, 93, 39, 76}, 6,107, 0xFFFF, 0, 28, 56, 20},
|
||||
{33, { 0, 95, 40, 78}, 6,107, 0xFFFF, 0, 28, 57, 20},
|
||||
{33, { 0, 96, 41, 79}, 6,110, 0xFFFF, 0, 59, 58, 20},
|
||||
{33, { 63, 97, 42, 0}, 6,108, 0xFFFF, 0, 29, 59, 20},
|
||||
{33, { 64, 0, 43, 80}, 6,109, 0xFFFF, 0, 30, 60, 20},
|
||||
{33, { 65, 0, 44, 81}, 6,109, 0xFFFF, 0, 30, 61, 20},
|
||||
{33, { 0, 99, 45, 82}, 6,107, 0xFFFF, 0, 28, 62, 20},
|
||||
{33, { 66,100, 46, 83}, 6,106, 0xFFFF, 0, 27, 63, 20},
|
||||
{33, { 0,101, 47, 84}, 6,107, 0xFFFF, 0, 28, 64, 20},
|
||||
{33, { 3, 0, 48, 0}, 6,104, 0xFFFF, 0, 74, 65, 20},
|
||||
{33, { 3, 0, 49, 0}, 6,104, 0xFFFF, 0, 74, 66, 20},
|
||||
{33, { 68, 53, 85, 0}, 6,108, 0xFFFF, 0, 29, 67, 20},
|
||||
{33, { 0, 54, 86, 33}, 6,107, 0xFFFF, 0, 28, 68, 20},
|
||||
{33, { 0, 55, 87, 34}, 6,107, 0xFFFF, 0, 28, 69, 20},
|
||||
{33, { 71, 56, 88, 35}, 6,106, 0xFFFF, 0, 27, 70, 20},
|
||||
{33, { 32, 0, 89, 0}, 6,104, 0xFFFF, 0, 74, 71, 20},
|
||||
{33, { 0, 57, 90, 36}, 6,107, 0xFFFF, 0, 28, 72, 20},
|
||||
{33, { 74, 58, 91, 37}, 6,106, 0xFFFF, 0, 27, 73, 20},
|
||||
{33, { 75, 0, 92, 38}, 6,109, 0xFFFF, 0, 30, 74, 20},
|
||||
{33, { 76, 0, 93, 39}, 6,109, 0xFFFF, 0, 30, 75, 20},
|
||||
{33, { 0, 0, 94, 0}, 6,105, 0xFFFF, 0, 26, 76, 20},
|
||||
{33, { 78, 0, 95, 40}, 6,109, 0xFFFF, 0, 30, 77, 20},
|
||||
{33, { 79, 0, 96, 41}, 6,112, 0xFFFF, 0, 61, 78, 20},
|
||||
{33, { 0, 63, 97, 42}, 6,107, 0xFFFF, 0, 28, 79, 20},
|
||||
{33, { 0, 0, 98, 0}, 6,105, 0xFFFF, 0, 26, 80, 20},
|
||||
{33, { 82, 0, 99, 45}, 6,109, 0xFFFF, 0, 30, 81, 20},
|
||||
{33, { 83, 66,100, 46}, 6,106, 0xFFFF, 0, 27, 82, 20},
|
||||
{33, { 84, 0,101, 47}, 6,109, 0xFFFF, 0, 30, 83, 20},
|
||||
{33, { 0, 0,102, 0}, 6,105, 0xFFFF, 0, 26, 84, 20},
|
||||
{33, { 0, 0, 67, 0}, 6,105, 0xFFFF, 0, 26, 85, 20},
|
||||
{33, { 85, 0, 68, 53}, 6,109, 0xFFFF, 0, 30, 86, 20},
|
||||
{33, { 0, 0, 69, 0}, 6,105, 0xFFFF, 0, 26, 87, 20},
|
||||
{33, { 0, 0, 70, 0}, 6,105, 0xFFFF, 0, 26, 88, 20},
|
||||
{33, { 88, 35, 71, 56}, 6,106, 0xFFFF, 0, 27, 89, 20},
|
||||
{33, { 0, 0, 72, 0}, 6,105, 0xFFFF, 0, 26, 90, 20},
|
||||
{33, { 0, 0, 73, 0}, 6,105, 0xFFFF, 0, 26, 91, 20},
|
||||
{33, { 91, 37, 74, 58}, 6,106, 0xFFFF, 0, 27, 92, 20},
|
||||
{33, { 92, 38, 75, 0}, 6,108, 0xFFFF, 0, 29, 93, 20},
|
||||
{33, { 93, 39, 76, 0}, 6,108, 0xFFFF, 0, 29, 94, 20},
|
||||
{33, { 0, 0, 77, 0}, 6,105, 0xFFFF, 0, 26, 95, 20},
|
||||
{33, { 95, 40, 78, 0}, 6,108, 0xFFFF, 0, 29, 96, 20},
|
||||
{33, { 96, 41, 79, 0}, 6,111, 0xFFFF, 0, 60, 97, 20},
|
||||
{33, { 0, 43, 80, 64}, 6,107, 0xFFFF, 0, 28, 98, 20},
|
||||
{33, { 0, 44, 81, 65}, 6,107, 0xFFFF, 0, 28, 99, 20},
|
||||
{33, { 99, 45, 82, 0}, 6,108, 0xFFFF, 0, 29,100, 20},
|
||||
{33, {100, 46, 83, 66}, 6,106, 0xFFFF, 0, 27,101, 20},
|
||||
{33, {101, 47, 84, 0}, 6,108, 0xFFFF, 0, 29,102, 20},
|
||||
{34, { 49, 0, 3,104}, 0,101, 0xFFFF, 0, 0,103, 20},
|
||||
{35, {105, 0,103, 0}, 0,102, 0xFFFF, 0, 0,104, 20},
|
||||
{36, { 48, 0,104, 0}, 0,103, 0xFFFF, 0, 0,105, 20},
|
||||
END_ROOMS,
|
||||
// Tau's
|
||||
{ 1, {2, 0,129, 0}, 4, 118, 0xFFFF, 22, 0, 1, 74},
|
||||
{ 2, {0, 0, 1, 0}, 6, 119, 0xFFFF, 1, 34, 2, 56},
|
||||
END_ROOMS,
|
||||
// Narim's
|
||||
{ 1, {2, 0,255, 0}, 4, 321, 0xFFFF, 1, 0, 1, 24},
|
||||
{ 2, {0, 0, 1, 0}, 6, 324, 0xFFFF, 1, 32, 2, 66},
|
||||
END_ROOMS,
|
||||
// Embalmers
|
||||
{ 1, {2, 0,129, 0}, 6, 243, 0xFFFF, 1, 0, 1, 62},
|
||||
{ 2, {0, 0, 1, 0}, 4, 244, 0x200, 1, 49, 2, 58},
|
||||
{ 2, {0, 0, 1, 0}, 0, 245, 0, 1, 0, 2, 58},
|
||||
END_ROOMS,
|
||||
// White Arch
|
||||
{ 1, {0, 0,255, 0}, 6, 120, 0xFFFF, 1, 0, 1, 42},
|
||||
{ 2, {3, 0, 0, 0}, 0, 231, 0xFFFF, 0, 0, 2, 20},
|
||||
{ 3, {0, 0, 2, 0}, 6, 232, 0xFFFF, 0, 50, 3, 20},
|
||||
{ 4, {0, 0, 0, 0}, 6, 233, 0xFFFF, 0, 96, 4, 44},
|
||||
END_ROOMS,
|
||||
// Moorkus Lair
|
||||
{ 1, {255, 2, 0, 0}, 4, 121, 0x588, 1, 0, 1, 64},
|
||||
{ 1, {255, 2, 0, 0}, 4, 323, 0xFFFF, 1, 0, 1, 64},
|
||||
{ 2, { 3, 4, 0, 0}, 0, 122, 0xFFFF, 1, 90, 2, 60},
|
||||
{ 3, { 0, 0, 0, 0}, 4, 123, 0xFFFF, 2, 91, 3, 60},
|
||||
{ 4, { 0, 0, 2, 0}, 4, 320, 0xFFFF, 2,150, 4, 60},
|
||||
END_ROOMS,
|
||||
// Chamaar
|
||||
{ 1, {255, 0, 0, 0}, 0x18, 17, 0xFFFF, 1, 0, 1, 68},
|
||||
{ 2, {255, 0, 0, 0}, 0x18, 17, 0xFFFF, 0, 0, 1, 68},
|
||||
{ 3, { 0, 17, 32, 0}, 0x81, 124, 0xFFFF, 0, 0, 16, 22},
|
||||
{ 3, { 0, 18, 33, 16}, 0x81, 125, 0xFFFF, 0, 0, 17, 22},
|
||||
{ 3, { 0, 19, 34, 17}, 0x81, 126, 0xFFFF, 0, 0, 18, 22},
|
||||
{ 3, { 0, 20, 35, 18}, 0x86, 143, 0xFFFF, 0, 0, 19, 22},
|
||||
{ 3, { 0, 21, 36, 19}, 0x81, 127, 0xFFFF, 0, 0, 20, 22},
|
||||
{ 3, { 0, 22, 37, 20}, 0x81, 128, 0xFFFF, 0, 0, 21, 22},
|
||||
{ 3, { 0, 23, 38, 21}, 0x81, 129, 0xFFFF, 0, 0, 22, 22},
|
||||
{ 3, { 0, 24, 39, 22}, 0x81, 130, 0xFFFF, 0, 0, 23, 22},
|
||||
{ 3, { 0, 25, 40, 23}, 0x81, 131, 0xFFFF, 0, 0, 24, 22},
|
||||
{ 3, { 0, 26, 41, 24}, 0x81, 132, 0xFFFF, 0, 0, 25, 22},
|
||||
{ 3, { 0, 27, 42, 25}, 0x81, 133, 0xFFFF, 0, 0, 26, 22},
|
||||
{ 3, { 0, 0, 43, 26}, 0x81, 134, 0xFFFF, 0, 0, 27, 22},
|
||||
{ 3, {16, 33, 48, 0}, 0xC1, 193, 0xFFFF, 0, 0, 32, 26},
|
||||
{ 3, {17, 34, 49, 32}, 0x81, 135, 0xFFFF, 0, 0, 33, 22},
|
||||
{ 3, {18, 35, 50, 33}, 0x81, 136, 0xFFFF, 0, 0, 34, 22},
|
||||
{ 3, {19, 36, 51, 34}, 0x81, 137, 0xFFFF, 0, 0, 35, 22},
|
||||
{ 3, {20, 37, 52, 35}, 0x81, 138, 0xFFFF, 0, 0, 36, 22},
|
||||
{ 3, {21, 38, 53, 36}, 0x81, 139, 0xFFFF, 0, 0, 37, 22},
|
||||
{ 3, {22, 39, 54, 37}, 0x81, 140, 0xFFFF, 0, 0, 38, 22},
|
||||
{ 3, {23, 40, 55, 38}, 0x81, 141, 0xFFFF, 0, 0, 39, 22},
|
||||
{ 3, {24, 41, 56, 39}, 0x81, 142, 0xFFFF, 0, 0, 40, 22},
|
||||
{ 3, {25, 42, 57, 40}, 0x81, 143, 0xFFFF, 0, 0, 41, 22},
|
||||
{ 3, {26, 43, 58, 41}, 0x81, 144, 0xFFFF, 0, 0, 42, 22},
|
||||
{ 3, {27, 0, 59, 42}, 0x81, 145, 0xFFFF, 0, 0, 43, 22},
|
||||
{ 3, {32, 49, 64, 0}, 0xC0, 235, 0, 0, 0, 48, 26},
|
||||
{ 4, {32, 49, 64, 0}, 0xC6, 234, 0x200, 0,31, 48, 26},
|
||||
{ 9, {33, 50, 65, 48}, 0xC0, 277, 0xFFFF, 0, 0, 49, 26},
|
||||
{10, { 0, 0, 49, 0}, 0xC4, 278, 0xFFFF, 0,52, 49, 26},
|
||||
{ 3, {34, 51, 66, 49}, 0xC1, 197, 0xFFFF, 0, 0, 50, 26},
|
||||
{ 3, {35, 52, 67, 50}, 0xC1, 202, 0xFFFF, 0, 0, 51, 26},
|
||||
{ 3, {36, 53, 68, 51}, 0x81, 146, 0xFFFF, 0, 0, 52, 22},
|
||||
{ 3, {37, 54, 69, 52}, 1, 173, 0xFFFF, 0, 0, 53, 28},
|
||||
{ 3, {38, 55, 70, 53}, 1, 174, 0xFFFF, 0, 0, 54, 28},
|
||||
{ 3, {39, 56, 71, 54}, 1, 175, 0xFFFF, 0, 0, 55, 28},
|
||||
{ 3, {40, 57, 72, 55}, 1, 176, 0xFFFF, 0, 0, 56, 28},
|
||||
{ 3, {41, 58, 73, 56}, 1, 177, 0xFFFF, 0, 0, 57, 28},
|
||||
{ 3, {42, 59, 74, 57}, 1, 178, 0xFFFF, 0, 0, 58, 28},
|
||||
{ 3, {43, 0, 75, 58}, 1, 181, 0xFFFF, 0, 0, 59, 28},
|
||||
{ 5, {48, 65, 1, 0}, 0xC0, 276, 0xFFFF, 0, 0, 64, 26},
|
||||
{ 3, {49, 66, 1, 64}, 0xC1, 194, 0xFFFF, 0, 0, 65, 26},
|
||||
{ 3, {50, 67, 1, 65}, 0xC1, 200, 0xFFFF, 0, 0, 66, 26},
|
||||
{ 3, {51, 68, 1, 66}, 0xC1, 195, 0xFFFF, 0, 0, 67, 26},
|
||||
{ 9, {52, 69, 1, 67}, 0xC0, 279, 0xFFFF, 0, 0, 68, 26},
|
||||
{10, { 0, 0, 68, 0}, 0xC4, 280, 0xFFFF, 0,78, 68, 26},
|
||||
{ 3, {53, 70, 1, 68}, 1, 163, 0xFFFF, 0, 0, 69, 28},
|
||||
{ 3, {54, 71, 1, 69}, 1, 170, 0xFFFF, 0, 0, 70, 28},
|
||||
{ 3, {55, 72, 1, 70}, 1, 171, 0xFFFF, 0, 0, 71, 28},
|
||||
{ 3, {56, 73, 1, 71}, 1, 167, 0xFFFF, 0, 0, 72, 28},
|
||||
{11, {57, 74, 1, 72}, 0x40, 223, 0xFFFF, 0, 0, 73, 32},
|
||||
{12, {58, 75, 1, 73}, 0x40, 215, 0xFFFF, 0, 0, 74, 32},
|
||||
{ 3, {59, 0, 1, 74}, 1, 166, 0xFFFF, 0, 0, 75, 28},
|
||||
END_ROOMS,
|
||||
// Uluru
|
||||
{ 1, {255, 0, 0, 0}, 0x18, 41, 0xFFFF, 1, 0, 1, 36},
|
||||
{ 2, {255, 0, 0, 0}, 0x18, 41, 0xFFFF, 0, 0, 1, 36},
|
||||
{ 3, { 0, 17, 32, 0}, 0x81, 149, 0xFFFF, 0, 0, 16, 24},
|
||||
{ 3, { 0, 18, 33, 16}, 0x81, 150, 0xFFFF, 0, 0, 17, 24},
|
||||
{ 3, { 0, 19, 34, 17}, 0x81, 151, 0xFFFF, 0, 0, 18, 24},
|
||||
{ 3, { 0, 20, 35, 18}, 0x81, 152, 0xFFFF, 0, 0, 19, 24},
|
||||
{ 3, { 0, 21, 36, 19}, 0x81, 153, 0xFFFF, 0, 0, 20, 24},
|
||||
{ 3, { 0, 22, 37, 20}, 0x81, 149, 0xFFFF, 0, 0, 21, 24},
|
||||
{ 3, { 0, 23, 38, 21}, 0x81, 154, 0xFFFF, 0, 0, 22, 24},
|
||||
{ 3, { 0, 24, 39, 22}, 0x81, 155, 0xFFFF, 0, 0, 23, 24},
|
||||
{ 3, { 0, 25, 40, 23}, 0x81, 156, 0xFFFF, 0, 0, 24, 24},
|
||||
{ 3, { 0, 26, 41, 24}, 0x81, 157, 0xFFFF, 0, 0, 25, 24},
|
||||
{ 3, { 0, 27, 42, 25}, 0x81, 158, 0xFFFF, 0, 0, 26, 24},
|
||||
{ 4, { 0, 0, 43, 26}, 0x86, 238, 0xA00, 0,47, 27, 52},
|
||||
{ 4, { 0, 0, 43, 26}, 0x80, 239, 0x800, 0, 0, 27, 52},
|
||||
{ 9, { 16, 33, 48, 0}, 0xC0, 277, 0xFFFF, 0, 0, 32, 26},
|
||||
{10, { 0, 0, 32, 0}, 0xC4, 278, 0xFFFF, 0,52, 32, 26},
|
||||
{ 3, { 17, 34, 49, 32}, 1, 191, 0xFFFF, 0, 0, 33, 30},
|
||||
{ 3, { 18, 35, 50, 33}, 1, 184, 0xFFFF, 0, 0, 34, 30},
|
||||
{ 3, { 19, 36, 51, 34}, 1, 185, 0xFFFF, 0, 0, 35, 30},
|
||||
{ 3, { 20, 37, 52, 35}, 1, 186, 0xFFFF, 0, 0, 36, 30},
|
||||
{ 3, { 21, 38, 53, 36}, 0x81, 161, 0xFFFF, 0, 0, 37, 24},
|
||||
{ 3, { 22, 39, 54, 37}, 1, 189, 0xFFFF, 0, 0, 38, 30},
|
||||
{ 3, { 23, 40, 55, 38}, 1, 186, 0xFFFF, 0, 0, 39, 30},
|
||||
{ 3, { 24, 41, 56, 39}, 1, 185, 0xFFFF, 0, 0, 40, 30},
|
||||
{13, { 25, 42, 57, 40}, 1, 192, 0xFFFF, 0, 0, 41, 30},
|
||||
{ 3, { 26, 43, 58, 41}, 0x81, 159, 0xFFFF, 0, 0, 42, 24},
|
||||
{ 3, { 27, 0, 59, 42}, 0x81, 160, 0xFFFF, 0, 0, 43, 24},
|
||||
{12, { 32, 49, 0, 0}, 0x40, 205, 0xFFFF, 0, 0, 48, 34},
|
||||
{11, { 33, 50, 0, 48}, 0x40, 210, 0xFFFF, 0, 0, 49, 34},
|
||||
{11, { 34, 51, 0, 49}, 0x40, 212, 0xFFFF, 0, 0, 50, 34},
|
||||
{11, { 35, 52, 0, 50}, 0x40, 211, 0xFFFF, 0, 0, 51, 34},
|
||||
{11, { 36, 53, 68, 51}, 0x40, 207, 0xFFFF, 0, 0, 52, 34},
|
||||
{ 3, { 37, 54, 69, 52}, 0xC1, 195, 0xFFFF, 0, 0, 53, 26},
|
||||
{ 3, { 38, 55, 70, 53}, 1, 190, 0xFFFF, 0, 0, 54, 30},
|
||||
{ 3, { 39, 56, 71, 54}, 1, 182, 0xFFFF, 0, 0, 55, 30},
|
||||
{ 3, { 40, 57, 72, 55}, 1, 187, 0xFFFF, 0, 0, 56, 30},
|
||||
{ 3, { 41, 58, 73, 56}, 1, 188, 0xFFFF, 0, 0, 57, 30},
|
||||
{ 3, { 42, 59, 74, 57}, 1, 190, 0xFFFF, 0, 0, 58, 30},
|
||||
{ 3, { 43, 0, 75, 58}, 0xC1, 197, 0xFFFF, 0, 0, 59, 26},
|
||||
{11, { 52, 69, 1, 0}, 0x40, 208, 0xFFFF, 0, 0, 68, 34},
|
||||
{ 3, { 53, 70, 1, 68}, 1, 182, 0xFFFF, 0, 0, 69, 30},
|
||||
{ 3, { 54, 71, 1, 69}, 1, 187, 0xFFFF, 0, 0, 70, 30},
|
||||
{ 3, { 55, 72, 1, 70}, 1, 188, 0xFFFF, 0, 0, 71, 30},
|
||||
{ 3, { 56, 73, 1, 71}, 1, 190, 0xFFFF, 0, 0, 72, 30},
|
||||
{ 3, { 57, 74, 1, 72}, 1, 187, 0xFFFF, 0, 0, 73, 30},
|
||||
{ 3, { 58, 75, 1, 73}, 1, 182, 0xFFFF, 0, 0, 74, 30},
|
||||
{ 6, { 59, 0, 1, 74}, 0xC0, 276, 0xFFFF, 0, 0, 75, 26},
|
||||
END_ROOMS,
|
||||
// Koto
|
||||
{ 1, {255, 0, 0, 0}, 0x18, 42, 0xFFFF, 1, 0, 1, 40},
|
||||
{ 2, {255, 0, 0, 0}, 0x18, 42, 0xFFFF, 0, 0, 1, 40},
|
||||
{13, { 0, 17, 32, 0}, 0x86, 283, 0xFFFF, 0,57, 16, 50},
|
||||
{ 3, { 0, 18, 33, 16}, 0x81, 125, 0xFFFF, 0, 0, 17, 22},
|
||||
{ 3, { 0, 19, 34, 17}, 0x81, 126, 0xFFFF, 0, 0, 18, 22},
|
||||
{ 3, { 0, 20, 35, 18}, 0x81, 127, 0xFFFF, 0, 0, 19, 22},
|
||||
{ 3, { 0, 21, 36, 19}, 0x81, 128, 0xFFFF, 0, 0, 20, 22},
|
||||
{ 3, { 0, 22, 37, 20}, 0x81, 131, 0xFFFF, 0, 0, 21, 22},
|
||||
{ 3, { 0, 23, 38, 21}, 0x81, 129, 0xFFFF, 0, 0, 22, 22},
|
||||
{ 3, { 0, 24, 39, 22}, 0x81, 126, 0xFFFF, 0, 0, 23, 22},
|
||||
{ 3, { 0, 25, 40, 23}, 0x81, 125, 0xFFFF, 0, 0, 24, 22},
|
||||
{ 3, { 0, 26, 41, 24}, 0x81, 127, 0xFFFF, 0, 0, 25, 22},
|
||||
{ 3, { 0, 27, 42, 25}, 0x81, 133, 0xFFFF, 0, 0, 26, 22},
|
||||
{ 3, { 0, 0, 43, 26}, 0x81, 132, 0xFFFF, 0, 0, 27, 22},
|
||||
{ 3, { 16, 33, 48, 0}, 0x81, 133, 0xFFFF, 0, 0, 32, 22},
|
||||
{ 3, { 17, 34, 49, 32}, 0x81, 124, 0xFFFF, 0, 0, 33, 22},
|
||||
{ 3, { 18, 35, 50, 33}, 0x81, 132, 0xFFFF, 0, 0, 34, 22},
|
||||
{ 3, { 19, 36, 51, 34}, 0x81, 131, 0xFFFF, 0, 0, 35, 22},
|
||||
{ 3, { 20, 37, 52, 35}, 0x81, 126, 0xFFFF, 0, 0, 36, 22},
|
||||
{ 3, { 21, 38, 53, 36}, 0x81, 125, 0xFFFF, 0, 0, 37, 22},
|
||||
{ 3, { 22, 39, 54, 37}, 0x81, 126, 0xFFFF, 0, 0, 38, 22},
|
||||
{ 3, { 23, 40, 55, 38}, 0x81, 128, 0xFFFF, 0, 0, 39, 22},
|
||||
{ 3, { 24, 41, 56, 39}, 0x81, 127, 0xFFFF, 0, 0, 40, 22},
|
||||
{ 3, { 25, 42, 57, 40}, 0x81, 133, 0xFFFF, 0, 0, 41, 22},
|
||||
{ 3, { 26, 43, 58, 41}, 0x81, 124, 0xFFFF, 0, 0, 42, 22},
|
||||
{ 3, { 27, 0, 59, 42}, 0x81, 129, 0xFFFF, 0, 0, 43, 22},
|
||||
{11, { 32, 49, 0, 0}, 0x40, 221, 0xFFFF, 0, 0, 48, 32},
|
||||
{12, { 33, 50, 0, 48}, 0x40, 215, 0xFFFF, 0, 0, 49, 32},
|
||||
{11, { 34, 51, 66, 49}, 0x40, 217, 0xFFFF, 0, 0, 50, 32},
|
||||
{11, { 35, 52, 67, 50}, 0x40, 223, 0xFFFF, 0, 0, 51, 32},
|
||||
{ 3, { 36, 53, 68, 51}, 1, 179, 0xFFFF, 0, 0, 52, 28},
|
||||
{ 3, { 37, 54, 69, 52}, 1, 180, 0xFFFF, 0, 0, 53, 28},
|
||||
{ 3, { 38, 55, 70, 53}, 1, 178, 0xFFFF, 0, 0, 54, 28},
|
||||
{ 3, { 39, 56, 71, 54}, 1, 177, 0xFFFF, 0, 0, 55, 28},
|
||||
{ 3, { 40, 57, 72, 55}, 0xC1, 196, 0xFFFF, 0, 0, 56, 26},
|
||||
{ 3, { 41, 58, 73, 56}, 0xC1, 197, 0xFFFF, 0, 0, 57, 26},
|
||||
{ 9, { 42, 59, 74, 57}, 0xC0, 279, 0xFFFF, 0, 0, 58, 26},
|
||||
{10, { 0, 0, 58, 0}, 0xC4, 280, 0xFFFF, 0,78, 58, 26},
|
||||
{ 3, { 43, 0, 75, 58}, 0xC0, 237, 0, 0, 0, 59, 26},
|
||||
{ 4, { 43, 0, 75, 58}, 0xC6, 236, 0x200, 0,46, 59, 26},
|
||||
{11, { 50, 67, 1, 0}, 0x40, 218, 0xFFFF, 0, 0, 66, 32},
|
||||
{11, { 51, 68, 1, 66}, 0x40, 217, 0xFFFF, 0, 0, 67, 32},
|
||||
{ 3, { 52, 69, 1, 67}, 1, 168, 0xFFFF, 0, 0, 68, 28},
|
||||
{ 3, { 53, 70, 1, 68}, 1, 172, 0xFFFF, 0, 0, 69, 28},
|
||||
{ 3, { 54, 71, 1, 69}, 1, 170, 0xFFFF, 0, 0, 70, 28},
|
||||
{ 3, { 55, 72, 1, 70}, 0xC1, 201, 0xFFFF, 0, 0, 71, 26},
|
||||
{ 7, { 56, 73, 1, 71}, 0xC0, 276, 0xFFFF, 0, 0, 72, 26},
|
||||
{ 3, { 57, 74, 1, 72}, 0xC1, 194, 0xFFFF, 0, 0, 73, 26},
|
||||
{ 3, { 58, 75, 1, 73}, 0xC1, 195, 0xFFFF, 0, 0, 74, 26},
|
||||
{ 9, { 59, 0, 1, 74}, 0xC0, 277, 0xFFFF, 0, 0, 75, 26},
|
||||
{10, { 0, 0, 75, 0}, 0xC4, 278, 0xFFFF, 0,52, 75, 26},
|
||||
END_ROOMS,
|
||||
// Tamara
|
||||
{ 1, {255, 0, 0, 0}, 0x1A, 43, 0xFFFF, 1, 0, 1, 36},
|
||||
{ 2, {255, 0, 0, 0}, 0x1A, 43, 0xFFFF, 0, 0, 1, 36},
|
||||
{ 3, { 0, 17, 32, 0}, 0x81, 147, 0xFFFF, 0, 0, 16, 24},
|
||||
{ 3, { 0, 18, 33, 16}, 0x81, 148, 0xFFFF, 0, 0, 17, 24},
|
||||
{ 3, { 0, 19, 34, 17}, 0x81, 149, 0xFFFF, 0, 0, 18, 24},
|
||||
{ 3, { 0, 20, 35, 18}, 0x81, 150, 0xFFFF, 0, 0, 19, 24},
|
||||
{ 3, { 0, 21, 36, 19}, 0x81, 151, 0xFFFF, 0, 0, 20, 24},
|
||||
{ 3, { 0, 22, 37, 20}, 0x81, 152, 0xFFFF, 0, 0, 21, 24},
|
||||
{ 3, { 0, 23, 38, 21}, 0x81, 153, 0xFFFF, 0, 0, 22, 24},
|
||||
{ 3, { 0, 24, 39, 22}, 0x81, 154, 0xFFFF, 0, 0, 23, 24},
|
||||
{ 3, { 0, 0, 40, 23}, 0x81, 155, 0xFFFF, 0, 0, 24, 24},
|
||||
{ 3, { 16, 33, 48, 0}, 0x81, 154, 0xFFFF, 0, 0, 32, 24},
|
||||
{ 3, { 17, 34, 49, 32}, 0x81, 156, 0xFFFF, 0, 0, 33, 24},
|
||||
{ 3, { 18, 35, 50, 33}, 0x81, 157, 0xFFFF, 0, 0, 34, 24},
|
||||
{ 3, { 19, 36, 51, 34}, 0x81, 158, 0xFFFF, 0, 0, 35, 24},
|
||||
{ 3, { 20, 37, 52, 35}, 0x81, 159, 0xFFFF, 0, 0, 36, 24},
|
||||
{ 3, { 21, 38, 53, 36}, 0x81, 160, 0xFFFF, 0, 0, 37, 24},
|
||||
{ 3, { 22, 39, 54, 37}, 0x81, 161, 0xFFFF, 0, 0, 38, 24},
|
||||
{ 3, { 23, 40, 55, 38}, 0x81, 162, 0xFFFF, 0, 0, 39, 24},
|
||||
{ 4, { 24, 41, 56, 39}, 0xC0, 248, 0x280, 0, 0, 40, 26},
|
||||
{ 4, { 24, 41, 56, 39}, 0xC0, 247, 0x200, 0, 0, 40, 26},
|
||||
{ 4, { 24, 41, 56, 39}, 0xC0, 246, 0xFFFF, 0, 0, 40, 26},
|
||||
{11, { 0, 0, 57, 40}, 0x40, 207, 0xFFFF, 0, 0, 41, 34},
|
||||
{ 3, { 32, 49, 64, 0}, 0xC1, 193, 0xFFFF, 0, 0, 48, 26},
|
||||
{ 3, { 33, 50, 65, 48}, 0xC1, 200, 0xFFFF, 0, 0, 49, 26},
|
||||
{ 3, { 34, 51, 66, 49}, 1, 184, 0xFFFF, 0, 0, 50, 30},
|
||||
{ 3, { 35, 52, 67, 50}, 1, 185, 0xFFFF, 0, 0, 51, 30},
|
||||
{ 3, { 36, 53, 68, 51}, 0x81, 189, 0xFFFF, 0, 0, 52, 30},
|
||||
{ 3, { 37, 54, 69, 52}, 1, 192, 0xFFFF, 0, 0, 53, 30},
|
||||
{ 3, { 38, 55, 70, 53}, 1, 191, 0xFFFF, 0, 0, 54, 30},
|
||||
{ 9, { 39, 56, 71, 54}, 0xC0, 277, 0xFFFF, 0, 0, 55, 26},
|
||||
{10, { 0, 0, 55, 0}, 0xC4, 278, 0xFFFF, 0,52, 55, 26},
|
||||
{ 3, { 40, 57, 72, 55}, 0xC1, 195, 0xFFFF, 0, 0, 56, 26},
|
||||
{11, { 41, 58, 0, 56}, 0x40, 208, 0xFFFF, 0, 0, 57, 34},
|
||||
{11, { 0, 0, 0, 57}, 0x40, 212, 0xFFFF, 0, 0, 58, 34},
|
||||
{ 8, { 48, 65, 1, 0}, 0xC1, 276, 0xFFFF, 0, 0, 64, 26},
|
||||
{ 3, { 49, 66, 1, 64}, 1, 187, 0xFFFF, 0, 0, 65, 30},
|
||||
{ 3, { 50, 67, 1, 65}, 1, 188, 0xFFFF, 0, 0, 66, 30},
|
||||
{ 3, { 51, 68, 1, 66}, 1, 190, 0xFFFF, 0, 0, 67, 30},
|
||||
{12, { 52, 69, 1, 67}, 0x40, 205, 0xFFFF, 0, 0, 68, 34},
|
||||
{11, { 53, 70, 1, 68}, 0x40, 203, 0xFFFF, 0, 0, 69, 34},
|
||||
{11, { 54, 71, 1, 69}, 0x40, 211, 0xFFFF, 0, 0, 70, 34},
|
||||
{14, { 55, 72, 1, 70}, 0x40, 213, 2, 0, 0, 71, 34},
|
||||
{11, { 55, 72, 1, 70}, 0x40, 210, 0xFFFF, 0, 0, 71, 34},
|
||||
{11, { 56, 0, 1, 71}, 0x40, 207, 0xFFFF, 0, 0, 72, 34},
|
||||
END_ROOMS,
|
||||
// Cantura
|
||||
{ 1, {255, 0, 0, 0}, 0x18, 44, 0xFFFF, 1, 0, 1, 38},
|
||||
{ 2, {255, 0, 0, 0}, 0x18, 44, 0xFFFF, 0, 0, 1, 38},
|
||||
{ 4, { 0, 0, 18, 0}, 0x86, 240, 0xA00, 0,48, 17, 54},
|
||||
{13, { 0, 0, 18, 0}, 0x80, 241, 0xA80, 0, 0, 17, 54},
|
||||
{14, { 0, 0, 18, 0}, 0x80, 242, 0xA02, 0, 0, 17, 54},
|
||||
{14, { 0, 0, 18, 0}, 0x80, 242, 0xFFFF, 0, 0, 17, 54},
|
||||
{15, { 17, 19, 0, 0}, 0x40, 224, 0xFFFF, 0, 0, 18, 32},
|
||||
{ 3, { 0, 20, 0, 18}, 0x40, 225, 0xFFFF, 0, 0, 19, 32},
|
||||
{ 3, { 0, 21, 0, 19}, 0x40, 226, 0xFFFF, 0, 0, 20, 32},
|
||||
{ 3, { 0, 22, 0, 20}, 0x40, 227, 0xFFFF, 0, 0, 21, 32},
|
||||
{ 9, { 0, 23, 38, 21}, 0xC0, 277, 0xFFFF, 0, 0, 22, 26},
|
||||
{10, { 0, 0, 22, 0}, 0xC4, 278, 0xFFFF, 0,52, 22, 26},
|
||||
{ 5, { 0, 24, 39, 22}, 0xC0, 276, 0xFFFF, 0, 0, 23, 26},
|
||||
{ 3, { 0, 25, 40, 23}, 0x81, 125, 0xFFFF, 0, 0, 24, 22},
|
||||
{ 3, { 0, 26, 41, 24}, 0x81, 131, 0xFFFF, 0, 0, 25, 22},
|
||||
{ 3, { 0, 27, 42, 25}, 0x81, 133, 0xFFFF, 0, 0, 26, 22},
|
||||
{ 3, { 0, 0, 43, 26}, 0x81, 132, 0xFFFF, 0, 0, 27, 22},
|
||||
{11, { 22, 39, 54, 0}, 0x40, 223, 0xFFFF, 0, 0, 38, 32},
|
||||
{ 3, { 23, 40, 55, 38}, 1, 167, 0xFFFF, 0, 0, 39, 28},
|
||||
{ 3, { 24, 41, 56, 39}, 0x81, 126, 0xFFFF, 0, 0, 40, 22},
|
||||
{ 3, { 25, 42, 57, 40}, 1, 172, 0xFFFF, 0, 0, 41, 28},
|
||||
{ 3, { 26, 43, 58, 41}, 1, 163, 0xFFFF, 0, 0, 42, 28},
|
||||
{ 3, { 27, 0, 59, 42}, 1, 168, 0xFFFF, 0, 0, 43, 28},
|
||||
{ 3, { 38, 55, 70, 0}, 1, 164, 0xFFFF, 0, 0, 54, 28},
|
||||
{ 3, { 39, 56, 71, 54}, 1, 165, 0xFFFF, 0, 0, 55, 28},
|
||||
{ 3, { 40, 57, 72, 55}, 1, 163, 0xFFFF, 0, 0, 56, 28},
|
||||
{ 3, { 41, 58, 73, 56}, 1, 167, 0xFFFF, 0, 0, 57, 28},
|
||||
{ 3, { 42, 59, 74, 57}, 1, 166, 0xFFFF, 0, 0, 58, 28},
|
||||
{ 3, { 43, 0, 75, 58}, 1, 171, 0xFFFF, 0, 0, 59, 28},
|
||||
{12, { 0, 70, 1, 0}, 0x40, 215, 0xFFFF, 0, 0, 69, 32},
|
||||
{ 3, { 54, 71, 1, 69}, 1, 173, 0xFFFF, 0, 0, 70, 28},
|
||||
{ 3, { 55, 72, 1, 70}, 1, 168, 0xFFFF, 0, 0, 71, 28},
|
||||
{ 3, { 56, 73, 1, 71}, 1, 169, 0xFFFF, 0, 0, 72, 28},
|
||||
{ 3, { 57, 74, 1, 72}, 1, 170, 0xFFFF, 0, 0, 73, 28},
|
||||
{ 3, { 58, 75, 1, 73}, 1, 172, 0xFFFF, 0, 0, 74, 28},
|
||||
{ 3, { 59, 0, 1, 74}, 1, 175, 0xFFFF, 0, 0, 75, 28},
|
||||
END_ROOMS,
|
||||
// Shandovra
|
||||
{ 1, {255, 0, 0, 0}, 0x18, 45, 0xFFFF, 1, 0, 1, 40},
|
||||
{ 2, {255, 0, 0, 0}, 0x18, 45, 0xFFFF, 0, 0, 1, 40},
|
||||
{ 3, { 0, 17, 32, 0}, 0xC1, 193, 0xFFFF, 0, 0, 16, 26},
|
||||
{ 3, { 0, 18, 33, 16}, 0x81, 125, 0xFFFF, 0, 0, 17, 22},
|
||||
{ 3, { 0, 19, 34, 17}, 0x81, 126, 0xFFFF, 0, 0, 18, 22},
|
||||
{ 3, { 0, 20, 35, 18}, 0x81, 127, 0xFFFF, 0, 0, 19, 22},
|
||||
{ 3, { 0, 21, 36, 19}, 0x81, 128, 0xFFFF, 0, 0, 20, 22},
|
||||
{ 3, { 0, 22, 37, 20}, 0x81, 131, 0xFFFF, 0, 0, 21, 22},
|
||||
{ 3, { 0, 23, 38, 21}, 0x81, 129, 0xFFFF, 0, 0, 22, 22},
|
||||
{ 3, { 0, 24, 39, 22}, 0x81, 130, 0xFFFF, 0, 0, 23, 22},
|
||||
{ 3, { 0, 25, 40, 23}, 0x81, 125, 0xFFFF, 0, 0, 24, 22},
|
||||
{ 3, { 0, 26, 41, 24}, 0x81, 124, 0xFFFF, 0, 0, 25, 22},
|
||||
{ 4, { 0, 27, 42, 25}, 0x80, 250, 0x100, 0, 0, 26, 22},
|
||||
{ 4, { 0, 27, 42, 25}, 0x80, 250, 0x300, 0, 0, 26, 22},
|
||||
{ 4, { 0, 27, 42, 25}, 0x80, 251, 0x200, 0, 0, 26, 22},
|
||||
{ 4, { 0, 27, 42, 25}, 0x80, 249, 0xFFFF, 0, 0, 26, 22},
|
||||
{ 3, { 0, 0, 43, 26}, 0x81, 132, 0xFFFF, 0, 0, 27, 22},
|
||||
{ 3, {16, 33, 48, 0}, 0xC1, 193, 0xFFFF, 0, 0, 32, 26},
|
||||
{ 3, {17, 34, 49, 32}, 0xC1, 193, 0xFFFF, 0, 0, 33, 26},
|
||||
{ 3, {18, 35, 50, 33}, 0xC1, 201, 0xFFFF, 0, 0, 34, 26},
|
||||
{ 3, {19, 36, 51, 34}, 1, 170, 0xFFFF, 0, 0, 35, 28},
|
||||
{ 3, {20, 37, 52, 35}, 1, 165, 0xFFFF, 0, 0, 36, 28},
|
||||
{ 3, {21, 38, 53, 36}, 1, 164, 0xFFFF, 0, 0, 37, 28},
|
||||
{ 3, {22, 39, 54, 37}, 0x81, 126, 0xFFFF, 0, 0, 38, 22},
|
||||
{ 3, {23, 40, 55, 38}, 1, 167, 0xFFFF, 0, 0, 39, 28},
|
||||
{ 3, {24, 41, 56, 39}, 0x81, 126, 0xFFFF, 0, 0, 40, 22},
|
||||
{ 3, {25, 42, 0, 40}, 0x81, 132, 0xFFFF, 0, 0, 41, 22},
|
||||
{ 3, {26, 43, 58, 41}, 0x81, 124, 0xFFFF, 0, 0, 42, 22},
|
||||
{ 3, {27, 0, 59, 42}, 0x81, 129, 0xFFFF, 0, 0, 43, 22},
|
||||
{ 6, {32, 49, 64, 0}, 0xC0, 276, 0xFFFF, 0, 0, 48, 26},
|
||||
{ 9, {33, 50, 65, 48}, 0xC0, 279, 0xFFFF, 0, 0, 49, 26},
|
||||
{10, { 0, 0, 49, 0}, 0xC4, 280, 0xFFFF, 0, 78, 49, 26},
|
||||
{ 3, {34, 51, 66, 49}, 0xC1, 197, 0xFFFF, 0, 0, 50, 26},
|
||||
{ 3, {35, 52, 67, 50}, 0xC1, 202, 0xFFFF, 0, 0, 51, 26},
|
||||
{ 3, {36, 53, 68, 51}, 1, 177, 0xFFFF, 0, 0, 52, 28},
|
||||
{ 3, {37, 54, 69, 52}, 0x81, 124, 0xFFFF, 0, 0, 53, 22},
|
||||
{ 3, {38, 55, 70, 53}, 0x81, 125, 0xFFFF, 0, 0, 54, 22},
|
||||
{ 3, {39, 56, 71, 54}, 1, 180, 0xFFFF, 0, 0, 55, 28},
|
||||
{12, {40, 0, 72, 55}, 0x40, 215, 0xFFFF, 0, 0, 56, 32},
|
||||
{11, {42, 59, 0, 0}, 0x40, 218, 0xFFFF, 0, 0, 58, 32},
|
||||
{11, {43, 0, 75, 58}, 0x40, 216, 0xFFFF, 0, 0, 59, 32},
|
||||
{ 9, {48, 65, 1, 0}, 0xC0, 277, 0xFFFF, 0, 0, 64, 26},
|
||||
{10, { 0, 0, 64, 0}, 0xC4, 278, 0xFFFF, 0, 52, 64, 26},
|
||||
{ 3, {49, 66, 1, 64}, 0xC1, 197, 0xFFFF, 0, 0, 65, 26},
|
||||
{ 3, {50, 67, 1, 65}, 0xC1, 200, 0xFFFF, 0, 0, 66, 26},
|
||||
{ 3, {51, 68, 1, 66}, 0x81, 125, 0xFFFF, 0, 0, 67, 22},
|
||||
{ 3, {52, 69, 1, 67}, 0x81, 129, 0xFFFF, 0, 0, 68, 22},
|
||||
{ 3, {53, 70, 1, 68}, 0x81, 133, 0xFFFF, 0, 0, 69, 22},
|
||||
{ 3, {54, 71, 1, 69}, 1, 179, 0xFFFF, 0, 0, 70, 28},
|
||||
{ 3, {55, 72, 1, 70}, 1, 181, 0xFFFF, 0, 0, 71, 28},
|
||||
{11, {56, 0, 1, 71}, 0x40, 214, 0xFFFF, 0, 0, 72, 32},
|
||||
{11, {59, 0, 1, 0}, 0x40, 223, 0xFFFF, 0, 0, 75, 32},
|
||||
END_ROOMS
|
||||
};
|
||||
540
devtools/create_cryo/eden_static.h
Normal file
540
devtools/create_cryo/eden_static.h
Normal file
@@ -0,0 +1,540 @@
|
||||
/* ScummVM - Graphic Adventure Engine
|
||||
*
|
||||
* ScummVM is the legal property of its developers, whose names
|
||||
* are too numerous to list here. Please refer to the COPYRIGHT
|
||||
* file distributed with this source distribution.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
#include "eden.h"
|
||||
|
||||
Follower followerList[15] = {
|
||||
// char, X, sx, sy, ex, ey,bank,
|
||||
{ PersonId::pidGregor, 5, 211, 9, 320, 176, 228, 0, 0 },
|
||||
{ PersonId::pidEloi, 4, 162, 47, 223, 176, 228, 112, 78 },
|
||||
{ PersonId::pidDina, 3, 55, 0, 172, 176, 228, 90, 16 },
|
||||
{ PersonId::pidChongOfChamaar, 4, 0, 5, 114, 176, 229, 0, 16 },
|
||||
{ PersonId::pidKommalaOfKoto, 3, 0, 15, 102, 176, 229, 0, 16 },
|
||||
{ PersonId::pidUlanOfUlele, 1, 0, 0, 129, 176, 230, 0, 16 },
|
||||
{ PersonId::pidCabukaOfCantura, 2, 0, 0, 142, 176, 230, 0, 16 },
|
||||
{ PersonId::pidFuggOfTamara, 0, 0, 17, 102, 176, 230, 0, 16 },
|
||||
{ PersonId::pidJabber, 2, 0, 6, 134, 176, 228, 0, 16 },
|
||||
{ PersonId::pidShazia, 1, 90, 17, 170, 176, 228, 50, 22 },
|
||||
{ PersonId::pidThugg, 0, 489, 8, 640, 176, 228, 160, 24 },
|
||||
{ PersonId::pidMungo, 5, 361, 0, 517, 176, 229, 0, 16 },
|
||||
{ PersonId::pidMonk, 0, 419, 22, 569, 176, 229, 100, 30 },
|
||||
{ PersonId::pidEve, 1, 300, 28, 428, 176, 229, 0, 38 },
|
||||
{ -1, -1, -1, -1, -1, -1, -1, -1, -1 }
|
||||
};
|
||||
|
||||
byte kLabyrinthPath[70] = {
|
||||
// each nibble tells which direction to choose to exit the labyrinth
|
||||
0x11, 0x11, 0x11, 0x22, 0x33, 0x55, 0x25, 0x44, 0x25, 0x11, 0x11, 0x11,
|
||||
0x11, 0x35, 0x55, 0x45, 0x45, 0x44, 0x44, 0x34, 0x44, 0x34, 0x32, 0x52,
|
||||
0x33, 0x23, 0x24, 0x44, 0x24, 0x22, 0x54, 0x22, 0x54, 0x54, 0x44, 0x22,
|
||||
0x22, 0x42, 0x45, 0x22, 0x42, 0x45, 0x35, 0x11, 0x44, 0x34, 0x52, 0x11,
|
||||
0x44, 0x32, 0x55, 0x11, 0x11, 0x33, 0x11, 0x11, 0x53, 0x11, 0x11, 0x53,
|
||||
0x54, 0x24, 0x11, 0x22, 0x25, 0x33, 0x53, 0x54, 0x23, 0x44
|
||||
};
|
||||
|
||||
char kDinoSpeedForCitaLevel[16] = { 1, 2, 3, 4, 4, 5, 6, 7, 8, 9 };
|
||||
|
||||
char kTabletView[12] = { //TODO: make as struct?
|
||||
// opposite tablet id, video id
|
||||
Objects::obUnused10, 83,
|
||||
Objects::obUnused10, 84,
|
||||
Objects::obTablet4, 85,
|
||||
Objects::obTablet3, 86,
|
||||
Objects::obTablet6, 87,
|
||||
Objects::obTablet5, 85
|
||||
};
|
||||
|
||||
// special character backgrounds for specific rooms
|
||||
char kPersoRoomBankTable[84] = {
|
||||
// first entry is default bank, then pairs of [roomNum, bankNum], terminated by -1
|
||||
0, 3, 33, -1,
|
||||
21, 17, 35, -1,
|
||||
0, 2, 36, -1,
|
||||
22, 9, 38, 3, 39, -1,
|
||||
23, 8, 40, -1,
|
||||
0, 3, 41, 7, 42, -1,
|
||||
25, -1,
|
||||
27, 17, 45, -1,
|
||||
28, 26, 46, -1,
|
||||
29, 51, 48, -1,
|
||||
30, 53, 49, -1,
|
||||
0, 27, 50, -1,
|
||||
32, 17, 51, -1,
|
||||
52, 2, 52, -1,
|
||||
-3, 3, -3, -1,
|
||||
31, -1,
|
||||
24, 6, 43, -1,
|
||||
47, -1,
|
||||
0, 2, 64, -1,
|
||||
54, 3, 54, -1,
|
||||
27, -1,
|
||||
26, 17, 45, -1
|
||||
};
|
||||
|
||||
// area transition descriptors
|
||||
Goto gotos[130] = {
|
||||
// area, oldarea, vid, time, valleyVid
|
||||
{ 0, 1, 0, 2, 20 },
|
||||
{ 0, 1, 162, 3, 168 },
|
||||
{ 0, 2, 0, 2, 21 },
|
||||
{ 0, 6, 0, 3, 108 },
|
||||
{ 0, 9, 151, 3, 0 },
|
||||
{ 0, 7, 106, 2, 101 },
|
||||
{ 0, 10, 79, 3, 102 },
|
||||
{ 0, 12, 0, 3, 0 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 1, 3, 58, 2, 104 },
|
||||
{ 1, 4, 100, 4, 104 },
|
||||
{ 1, 5, 107, 6, 104 },
|
||||
{ 1, 6, 155, 8, 104 },
|
||||
{ 1, 7, 165, 6, 104 },
|
||||
{ 1, 8, 169, 6, 104 },
|
||||
{ 1, 10, 111, 2, 104 },
|
||||
{ 1, 11, 164, 4, 104 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 1, 3, 161, 3, 102 },
|
||||
{ 1, 4, 163, 6, 102 },
|
||||
{ 1, 5, 157, 9, 102 },
|
||||
{ 1, 9, 160, 9, 102 },
|
||||
{ 1, 10, 79, 3, 102 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 1, 3, 0, 3, 153 }, // 24
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 3, 1, 154, 2, 103 },
|
||||
{ 3, 4, 100, 2, 103 },
|
||||
{ 3, 5, 107, 4, 103 },
|
||||
{ 3, 6, 155, 6, 103 },
|
||||
{ 3, 7, 165, 8, 103 },
|
||||
{ 3, 8, 169, 6, 103 },
|
||||
{ 3, 10, 111, 4, 103 },
|
||||
{ 3, 11, 164, 6, 103 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 3, 1, 162, 3, 22 },
|
||||
{ 3, 4, 163, 6, 22 },
|
||||
{ 3, 5, 157, 9, 22 },
|
||||
{ 3, 9, 160, 9, 22 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 3, 1, 0, 3, 166 }, // 40
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 4, 1, 154, 4, 51 },
|
||||
{ 4, 3, 58, 2, 51 },
|
||||
{ 4, 5, 107, 2, 51 },
|
||||
{ 4, 6, 155, 4, 51 },
|
||||
{ 4, 7, 165, 6, 51 },
|
||||
{ 4, 8, 169, 8, 51 },
|
||||
{ 4, 10, 111, 6, 51 },
|
||||
{ 4, 11, 164, 8, 51 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 4, 1, 162, 3, 109 }, // 51
|
||||
{ 4, 3, 161, 6, 109 },
|
||||
{ 4, 5, 157, 9, 109 },
|
||||
{ 4, 9, 160, 9, 109 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 5, 1, 154, 6, 33 },
|
||||
{ 5, 3, 58, 4, 33 },
|
||||
{ 5, 4, 100, 2, 33 },
|
||||
{ 5, 6, 155, 2, 33 },
|
||||
{ 5, 7, 165, 4, 33 },
|
||||
{ 5, 8, 169, 8, 33 },
|
||||
{ 5, 10, 111, 8, 33 },
|
||||
{ 5, 11, 164, 8, 33 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 5, 1, 162, 3, 99 }, // 65
|
||||
{ 5, 3, 161, 6, 99 },
|
||||
{ 5, 4, 163, 9, 99 },
|
||||
{ 5, 9, 160, 9, 99 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 9, 1, 162, 3, 167 }, // 70
|
||||
{ 9, 3, 161, 6, 167 },
|
||||
{ 9, 4, 163, 9, 167 },
|
||||
{ 9, 5, 157, 9, 167 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 6, 1, 154, 8, 105 }, // 75
|
||||
{ 6, 3, 58, 6, 105 },
|
||||
{ 6, 4, 100, 4, 105 },
|
||||
{ 6, 5, 107, 2, 105 },
|
||||
{ 6, 7, 165, 2, 105 },
|
||||
{ 6, 8, 169, 10, 105 },
|
||||
{ 6, 10, 111, 6, 105 },
|
||||
{ 6, 11, 164, 8, 105 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 7, 1, 154, 4, 158 }, // 84
|
||||
{ 7, 3, 58, 6, 158 },
|
||||
{ 7, 4, 100, 6, 158 },
|
||||
{ 7, 5, 107, 4, 158 },
|
||||
{ 7, 6, 155, 2, 158 },
|
||||
{ 7, 8, 169, 8, 158 },
|
||||
{ 7, 10, 111, 4, 158 },
|
||||
{ 7, 11, 164, 6, 158 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 8, 1, 154, 2, 159 }, // 93
|
||||
{ 8, 3, 58, 4, 159 },
|
||||
{ 8, 4, 100, 6, 159 },
|
||||
{ 8, 5, 107, 8, 159 },
|
||||
{ 8, 6, 155, 10, 159 },
|
||||
{ 8, 7, 165, 8, 159 },
|
||||
{ 8, 10, 111, 6, 159 },
|
||||
{ 8, 11, 164, 4, 159 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 10, 1, 154, 2, 77 }, // 102
|
||||
{ 10, 3, 58, 4, 77 },
|
||||
{ 10, 4, 100, 6, 77 },
|
||||
{ 10, 5, 107, 8, 77 },
|
||||
{ 10, 6, 155, 6, 77 },
|
||||
{ 10, 7, 165, 4, 77 },
|
||||
{ 10, 8, 169, 6, 77 },
|
||||
{ 10, 11, 164, 4, 77 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 11, 1, 154, 2, 80 }, // 111
|
||||
{ 11, 3, 58, 4, 80 },
|
||||
{ 11, 4, 100, 6, 80 },
|
||||
{ 11, 5, 107, 8, 80 },
|
||||
{ 11, 6, 155, 8, 80 },
|
||||
{ 11, 7, 165, 6, 80 },
|
||||
{ 11, 8, 169, 2, 80 },
|
||||
{ 11, 10, 111, 4, 80 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 12, 1, 154, 8, 56 }, // 120
|
||||
{ 12, 3, 58, 4, 56 },
|
||||
{ 12, 4, 100, 4, 56 },
|
||||
{ 12, 5, 107, 6, 56 },
|
||||
{ 12, 6, 155, 8, 56 },
|
||||
{ 12, 7, 165, 10, 56 },
|
||||
{ 12, 8, 169, 4, 56 },
|
||||
{ 12, 10, 111, 10, 56 },
|
||||
{ 12, 11, 164, 6, 56 },
|
||||
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
};
|
||||
|
||||
object_t _objects[42] = {
|
||||
//id,fl,loc,masklow,maskhi,ct
|
||||
{ 1, 0, 3, 1, 0, 0}, // Eve's Way Stone
|
||||
{ 2, 0, 3, 2, 0, 0}, // Thau's Seashell
|
||||
{ 3, 0, 3, 4, 0, 0}, // Talisman of bravery
|
||||
{ 4, 0, 3, 8, 0, 0}, // An old tooth. Very old! Whoever lost it most certainly has no further use for it!
|
||||
{ 5, 0, 0, 0x10, 0, 0}, // Prism
|
||||
{ 6, 0, 3, 0, 0, 0}, // Flute
|
||||
{ 7, 0, 3, 0x4000, 0, 0}, // Apple
|
||||
{ 8, 0, 4, 0x1000, 0, 0}, // Egg of Destiny
|
||||
{ 9, 0, 3, 0x800, 0, 0}, // Root
|
||||
{ 10, 0, 3, 0, 0, 0}, // ???
|
||||
{ 11, 0, 6, 0, 0, 0}, // Mushroom
|
||||
{ 12, 0, 13, 0, 0, 0}, // Poisonous Mushroom
|
||||
{ 13, 0, 2, 0x400, 0, 0}, // Graa's Knife
|
||||
{ 14, 0, 22, 0, 0, 0}, // Empty Nest
|
||||
{ 15, 0, 26, 0, 0, 0}, // Full Nest
|
||||
{ 16, 0, 33, 0x20, 0, 0}, // Gold
|
||||
{ 17, 0, 3, 0, 0, 0}, // Sign of Shadow Mistress (moon stone)
|
||||
{ 18, 0, 3, 0, 0, 0}, // Sign of Mother of all (bag of soil)
|
||||
{ 19, 0, 40, 0, 0, 0}, // Sign of the life-giving (sun star)
|
||||
{ 20, 0, 20, 0x200, 0, 0}, // King's Horn
|
||||
{ 21, 0, 3, 0, 0, 0}, // Golden Sword of Mashaar
|
||||
// Masks
|
||||
{ 22, 0, 3, 0x40, 0, 0}, // Mask of Death
|
||||
{ 23, 0, 3, 0x80, 0, 0}, // Mask of Bonding
|
||||
{ 24, 0, 3, 0x100, 0, 0}, // Mask of Birth
|
||||
// Objects of power
|
||||
{ 25, 0, 3, 0, 1, 0}, // Eye in the Storm
|
||||
{ 26, 0, 3, 0, 2, 0}, // Sky Hammer
|
||||
{ 27, 0, 3, 0, 4, 0}, // Fire in the Clouds
|
||||
{ 28, 0, 3, 0, 8, 0}, // Within and Without
|
||||
{ 29, 0, 3, 0, 0x10, 0}, // Eye in the Cyclone
|
||||
{ 30, 0, 3, 0, 0x20, 0}, // River that Winds
|
||||
// Musical instruments
|
||||
{ 31, 0, 3, 0, 0x40, 0}, // Trumpet
|
||||
{ 32, 0, 3, 0, 0x80, 0}, // -- unused (but still has a dialog line)
|
||||
{ 33, 0, 3, 0, 0x100, 0}, // Drum
|
||||
{ 34, 0, 3, 0, 0x200, 0}, // -- unused (but still has a dialog line)
|
||||
{ 35, 0, 3, 0, 0x400, 0}, // -- unused (but still has a dialog line)
|
||||
{ 36, 0, 3, 0, 0x800, 0}, // Ring
|
||||
// Tablets
|
||||
{ 37, 0, 3, 0, 0, 0}, // Tablet #1 (Mo)
|
||||
{ 38, 0, 42, 0x2000, 0, 0}, // Tablet #2 (Morkus' Lair)
|
||||
{ 39, 0, 3, 0, 0, 0}, // Tablet #3 (White Arch?)
|
||||
{ 40, 0, 3, 0, 0, 0}, // Tablet #4
|
||||
{ 41, 0, 3, 0, 0, 0}, // Tablet #5
|
||||
{ 42, 0, 3, 0x8000, 0, 0} // Tablet #6 (Castra)
|
||||
};
|
||||
|
||||
uint16 kObjectLocations[45] = {
|
||||
0x112, 0xFFFF,
|
||||
0x202, 0xFFFF,
|
||||
0x120, 0xFFFF,
|
||||
0x340, 0x44B, 0x548, 0x640, 0x717, 0x830, 0xFFFF,
|
||||
0x340, 0x44B, 0x548, 0x640, 0x717, 0x830, 0xFFFF,
|
||||
0, 0xFFFF,
|
||||
0x344, 0x53A, 0x831, 0xFFFF,
|
||||
0x331, 0x420, 0x54B, 0x637, 0x716, 0x840, 0xFFFF,
|
||||
0x834A, 0x8430, 0x8531, 0x644, 0x745, 0x838, 0xFFFF,
|
||||
0x510, 0xFFFF,
|
||||
0xC04, 0xFFFF,
|
||||
0xFFFF
|
||||
};
|
||||
|
||||
perso_t kPersons[58] = {
|
||||
// room, aid, party mask, id, flags, X,bank,X, X,sprId,sprX,speed, X
|
||||
{ 0x103, 230, PersonMask::pmGregor, PersonId::pidGregor , 0, 0, 1, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x116, 231, PersonMask::pmDina , PersonId::pidDina , 0, 4, 2, 0, 0, 3, 9, 0, 0 },
|
||||
{ 0x202, 232, PersonMask::pmTau , PersonId::pidTau , 0, 8, 3, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x109, 233, PersonMask::pmMonk , PersonId::pidMonk , 0, 12, 4, 0, 0, 6, 52, 0, 0 },
|
||||
{ 0x108, 234, PersonMask::pmJabber, PersonId::pidJabber , 0, 18, 5, 0, 0, 2, 0, 0, 0 },
|
||||
{ 0x103, 235, PersonMask::pmEloi , PersonId::pidEloi , 0, 22, 6, 0, 0, 4, 20, 0, 0 },
|
||||
{ 0x301, 236, PersonMask::pmMungo , PersonId::pidMungo , 0, 28, 8, 0, 0, 11, 45, 0, 0 },
|
||||
{ 0x628, 237, PersonMask::pmEve , PersonId::pidEve , 0, 30, 10, 0, 0, 7, 35, 0, 0 },
|
||||
{ 0x81A, 238, PersonMask::pmShazia, PersonId::pidShazia , 0, 34, 11, 0, 0, 1, 11, 0, 0 },
|
||||
{ 0x330, 239, PersonMask::pmLeader, PersonId::pidChongOfChamaar , 0, 38, 13, 0, 0, 10, 0, 0, 0 },
|
||||
{ 0x41B, 239, PersonMask::pmLeader, PersonId::pidUlanOfUlele , 0, 46, 15, 0, 0, 13, 0, 0, 0 },
|
||||
{ 0x53B, 239, PersonMask::pmLeader, PersonId::pidKommalaOfKoto , 0, 42, 14, 0, 0, 9, 0, 0, 0 },
|
||||
{ 0x711, 239, PersonMask::pmLeader, PersonId::pidCabukaOfCantura , 0, 50, 16, 0, 0, 14, 0, 0, 0 },
|
||||
{ 0xA02, 239, PersonMask::pmLeader, PersonId::pidMarindaOfEmbalmers, 0, 54, 17, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x628, 239, PersonMask::pmLeader, PersonId::pidFuggOfTamara , 0, 62, 18, 0, 0, 12, 0, 0, 0 },
|
||||
{ 0x801, 239, PersonMask::pmLeader, PersonId::pidChongOfChamaar , 0, 38, 13, 0, 0, 10, 0, 0, 0 },
|
||||
{ 0x41B, 10, PersonMask::pmQuest , PersonId::pidUlanOfUlele , PersonFlags::pfType2 , 46, 15, 0, 0, 13, 0, 0, 0 },
|
||||
{ 0x711, 11, PersonMask::pmQuest , PersonId::pidCabukaOfCantura , PersonFlags::pfType2 , 50, 16, 0, 0, 14, 0, 0, 0 },
|
||||
{ 0x106, 240, PersonMask::pmThugg , PersonId::pidThugg , 0, 64, 7, 0, 0, 0, 61, 0, 0 },
|
||||
{ 0, 13, 0, PersonId::pidNarrator , 0, 68, 12, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x902, 241, PersonMask::pmQuest , PersonId::pidNarrim , 0, 70, 19, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0xC03, 244, PersonMask::pmMorkus, PersonId::pidMorkus , 0, 74, 20, 0, 0, 0, 0, 0, 0 },
|
||||
// dinos in each valley
|
||||
{ 0x332, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pfType8 , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x329, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pfType8 , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x33B, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftTriceraptor , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x317, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftVelociraptor, 0, 0, 0, 0, 0, 0, 1, 0 },
|
||||
{ 0x320, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pfType12 , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x349, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftMosasaurus , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
|
||||
{ 0x429, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pfType8 , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x43B, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftTriceraptor , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x422, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftVelociraptor, 0, 0, 0, 0, 0, 0, 1, 0 },
|
||||
{ 0x432, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftMosasaurus , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
|
||||
{ 0x522, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pfType8 , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x534, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftTriceraptor , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x515, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pftVelociraptor , 0, 0, 0, 0, 0, 0, 1, 0 },
|
||||
{ 0x533, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftMosasaurus , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
|
||||
{ 0x622, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pfType8 , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x630, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftTriceraptor , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x643, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftVelociraptor, 0, 0, 0, 0, 0, 0, 1, 0 },
|
||||
{ 0x63A, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftMosasaurus , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
|
||||
{ 0x737, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pfType8 , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x739, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftTriceraptor , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x74A, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftVelociraptor, 0, 0, 0, 0, 0, 0, 1, 0 },
|
||||
{ 0x726, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftMosasaurus , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
|
||||
{ 0x842, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pfType8 , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x822, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftTriceraptor , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x828, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pftVelociraptor , 0, 0, 0, 0, 0, 0, 1, 0 },
|
||||
{ 0x84B, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pf80 | PersonFlags::pftMosasaurus , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
|
||||
{ 0xB03, 242, PersonMask::pmDino , PersonId::pidDinosaur , PersonFlags::pfType8 , 58, 252, 0, 0, 0, 0, 0, 0 },
|
||||
// enemy dinos
|
||||
{ 0x311, 243, PersonMask::pmEnemy , PersonId::pidEnemy , PersonFlags::pf80 | PersonFlags::pftTyrann , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x410, 243, PersonMask::pmEnemy , PersonId::pidEnemy , PersonFlags::pf80 | PersonFlags::pftTyrann , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x51B, 243, PersonMask::pmEnemy , PersonId::pidEnemy , PersonFlags::pf80 | PersonFlags::pftTyrann , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x618, 243, PersonMask::pmEnemy , PersonId::pidEnemy , PersonFlags::pf80 | PersonFlags::pftTyrann , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x71B, 243, PersonMask::pmEnemy , PersonId::pidEnemy , PersonFlags::pf80 | PersonFlags::pftTyrann , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0x81B, 243, PersonMask::pmEnemy , PersonId::pidEnemy , PersonFlags::pf80 | PersonFlags::pftTyrann , 0, 0, 0, 0, 0, 0, 0, 0 },
|
||||
{ 0xFFFF, 0xFFFF, 0xFFFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFFFF, 0xFFFF, 0xFF, 0xFF, 0xFF, 0xFF},
|
||||
{ 0x628, 237, PersonMask::pmEve , PersonId::pidEve , 0, 80, 9, 0, 0, 8, 35, 0, 0 },
|
||||
{ 0x628, 237, PersonMask::pmEve , PersonId::pidEve , 0, 78, 10, 0, 0, 7, 35, 0, 0 }
|
||||
};
|
||||
|
||||
Citadel _citadelList[7] = {
|
||||
{ 1, { 163, 182, 0, 0, 124, 147, 193, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0 } },
|
||||
{ 48, { 285, 286, 0, 0, 287, 288, 284, 0 }, { 114, 115, 0, 0, 116, 117, 113, 0 } },
|
||||
{ 63, { 290, 291, 0, 0, 292, 293, 289, 0 }, { 119, 120, 0, 0, 121, 122, 118, 0 } },
|
||||
{ 95, { 295, 296, 0, 0, 297, 298, 294, 0 }, { 124, 125, 0, 0, 126, 127, 123, 0 } },
|
||||
{ 127, { 300, 301, 0, 0, 302, 303, 299, 0 }, { 129, 130, 0, 0, 131, 132, 128, 0 } },
|
||||
{ 159, { 305, 306, 0, 0, 307, 308, 304, 0 }, { 134, 135, 0, 0, 136, 137, 133, 0 } },
|
||||
{ 255, { 310, 311, 0, 0, 312, 313, 309, 0 }, { 139, 140, 0, 0, 141, 142, 138, 0 } }
|
||||
};
|
||||
|
||||
Rect _characterRects[19] = { // TODO: just an array of int16s?
|
||||
{ 93, 69, 223, 176},
|
||||
{ 102, 86, 162, 126},
|
||||
{ 88, 103, 168, 163},
|
||||
{ 116, 66, 192, 176},
|
||||
{ 129, 92, 202, 153},
|
||||
{ 60, 95, 160, 176},
|
||||
{ 155, 97, 230, 145},
|
||||
{ 100, 77, 156, 145},
|
||||
{ 110, 78, 170, 156},
|
||||
{ 84, 76, 166, 162},
|
||||
{ 57, 77, 125, 114},
|
||||
{ 93, 69, 223, 175},
|
||||
{ 93, 69, 223, 176},
|
||||
{ 93, 69, 223, 176},
|
||||
{ 154, 54, 245, 138},
|
||||
{ 200, 50, 261, 116},
|
||||
{ 70, 84, 162, 176},
|
||||
{ 125, 101, 222, 172},
|
||||
{ 188, 83, 251, 158}
|
||||
};
|
||||
|
||||
byte _characterArray[20][5] = { // TODO: struc?
|
||||
{ 8, 15, 23, 25, 0xFF },
|
||||
{ 0, 9, 0xFF, 0, 0 },
|
||||
{ 0, 9, 0xFF, 0, 0 },
|
||||
{ 0, 9, 0xFF, 0, 0 },
|
||||
{ 0, 13, 0xFF, 0, 0 },
|
||||
{ 16, 21, 0xFF, 0, 0 },
|
||||
{ 11, 20, 0xFF, 0, 0 },
|
||||
{ 0, 12, 0xFF, 0, 0 },
|
||||
{ 0, 9, 0xFF, 0, 0 },
|
||||
{ 0, 9, 0xFF, 0, 0 },
|
||||
{ 5, 13, 0xFF, 0, 0 },
|
||||
{ 0xFF, 0, 0, 0, 0 },
|
||||
{ 0, 8, 0xFF, 0, 0 },
|
||||
{ 0xFF, 0, 0, 0, 0 },
|
||||
{ 0, 7, 0xFF, 0, 0 },
|
||||
{ 0, 8, 0xFF, 0, 0 },
|
||||
{ 8, 12, 0xFF, 0, 0 },
|
||||
{ 0, 5, 0xFF, 0, 0 },
|
||||
{ 0, 4, 0xFF, 0, 0 },
|
||||
{ 0xFF, 0, 0, 0, 0 }
|
||||
};
|
||||
|
||||
Area kAreasTable[12] = {
|
||||
{ Areas::arMo , AreaType::atCitadel, 0, 0, 0, 1, 0, 0},
|
||||
{ Areas::arTausCave , AreaType::atCave , 0, 112, 0, 2, 0, 0},
|
||||
{ Areas::arChamaar , AreaType::atValley , 0, 133, 0, 3, 0, 0},
|
||||
{ Areas::arUluru , AreaType::atValley , 0, 187, 0, 4, 0, 0},
|
||||
{ Areas::arKoto , AreaType::atValley , AreaFlags::HasVelociraptors, 236, 0, 5, 0, 0},
|
||||
{ Areas::arTamara , AreaType::atValley , 0, 288, 0, 6, 0, 0},
|
||||
{ Areas::arCantura , AreaType::atValley , 0, 334, 0, 7, 0, 0},
|
||||
{ Areas::arShandovra , AreaType::atValley , 0, 371, 0, 8, 0, 0},
|
||||
{ Areas::arNarimsCave , AreaType::atCave , 0, 115, 0, 9, 0, 0},
|
||||
{ Areas::arEmbalmersCave, AreaType::atCave , 0, 118, 0, 10, 0, 0},
|
||||
{ Areas::arWhiteArch , AreaType::atCave , 0, 122, 0, 11, 0, 0},
|
||||
{ Areas::arMoorkusLair , AreaType::atCave , 0, 127, 0, 12, 0, 0}
|
||||
};
|
||||
|
||||
int16 tab_2CEF0[64] = {
|
||||
25, 257, 0, 0, 37, 258, 38, 259, 0, 0, 24, 260, 0, 0, 0, 0,
|
||||
0, 0, 53, 265, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
39, 261, 0, 0, 40, 262, 62, 263, 0, 0, 63, 264, 0, 0, 0, 0,
|
||||
18, 275, 0, 0, 35, 254, 36, 255, 19, 318, 23, 256, 0, 0, 0, 0
|
||||
};
|
||||
|
||||
int16 tab_2CF70[64] = {
|
||||
65, 266, 0, 0, 66, 267, 67, 268, 0, 0, 68, 269, 0, 0, 0, 0,
|
||||
0, 0, 73, 274, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
69, 270, 0, 0, 70, 271, 71, 272, 0, 0, 72, 273, 0, 0, 0, 0,
|
||||
18, 275, 0, 0, 35, 254, 36, 255, 19, 318, 23, 256, 0, 0, 0, 0,
|
||||
};
|
||||
|
||||
byte kActionCursors[299] = {
|
||||
3, 1, 2, 4, 5, 5, 5, 0, 5, 5,
|
||||
5, 5, 5, 3, 2, 5, 5, 5, 3, 2,
|
||||
4, 5, 7, 7, 4, 5, 5, 0, 0, 0,
|
||||
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
|
||||
5, 5, 0, 0, 0, 0, 5, 5, 5, 5,
|
||||
5, 5, 5, 5, 5, 5, 5, 5, 0, 0,
|
||||
0, 0, 5, 5, 5, 5, 5, 5, 5, 5,
|
||||
5, 5, 5, 5, 0, 0, 0, 0, 5, 5,
|
||||
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
|
||||
6, 6, 6, 6, 6, 6, 6, 0, 5, 6,
|
||||
6, 1, 6, 6, 0, 0, 6, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 6, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
|
||||
8, 8, 8, 8, 8, 8, 0, 0, 6, 6,
|
||||
53, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0
|
||||
};
|
||||
|
||||
byte mapMode[12] = { 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 2, 0 };
|
||||
|
||||
// Cube faces to texture coords mapping
|
||||
// each entry is num_polys(6) * num_faces_per_poly(2) * vertex_per_face(3) * uv(2)
|
||||
byte cubeTextureCoords[3][6 * 2 * 3 * 2] = {
|
||||
{
|
||||
32, 32, 0, 32, 0, 0,
|
||||
32, 32, 0, 0, 32, 0,
|
||||
|
||||
0, 32, 0, 0, 32, 0,
|
||||
0, 32, 32, 0, 32, 32,
|
||||
|
||||
32, 32, 0, 32, 0, 0,
|
||||
32, 32, 0, 0, 32, 0,
|
||||
|
||||
32, 0, 32, 32, 0, 32,
|
||||
32, 0, 0, 32, 0, 0,
|
||||
|
||||
0, 0, 32, 0, 32, 32,
|
||||
0, 0, 32, 32, 0, 32,
|
||||
|
||||
0, 32, 0, 0, 32, 0,
|
||||
0, 32, 32, 0, 32, 32
|
||||
}, {
|
||||
32, 32, 0, 32, 0, 0,
|
||||
32, 32, 0, 0, 32, 0,
|
||||
|
||||
32, 0, 32, 32, 0, 32,
|
||||
32, 0, 0, 32, 0, 0,
|
||||
|
||||
32, 0, 32, 32, 0, 32,
|
||||
32, 0, 0, 32, 0, 0,
|
||||
|
||||
0, 32, 0, 0, 32, 0,
|
||||
0, 32, 32, 0, 32, 32,
|
||||
|
||||
32, 0, 32, 32, 0, 32,
|
||||
32, 0, 0, 32, 0, 0,
|
||||
|
||||
32, 0, 32, 32, 0, 32,
|
||||
32, 0, 0, 32, 0, 0
|
||||
}, {
|
||||
30, 30, 2, 30, 2, 2,
|
||||
30, 30, 2, 2, 30, 2,
|
||||
|
||||
2, 30, 2, 2, 30, 2,
|
||||
2, 30, 30, 2, 30, 30,
|
||||
|
||||
30, 30, 2, 30, 2, 2,
|
||||
30, 30, 2, 2, 30, 2,
|
||||
|
||||
30, 2, 30, 30, 2, 30,
|
||||
30, 2, 2, 30, 2, 2,
|
||||
|
||||
2, 2, 30, 2, 30, 30,
|
||||
2, 2, 30, 30, 2, 30,
|
||||
|
||||
2, 30, 2, 2, 30, 2,
|
||||
2, 30, 30, 2, 30, 30
|
||||
}
|
||||
};
|
||||
11
devtools/create_cryo/module.mk
Normal file
11
devtools/create_cryo/module.mk
Normal file
@@ -0,0 +1,11 @@
|
||||
|
||||
MODULE := devtools/create_cryo
|
||||
|
||||
MODULE_OBJS := \
|
||||
create_cryo_dat.o
|
||||
|
||||
# Set the name of the executable
|
||||
TOOL_EXECUTABLE := create_cryo_dat
|
||||
|
||||
# Include common rules
|
||||
include $(srcdir)/rules.mk
|
||||
Reference in New Issue
Block a user