diff options
author | athrxx | 2011-08-06 00:40:53 +0200 |
---|---|---|
committer | Johannes Schickel | 2011-12-26 16:18:13 +0100 |
commit | bac0caeb0ff712fe9002985c44c1ea651b86e018 (patch) | |
tree | 5fbfbe57957f441f07e7b644ba402fb21c5f1f40 /devtools | |
parent | aab9e62247af1c22772bb79821675fbab06c047d (diff) | |
download | scummvm-rg350-bac0caeb0ff712fe9002985c44c1ea651b86e018.tar.gz scummvm-rg350-bac0caeb0ff712fe9002985c44c1ea651b86e018.tar.bz2 scummvm-rg350-bac0caeb0ff712fe9002985c44c1ea651b86e018.zip |
KYRA: (EOB) - lots of fixes towards EOB1 playability
also implement some new code (EOB1 portals, burning hands spell, etc.)
Diffstat (limited to 'devtools')
-rw-r--r-- | devtools/create_kyradat/create_kyradat.cpp | 9 | ||||
-rw-r--r-- | devtools/create_kyradat/create_kyradat.h | 3 | ||||
-rw-r--r-- | devtools/create_kyradat/games.cpp | 5 | ||||
-rw-r--r-- | devtools/create_kyradat/tables.cpp | 22 |
4 files changed, 37 insertions, 2 deletions
diff --git a/devtools/create_kyradat/create_kyradat.cpp b/devtools/create_kyradat/create_kyradat.cpp index 582516bc93..a646bee5b1 100644 --- a/devtools/create_kyradat/create_kyradat.cpp +++ b/devtools/create_kyradat/create_kyradat.cpp @@ -332,11 +332,13 @@ const ExtractFilename extractFilenames[] = { { kEobBaseDscDoorScaleMult5, kTypeRawData, false }, { kEobBaseDscDoorScaleMult6, kTypeRawData, false }, { kEobBaseDscDoorType5Offs, kTypeRawData, false }, + { kEobBaseDscDoorXE, kTypeRawData, false }, { kEobBaseDscDoorY1, kTypeRawData, false }, { kEobBaseDscDoorY3, kTypeRawData, false }, { kEobBaseDscDoorY4, kTypeRawData, false }, { kEobBaseDscDoorY5, kTypeRawData, false }, { kEobBaseDscDoorY6, kTypeRawData, false }, + { kEobBaseDscDoorY7, kTypeRawData, false }, { kEobBaseDscDoorCoordsExt, kLolTypeRaw16, false }, { kEobBaseDscItemPosIndex, kTypeRawData, false }, @@ -401,6 +403,7 @@ const ExtractFilename extractFilenames[] = { { kEobBaseSpellProperties, kTypeRawData, false }, { kEobBaseMagicFlightProps, kTypeRawData, false }, { kEobBaseTurnUndeadEffect, kTypeRawData, false }, + { kEobBaseBurningHandsDest, kTypeRawData, false }, // EYE OF THE BEHOLDER I { kEob1MainMenuStrings, kTypeStringList, true }, @@ -1516,6 +1519,8 @@ const char *getIdString(const int id) { return "kEobBaseDscDoorScaleMult6"; case kEobBaseDscDoorType5Offs: return "kEobBaseDscDoorType5Offs"; + case kEobBaseDscDoorXE: + return "kEobBaseDscDoorXE"; case kEobBaseDscDoorY1: return "kEobBaseDscDoorY1"; case kEobBaseDscDoorY3: @@ -1526,6 +1531,8 @@ const char *getIdString(const int id) { return "kEobBaseDscDoorY5"; case kEobBaseDscDoorY6: return "kEobBaseDscDoorY6"; + case kEobBaseDscDoorY7: + return "kEobBaseDscDoorY7"; case kEobBaseDscDoorCoordsExt: return "kEobBaseDscDoorCoordsExt"; case kEobBaseDscItemPosIndex: @@ -1635,6 +1642,8 @@ const char *getIdString(const int id) { return "kEobBaseMagicFlightProps"; case kEobBaseTurnUndeadEffect: return "kEobBaseTurnUndeadEffect"; + case kEobBaseBurningHandsDest: + return "kEobBaseBurningHandsDest"; case kEob1MainMenuStrings: return "kEob1MainMenuStrings"; case kEob1DoorShapeDefs: diff --git a/devtools/create_kyradat/create_kyradat.h b/devtools/create_kyradat/create_kyradat.h index ebaff503f4..a7b53b4128 100644 --- a/devtools/create_kyradat/create_kyradat.h +++ b/devtools/create_kyradat/create_kyradat.h @@ -332,11 +332,13 @@ enum kExtractID { kEobBaseDscDoorScaleMult5, kEobBaseDscDoorScaleMult6, kEobBaseDscDoorType5Offs, + kEobBaseDscDoorXE, kEobBaseDscDoorY1, kEobBaseDscDoorY3, kEobBaseDscDoorY4, kEobBaseDscDoorY5, kEobBaseDscDoorY6, + kEobBaseDscDoorY7, kEobBaseDscDoorCoordsExt, kEobBaseDscItemPosIndex, @@ -402,6 +404,7 @@ enum kExtractID { kEobBaseSpellProperties, kEobBaseMagicFlightProps, kEobBaseTurnUndeadEffect, + kEobBaseBurningHandsDest, kEob1MainMenuStrings, kEob1DoorShapeDefs, diff --git a/devtools/create_kyradat/games.cpp b/devtools/create_kyradat/games.cpp index 6e1503b45b..000c350f2b 100644 --- a/devtools/create_kyradat/games.cpp +++ b/devtools/create_kyradat/games.cpp @@ -1189,6 +1189,7 @@ const int eob1FloppyNeed[] = { kEobBaseSpellProperties, kEobBaseMagicFlightProps, kEobBaseTurnUndeadEffect, + kEobBaseBurningHandsDest, kLolEobCommonDscDoorShapeIndex, kEobBaseWllFlagPreset, @@ -1200,12 +1201,13 @@ const int eob1FloppyNeed[] = { kEobBaseDscDoorScaleMult4, kEobBaseDscDoorScaleMult5, kEobBaseDscDoorScaleMult6, + kEobBaseDscDoorXE, kEobBaseDscDoorY1, - kLolEobCommonDscDoorY2, kEobBaseDscDoorY3, kEobBaseDscDoorY4, kEobBaseDscDoorY5, kEobBaseDscDoorY6, + kEobBaseDscDoorY7, kEobBaseDscDoorCoordsExt, kEobBaseDscItemPosIndex, @@ -1408,6 +1410,7 @@ const int eob2FloppyNeed[] = { kEobBaseSpellProperties, kEobBaseMagicFlightProps, kEobBaseTurnUndeadEffect, + kEobBaseBurningHandsDest, kLolEobCommonDscDoorShapeIndex, kEobBaseWllFlagPreset, diff --git a/devtools/create_kyradat/tables.cpp b/devtools/create_kyradat/tables.cpp index e27c6edf44..a92c09798b 100644 --- a/devtools/create_kyradat/tables.cpp +++ b/devtools/create_kyradat/tables.cpp @@ -2001,6 +2001,11 @@ const ExtractEntrySearchData kEobBaseDscDoorType5OffsProvider[] = { EXTRACT_END_ENTRY }; +const ExtractEntrySearchData kEobBaseDscDoorXEProvider[] = { + { UNK_LANG, kPlatformPC, { 0x00000020, 0x0000010F, { { 0x7B, 0x7D, 0x03, 0xDE, 0x33, 0x95, 0xB8, 0xFD, 0xAD, 0x72, 0x44, 0x7D, 0x47, 0xFE, 0x04, 0x3D } } } }, + EXTRACT_END_ENTRY +}; + const ExtractEntrySearchData kEobBaseDscDoorY1Provider[] = { { UNK_LANG, kPlatformPC, { 0x00000004, 0x000000D7, { { 0x25, 0xAE, 0xF4, 0x99, 0xE8, 0x97, 0x47, 0xAE, 0x75, 0xF3, 0xA9, 0x70, 0x4C, 0x70, 0xF3, 0x11 } } } }, // EOB 1 { UNK_LANG, kPlatformPC, { 0x00000004, 0x000000D8, { { 0xB4, 0xAA, 0x0D, 0x91, 0x58, 0x22, 0x16, 0xCF, 0xC5, 0x9D, 0x8D, 0xA1, 0xB4, 0x40, 0x83, 0x0E } } } }, // EOB 2 @@ -2027,6 +2032,11 @@ const ExtractEntrySearchData kEobBaseDscDoorY6Provider[] = { EXTRACT_END_ENTRY }; +const ExtractEntrySearchData kEobBaseDscDoorY7Provider[] = { + { UNK_LANG, kPlatformPC, { 0x00000004, 0x000000DA, { { 0xA9, 0x24, 0x71, 0x8A, 0x18, 0x24, 0x6D, 0x0A, 0x65, 0x12, 0xBB, 0x1F, 0xE7, 0x95, 0xC5, 0xA4 } } } }, + EXTRACT_END_ENTRY +}; + const ExtractEntrySearchData kEobBaseDscDoorCoordsExtProvider[] = { { UNK_LANG, kPlatformPC, { 0x00000048, 0x00000C8E, { { 0x2E, 0x0E, 0xB2, 0xAC, 0xE7, 0x0F, 0xDF, 0x38, 0xDF, 0x92, 0xB7, 0xB5, 0xA2, 0xFD, 0x40, 0x2D } } } }, EXTRACT_END_ENTRY @@ -2340,7 +2350,14 @@ const ExtractEntrySearchData kEobBaseMagicFlightPropsProvider[] = { }; const ExtractEntrySearchData kEobBaseTurnUndeadEffectProvider[] = { - { UNK_LANG, kPlatformUnknown, { 0x0000008C, 0x00002E8B, { { 0x96, 0x15, 0x61, 0x12, 0x43, 0xCF, 0x3A, 0x84, 0x1A, 0x89, 0xB5, 0x32, 0x0D, 0xB3, 0x20, 0x67 } } } }, + { UNK_LANG, kPlatformPC, { 0x0000008C, 0x00002E8B, { { 0x96, 0x15, 0x61, 0x12, 0x43, 0xCF, 0x3A, 0x84, 0x1A, 0x89, 0xB5, 0x32, 0x0D, 0xB3, 0x20, 0x67 } } } }, + + EXTRACT_END_ENTRY +}; + +const ExtractEntrySearchData kEobBaseBurningHandsDestProvider[] = { + { UNK_LANG, kPlatformPC, { 0x00000008, 0x0000000C, { { 0x61, 0xD7, 0xAB, 0xE1, 0x56, 0x54, 0x51, 0x5B, 0xD9, 0x59, 0x2D, 0x3D, 0xAE, 0xA4, 0x49, 0x31 } } } }, // EOB1 + { UNK_LANG, kPlatformPC, { 0x00000020, 0x0000003E, { { 0xA5, 0x8C, 0xCA, 0x13, 0xED, 0x0F, 0xB7, 0xA2, 0xD7, 0x9C, 0xCD, 0x11, 0x65, 0x11, 0x4B, 0xD8 } } } }, // EOB2 EXTRACT_END_ENTRY }; @@ -3775,11 +3792,13 @@ const ExtractEntry extractProviders[] = { { kEobBaseDscDoorScaleMult5, kEobBaseDscDoorScaleMult5Provider }, { kEobBaseDscDoorScaleMult6, kEobBaseDscDoorScaleMult6Provider }, { kEobBaseDscDoorType5Offs, kEobBaseDscDoorType5OffsProvider }, + { kEobBaseDscDoorXE, kEobBaseDscDoorXEProvider }, { kEobBaseDscDoorY1, kEobBaseDscDoorY1Provider }, { kEobBaseDscDoorY3, kEobBaseDscDoorY3Provider }, { kEobBaseDscDoorY4, kEobBaseDscDoorY4Provider }, { kEobBaseDscDoorY5, kEobBaseDscDoorY5Provider }, { kEobBaseDscDoorY6, kEobBaseDscDoorY6Provider }, + { kEobBaseDscDoorY7, kEobBaseDscDoorY7Provider }, { kEobBaseDscDoorCoordsExt, kEobBaseDscDoorCoordsExtProvider }, { kEobBaseDscItemPosIndex, kEobBaseDscItemPosIndexProvider }, { kEobBaseDscItemShpX, kEobBaseDscItemShpXProvider }, @@ -3843,6 +3862,7 @@ const ExtractEntry extractProviders[] = { { kEobBaseSpellProperties, kEobBaseSpellPropertiesProvider }, { kEobBaseMagicFlightProps, kEobBaseMagicFlightPropsProvider }, { kEobBaseTurnUndeadEffect, kEobBaseTurnUndeadEffectProvider }, + { kEobBaseBurningHandsDest, kEobBaseBurningHandsDestProvider }, { kEob1MainMenuStrings, kEob1MainMenuStringsProvider }, { kEob1DoorShapeDefs, kEob1DoorShapeDefsProvider }, |