2009-09-17 12:02:17 +00:00
/* ScummVM Tools
* Copyright ( C ) 2009 The ScummVM project
*
* 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 2
* 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 , write to the Free Software
* Foundation , Inc . , 51 Franklin Street , Fifth Floor , Boston , MA 02110 - 1301 , USA .
*
* $ URL $
* $ Id $
*
*/
# include "create_kyradat.h"
// Game tables
namespace {
const Game kyra1Games [ ] = {
// Demos
2009-11-21 03:46:52 +00:00
{ kKyra1 , { EN_ANY , - 1 , - 1 } , kPlatformPC , kDemoVersion , { " 7b7504c8560ffc914d34c44c71b3094c " , 0 } } ,
{ kKyra1 , { EN_ANY , - 1 , - 1 } , kPlatformPC , kTalkieDemoVersion , { " 226fdba99cb11ef1047131d9a50e6292 " , 0 } } ,
2009-09-17 12:02:17 +00:00
// Amiga
2009-11-21 03:46:52 +00:00
{ kKyra1 , { EN_ANY , - 1 , - 1 } , kPlatformAmiga , kNoSpecial , { " b620564b6b7e0787b053ca9e35bd9f52 " , 0 } } ,
{ kKyra1 , { DE_DEU , - 1 , - 1 } , kPlatformAmiga , kNoSpecial , { " ceddb4bd4df51698e3851e75106d117a " , 0 } } ,
2009-09-17 12:02:17 +00:00
// Floppy
2009-11-21 03:46:52 +00:00
{ kKyra1 , { EN_ANY , - 1 , - 1 } , kPlatformPC , kNoSpecial , { " 76a4fc84e173cadb6369785787e1546e " , 0 } } ,
{ kKyra1 , { DE_DEU , - 1 , - 1 } , kPlatformPC , kNoSpecial , { " 9442d6f7db6a41f3dd4aa4de5d36e107 " , 0 } } ,
{ kKyra1 , { FR_FRA , - 1 , - 1 } , kPlatformPC , kNoSpecial , { " aa9d6d78d8b199deaf48efeca6d19af2 " , 0 } } ,
{ kKyra1 , { IT_ITA , - 1 , - 1 } , kPlatformPC , kNoSpecial , { " 5d7550306b369a3492f9f3402702477c " , 0 } } ,
{ kKyra1 , { ES_ESP , - 1 , - 1 } , kPlatformPC , kNoSpecial , { " 9ff130d2558bcd674d4074849d93c362 " , 0 } } ,
2009-09-17 12:02:17 +00:00
// Talkie
2009-11-21 03:46:52 +00:00
{ kKyra1 , { EN_ANY , - 1 , - 1 } , kPlatformPC , kTalkieVersion , { " 1ebc18f3e7fbb72474a55cb0fa089ed4 " , 0 } } ,
{ kKyra1 , { DE_DEU , - 1 , - 1 } , kPlatformPC , kTalkieVersion , { " c65d381184f98ac26d9efd2d45baef51 " , 0 } } ,
{ kKyra1 , { FR_FRA , - 1 , - 1 } , kPlatformPC , kTalkieVersion , { " 307c5d4a554d9068ac3d326e350ae4a6 " , 0 } } ,
{ kKyra1 , { IT_ITA , - 1 , - 1 } , kPlatformPC , kTalkieVersion , { " d0f1752098236083d81b9497bd2b6989 " , 0 } } , // Italian fan translation
2009-09-17 12:02:17 +00:00
// FM-TOWNS
2009-11-21 03:46:52 +00:00
{ kKyra1 , { EN_ANY , JA_JPN , - 1 } , kPlatformFMTowns , kNoSpecial , { " 5a3ad60ccd0f2e29463e0368cd14a60d " , 0 } } ,
2009-09-17 12:02:17 +00:00
2009-11-14 22:51:35 +00:00
// PC-98
2009-11-21 03:46:52 +00:00
{ kKyra1 , { JA_JPN , - 1 , - 1 } , kPlatformPC98 , kNoSpecial , { " b9c06ac5177f5bf1f1acc0eea3937f6d " , 0 } } ,
2009-11-14 22:51:35 +00:00
2009-09-17 12:02:17 +00:00
GAME_DUMMY_ENTRY
} ;
const Game kyra2Games [ ] = {
// demos
2009-11-21 03:46:52 +00:00
{ kKyra2 , { EN_ANY , - 1 , - 1 } , kPlatformPC , kDemoVersion , { " a620a37579dd44ab0403482285e3897f " , 0 } } ,
2009-11-19 17:44:19 +00:00
2009-11-21 03:46:52 +00:00
{ kKyra2 , { EN_ANY , FR_FRA , DE_DEU } , kPlatformPC , kTalkieDemoVersion , { " 85bbc1cc6c4cef6ad31fc6ee79518efb " , " fa54d8abfe05f9186c05f7de7eaf1480 " } } ,
2009-09-17 12:02:17 +00:00
// floppy games
2009-11-21 03:46:52 +00:00
{ kKyra2 , { EN_ANY , - 1 , - 1 } , kPlatformPC , kNoSpecial , { " 9b0f5e57b5a2ed88b5b989cbb402b6c7 " , " 7c3eadbe5122722cf2e5e1611e19dfb9 " } } ,
{ kKyra2 , { FR_FRA , - 1 , - 1 } , kPlatformPC , kNoSpecial , { " df31cc9e37e1cf68df2fdc75ddf2d87b " , " fc2c6782778e6c6d5a553d1cb73c98ad " } } ,
{ kKyra2 , { DE_DEU , - 1 , - 1 } , kPlatformPC , kNoSpecial , { " 0ca4f9a1438264a4c63c3218e064ed3b " , " 0d9b0eb7b0ad889ec942d74d80dde1bf " } } ,
{ kKyra2 , { IT_ITA , - 1 , - 1 } , kPlatformPC , kNoSpecial , { " 178d3ab913f61bfba21d2fb196405e8c " , " 3a61ed6b7c00ddae383a0361799e2ba6 " } } ,
2009-09-17 12:02:17 +00:00
// talkie games
2009-11-21 03:46:52 +00:00
{ kKyra2 , { EN_ANY , FR_FRA , DE_DEU } , kPlatformPC , kTalkieVersion , { " 85bbc1cc6c4cef6ad31fc6ee79518efb " , " e20d0d2e500f01e399ec588247a7e213 " } } ,
{ kKyra2 , { IT_ITA , FR_FRA , DE_DEU } , kPlatformPC , kTalkieVersion , { " 130795aa8f2333250c895dae9028b9bb " , " e20d0d2e500f01e399ec588247a7e213 " } } , // Italian Fan Translation
2009-09-17 12:02:17 +00:00
// FM-TOWNS games
2009-11-21 03:46:52 +00:00
{ kKyra2 , { EN_ANY , JA_JPN , - 1 } , kPlatformFMTowns , kNoSpecial , { " 74f50d79c919cc8e7196c24942ce43d7 " , " a9a7fd4f05d00090e9e8bda073e6d431 " } } ,
2009-09-17 12:02:17 +00:00
GAME_DUMMY_ENTRY
} ;
const Game kyra3Games [ ] = {
2009-09-17 13:46:01 +00:00
// DOS CD (multi language version, with no language specific strings)
2009-11-21 03:46:52 +00:00
{ kKyra3 , { EN_ANY , FR_FRA , DE_DEU } , kPlatformPC , kTalkieVersion , { " bf68701eb591d0b72219f314c0d32688 " , 0 } } ,
{ kKyra3 , { EN_ANY , IT_ITA , DE_DEU } , kPlatformPC , kTalkieVersion , { " bf68701eb591d0b72219f314c0d32688 " , 0 } } , // Fan translation // TODO: Verify md5sum
{ kKyra3 , { ES_ESP , FR_FRA , DE_DEU } , kPlatformPC , kTalkieVersion , { " bf68701eb591d0b72219f314c0d32688 " , 0 } } , // Fan translation // TODO: Verify md5sum
2009-09-17 13:46:01 +00:00
2009-09-17 12:02:17 +00:00
GAME_DUMMY_ENTRY
} ;
const Game lolGames [ ] = {
// DOS demo
2009-11-21 03:46:52 +00:00
{ kLol , { EN_ANY , - 1 , - 1 } , kPlatformPC , kDemoVersion , { " 30bb5af87d38adb47d3e6ce06b1cb042 " , 0 } } ,
2009-09-17 12:02:17 +00:00
2009-09-17 13:46:01 +00:00
// DOS floppy (no language specifc strings)
2009-11-21 03:46:52 +00:00
{ kLol , { DE_DEU , - 1 , - 1 } , kPlatformPC , kNoSpecial , { " 6b843869772c1b779e1386be868c15dd " , 0 } } ,
2009-09-17 12:02:17 +00:00
2009-09-17 19:51:16 +00:00
// PC98 (no language specifc strings)
2009-11-21 03:46:52 +00:00
{ kLol , { JA_JPN , - 1 , - 1 } , kPlatformPC98 , kNoSpecial , { " 6d5bd4a2f5ce433365734ca6b7a8d984 " , " 1b0a457c48ae6908da301b656fe0aab4 " } } ,
2009-09-17 19:51:16 +00:00
2009-09-17 13:46:01 +00:00
// DOS CD (multi language version, with no language specific strings)
2009-11-21 03:46:52 +00:00
{ kLol , { EN_ANY , FR_FRA , DE_DEU } , kPlatformPC , kTalkieVersion , { " 9d1778314de80598c0b0d032e2a1a1cf " , " 263998ec600afca1cc7b935c473df670 " } } ,
2009-09-17 12:02:17 +00:00
GAME_DUMMY_ENTRY
} ;
} // end of anonymous namespace
2009-11-20 19:32:15 +00:00
const Game * const gameDescs [ ] = {
2009-09-17 12:02:17 +00:00
kyra1Games ,
kyra2Games ,
kyra3Games ,
lolGames ,
0
} ;
// Need tables
namespace {
2007-02-03 14:52:02 +00:00
const int kyra1FloppyNeed [ ] = {
2009-11-21 17:29:36 +00:00
k1KallakWritingSeq ,
k1MalcolmTreeSeq ,
k1WestwoodLogoSeq ,
k1KyrandiaLogoSeq ,
k1KallakMalcolmSeq ,
k1ForestSeq ,
k1IntroCPSStrings ,
k1IntroCOLStrings ,
k1IntroWSAStrings ,
k1IntroStrings ,
k1RoomList ,
k1RoomFilenames ,
k1CharacterImageFilenames ,
k1DefaultShapes ,
k1ItemNames ,
k1TakenStrings ,
k1PlacedStrings ,
k1DroppedStrings ,
k1NoDropStrings ,
k1AmuleteAnimSeq ,
k1SpecialPalette1 ,
k1SpecialPalette2 ,
k1SpecialPalette3 ,
k1SpecialPalette4 ,
k1SpecialPalette5 ,
k1SpecialPalette6 ,
k1SpecialPalette7 ,
k1SpecialPalette8 ,
k1SpecialPalette9 ,
k1SpecialPalette10 ,
k1SpecialPalette11 ,
k1SpecialPalette12 ,
k1SpecialPalette13 ,
k1SpecialPalette14 ,
k1SpecialPalette15 ,
k1SpecialPalette16 ,
k1SpecialPalette17 ,
k1SpecialPalette18 ,
k1SpecialPalette19 ,
k1SpecialPalette20 ,
k1SpecialPalette21 ,
k1SpecialPalette22 ,
k1SpecialPalette23 ,
k1SpecialPalette24 ,
k1SpecialPalette25 ,
k1SpecialPalette26 ,
k1SpecialPalette27 ,
k1SpecialPalette28 ,
k1SpecialPalette29 ,
k1SpecialPalette30 ,
k1SpecialPalette31 ,
k1SpecialPalette32 ,
k1SpecialPalette33 ,
k1PutDownString ,
k1WaitAmuletString ,
k1BlackJewelString ,
k1HealingTipString ,
k1PoisonGoneString ,
k1Healing1Shapes ,
k1Healing2Shapes ,
k1ThePoisonStrings ,
k1FluteStrings ,
k1PoisonDeathShapes ,
k1FluteShapes ,
k1Winter1Shapes ,
k1Winter2Shapes ,
k1Winter3Shapes ,
k1DrinkShapes ,
k1WispShapes ,
k1MagicAnimShapes ,
k1BranStoneShapes ,
k1WispJewelStrings ,
k1MagicJewelStrings ,
k1FlaskFullString ,
k1FullFlaskString ,
k1OutroReunionSeq ,
k1OutroHomeString ,
k1VeryCleverString ,
k1GUIStrings ,
k1NewGameString ,
k1ConfigStrings ,
k1AudioTracks ,
k1AudioTracksIntro ,
2007-02-03 14:52:02 +00:00
- 1
} ;
const int kyra1CDNeed [ ] = {
2009-11-21 17:29:36 +00:00
k1KallakWritingSeq ,
k1MalcolmTreeSeq ,
k1WestwoodLogoSeq ,
k1KyrandiaLogoSeq ,
k1KallakMalcolmSeq ,
k1ForestSeq ,
k1IntroCPSStrings ,
k1IntroCOLStrings ,
k1IntroWSAStrings ,
k1IntroStrings ,
k1RoomList ,
k1RoomFilenames ,
k1CharacterImageFilenames ,
k1DefaultShapes ,
k1ItemNames ,
k1TakenStrings ,
k1PlacedStrings ,
k1DroppedStrings ,
k1NoDropStrings ,
k1AmuleteAnimSeq ,
k1SpecialPalette1 ,
k1SpecialPalette2 ,
k1SpecialPalette3 ,
k1SpecialPalette4 ,
k1SpecialPalette5 ,
k1SpecialPalette6 ,
k1SpecialPalette7 ,
k1SpecialPalette8 ,
k1SpecialPalette9 ,
k1SpecialPalette10 ,
k1SpecialPalette11 ,
k1SpecialPalette12 ,
k1SpecialPalette13 ,
k1SpecialPalette14 ,
k1SpecialPalette15 ,
k1SpecialPalette16 ,
k1SpecialPalette17 ,
k1SpecialPalette18 ,
k1SpecialPalette19 ,
k1SpecialPalette20 ,
k1SpecialPalette21 ,
k1SpecialPalette22 ,
k1SpecialPalette23 ,
k1SpecialPalette24 ,
k1SpecialPalette25 ,
k1SpecialPalette26 ,
k1SpecialPalette27 ,
k1SpecialPalette28 ,
k1SpecialPalette29 ,
k1SpecialPalette30 ,
k1SpecialPalette31 ,
k1SpecialPalette32 ,
k1SpecialPalette33 ,
k1PutDownString ,
k1WaitAmuletString ,
k1BlackJewelString ,
k1HealingTipString ,
k1PoisonGoneString ,
k1Healing1Shapes ,
k1Healing2Shapes ,
k1ThePoisonStrings ,
k1FluteStrings ,
k1PoisonDeathShapes ,
k1FluteShapes ,
k1Winter1Shapes ,
k1Winter2Shapes ,
k1Winter3Shapes ,
k1DrinkShapes ,
k1WispShapes ,
k1MagicAnimShapes ,
k1BranStoneShapes ,
k1WispJewelStrings ,
k1MagicJewelStrings ,
k1FlaskFullString ,
k1FullFlaskString ,
k1OutroReunionSeq ,
k1OutroHomeString ,
k1VeryCleverString ,
k1GUIStrings ,
k1NewGameString ,
k1ConfigStrings ,
k1AudioTracks ,
k1AudioTracksIntro ,
2007-02-03 14:52:02 +00:00
- 1
} ;
const int kyra1DemoNeed [ ] = {
2009-11-21 17:29:36 +00:00
k1WestwoodLogoSeq ,
k1KyrandiaLogoSeq ,
k1IntroCPSStrings ,
k1IntroCOLStrings ,
k1IntroWSAStrings ,
k1IntroStrings ,
k1Demo1Seq ,
k1Demo2Seq ,
k1Demo3Seq ,
k1Demo4Seq ,
k1AudioTracksIntro ,
2007-02-03 14:52:02 +00:00
- 1
} ;
2009-08-25 22:37:34 +00:00
const int kyra1DemoCDNeed [ ] = {
2009-11-21 17:29:36 +00:00
k1KallakWritingSeq ,
k1MalcolmTreeSeq ,
k1WestwoodLogoSeq ,
k1KyrandiaLogoSeq ,
k1KallakMalcolmSeq ,
k1ForestSeq ,
k1IntroCPSStrings ,
k1IntroCOLStrings ,
k1IntroWSAStrings ,
k1IntroStrings ,
k1AudioTracksIntro ,
2009-08-25 22:37:34 +00:00
- 1
} ;
2009-09-16 20:52:59 +00:00
const int kyra1TownsNeed [ ] = {
2009-11-21 17:29:36 +00:00
k1KallakWritingSeq ,
k1MalcolmTreeSeq ,
k1WestwoodLogoSeq ,
k1KyrandiaLogoSeq ,
k1KallakMalcolmSeq ,
k1ForestSeq ,
k1IntroCPSStrings ,
k1IntroCOLStrings ,
k1IntroWSAStrings ,
k1IntroStrings ,
k1RoomList ,
k1RoomFilenames ,
k1CharacterImageFilenames ,
k1DefaultShapes ,
k1ItemNames ,
k1TakenStrings ,
k1PlacedStrings ,
k1DroppedStrings ,
k1NoDropStrings ,
k1AmuleteAnimSeq ,
k1SpecialPalette1 ,
k1SpecialPalette2 ,
k1SpecialPalette3 ,
k1SpecialPalette4 ,
k1SpecialPalette5 ,
k1SpecialPalette6 ,
k1SpecialPalette7 ,
k1SpecialPalette8 ,
k1SpecialPalette9 ,
k1SpecialPalette10 ,
k1SpecialPalette11 ,
k1SpecialPalette12 ,
k1SpecialPalette13 ,
k1SpecialPalette14 ,
k1SpecialPalette15 ,
k1SpecialPalette16 ,
k1SpecialPalette17 ,
k1SpecialPalette18 ,
k1SpecialPalette19 ,
k1SpecialPalette20 ,
k1SpecialPalette21 ,
k1SpecialPalette22 ,
k1SpecialPalette23 ,
k1SpecialPalette24 ,
k1SpecialPalette25 ,
k1SpecialPalette26 ,
k1SpecialPalette27 ,
k1SpecialPalette28 ,
k1SpecialPalette29 ,
k1SpecialPalette30 ,
k1SpecialPalette31 ,
k1SpecialPalette32 ,
k1SpecialPalette33 ,
k1PutDownString ,
k1WaitAmuletString ,
k1BlackJewelString ,
k1HealingTipString ,
k1PoisonGoneString ,
k1Healing1Shapes ,
k1Healing2Shapes ,
k1ThePoisonStrings ,
k1FluteStrings ,
k1PoisonDeathShapes ,
k1FluteShapes ,
k1Winter1Shapes ,
k1Winter2Shapes ,
k1Winter3Shapes ,
k1DrinkShapes ,
k1WispShapes ,
k1MagicAnimShapes ,
k1BranStoneShapes ,
k1WispJewelStrings ,
k1MagicJewelStrings ,
k1FlaskFullString ,
k1FullFlaskString ,
k1OutroReunionSeq ,
k1OutroHomeString ,
k1VeryCleverString ,
k1GUIStrings ,
k1NewGameString ,
k1ConfigStrings ,
k1TOWNSSfxWDTable ,
k1TOWNSSfxBTTable ,
k1TOWNSCDATable ,
k1AudioTracks ,
k1CreditsStrings ,
2007-02-07 19:29:15 +00:00
- 1
} ;
2009-11-14 22:51:35 +00:00
const int kyra1PC98Need [ ] = {
2009-11-21 17:29:36 +00:00
k1KallakWritingSeq ,
k1MalcolmTreeSeq ,
k1WestwoodLogoSeq ,
k1KyrandiaLogoSeq ,
k1KallakMalcolmSeq ,
k1ForestSeq ,
k1IntroCPSStrings ,
k1IntroCOLStrings ,
k1IntroWSAStrings ,
k1IntroStrings ,
k1RoomList ,
k1RoomFilenames ,
k1CharacterImageFilenames ,
k1DefaultShapes ,
k1ItemNames ,
k1TakenStrings ,
k1PlacedStrings ,
k1DroppedStrings ,
k1NoDropStrings ,
k1AmuleteAnimSeq ,
k1SpecialPalette1 ,
k1SpecialPalette2 ,
k1SpecialPalette3 ,
k1SpecialPalette4 ,
k1SpecialPalette5 ,
k1SpecialPalette6 ,
k1SpecialPalette7 ,
k1SpecialPalette8 ,
k1SpecialPalette9 ,
k1SpecialPalette10 ,
k1SpecialPalette11 ,
k1SpecialPalette12 ,
k1SpecialPalette13 ,
k1SpecialPalette14 ,
k1SpecialPalette15 ,
k1SpecialPalette16 ,
k1SpecialPalette17 ,
k1SpecialPalette18 ,
k1SpecialPalette19 ,
k1SpecialPalette20 ,
k1SpecialPalette21 ,
k1SpecialPalette22 ,
k1SpecialPalette23 ,
k1SpecialPalette24 ,
k1SpecialPalette25 ,
k1SpecialPalette26 ,
k1SpecialPalette27 ,
k1SpecialPalette28 ,
k1SpecialPalette29 ,
k1SpecialPalette30 ,
k1SpecialPalette31 ,
k1SpecialPalette32 ,
k1SpecialPalette33 ,
k1PutDownString ,
k1WaitAmuletString ,
k1BlackJewelString ,
k1HealingTipString ,
k1PoisonGoneString ,
k1Healing1Shapes ,
k1Healing2Shapes ,
k1ThePoisonStrings ,
k1FluteStrings ,
k1PoisonDeathShapes ,
k1FluteShapes ,
k1Winter1Shapes ,
k1Winter2Shapes ,
k1Winter3Shapes ,
k1DrinkShapes ,
k1WispShapes ,
k1MagicAnimShapes ,
k1BranStoneShapes ,
k1WispJewelStrings ,
k1MagicJewelStrings ,
k1FlaskFullString ,
k1FullFlaskString ,
k1OutroReunionSeq ,
k1OutroHomeString ,
k1VeryCleverString ,
k1GUIStrings ,
k1NewGameString ,
k1ConfigStrings ,
k1PC98StoryStrings ,
k1PC98IntroSfx ,
k1CreditsStrings ,
2009-11-14 22:51:35 +00:00
- 1
} ;
2007-03-12 20:42:28 +00:00
const int kyra1AmigaNeed [ ] = {
2009-11-21 17:29:36 +00:00
k1KallakWritingSeq ,
k1MalcolmTreeSeq ,
k1WestwoodLogoSeq ,
k1KyrandiaLogoSeq ,
k1KallakMalcolmSeq ,
k1ForestSeq ,
k1IntroCPSStrings ,
k1IntroWSAStrings ,
k1IntroCOLStrings ,
k1IntroStrings ,
k1RoomList ,
k1RoomFilenames ,
k1CharacterImageFilenames ,
k1DefaultShapes ,
k1ItemNames ,
k1TakenStrings ,
k1PlacedStrings ,
k1DroppedStrings ,
k1NoDropStrings ,
k1AmuleteAnimSeq ,
k1PutDownString ,
k1WaitAmuletString ,
k1BlackJewelString ,
k1HealingTipString ,
k1PoisonGoneString ,
k1Healing1Shapes ,
k1Healing2Shapes ,
k1ThePoisonStrings ,
k1FluteStrings ,
k1PoisonDeathShapes ,
k1FluteShapes ,
k1Winter1Shapes ,
k1Winter2Shapes ,
k1Winter3Shapes ,
k1DrinkShapes ,
k1WispShapes ,
k1MagicAnimShapes ,
k1BranStoneShapes ,
k1WispJewelStrings ,
k1MagicJewelStrings ,
k1FlaskFullString ,
k1FullFlaskString ,
k1OutroReunionSeq ,
k1OutroHomeString ,
k1VeryCleverString ,
k1GUIStrings ,
k1NewGameString ,
k1ConfigStrings ,
k1CreditsStrings ,
k1AmigaIntroSFXTable ,
k1AmigaGameSFXTable ,
2007-03-12 20:42:28 +00:00
- 1
} ;
2009-11-20 19:32:15 +00:00
const int kyra2CDNeed [ ] = {
2008-01-10 23:24:43 +00:00
k2SeqplayPakFiles ,
k2SeqplayCredits ,
2008-01-27 02:06:59 +00:00
k2SeqplayCreditsSpecial ,
2008-01-10 23:24:43 +00:00
k2SeqplayStrings ,
k2SeqplaySfxFiles ,
2008-08-03 12:50:56 +00:00
k2SeqplayTlkFiles ,
2008-01-10 23:24:43 +00:00
k2SeqplaySeqData ,
k2SeqplayIntroTracks ,
k2SeqplayFinaleTracks ,
2008-01-27 02:06:59 +00:00
k2IngameSfxFiles ,
k2IngameSfxIndex ,
2008-01-10 23:24:43 +00:00
k2IngameTracks ,
2008-02-16 15:45:15 +00:00
k2IngameTalkObjIndex ,
2008-04-06 14:54:14 +00:00
k2IngameItemAnimData ,
2008-01-10 23:24:43 +00:00
- 1
} ;
2009-09-16 20:52:59 +00:00
const int kyra2CDDemoNeed [ ] = {
2009-11-20 19:32:15 +00:00
k2SeqplayPakFiles ,
k2SeqplayCredits ,
k2SeqplayCreditsSpecial ,
k2SeqplayStrings ,
k2SeqplaySfxFiles ,
k2SeqplayTlkFiles ,
k2SeqplaySeqData ,
k2SeqplayIntroTracks ,
k2SeqplayFinaleTracks ,
2009-09-16 20:52:59 +00:00
k2IngameSfxFiles ,
k2IngameSfxIndex ,
k2IngameTracks ,
k2IngameTalkObjIndex ,
k2IngameItemAnimData ,
k2IngameTlkDemoStrings ,
2008-01-10 23:24:43 +00:00
- 1
} ;
2009-11-20 19:32:15 +00:00
const int kyra2FloppyNeed [ ] = {
2008-01-10 23:24:43 +00:00
k2SeqplayPakFiles ,
k2SeqplayStrings ,
k2SeqplaySfxFiles ,
k2SeqplayIntroTracks ,
k2SeqplayFinaleTracks ,
k2SeqplaySeqData ,
k2IngamePakFiles ,
2008-01-27 02:06:59 +00:00
k2IngameSfxFiles ,
k2IngameSfxIndex ,
2008-01-10 23:24:43 +00:00
k2IngameTracks ,
2008-02-16 15:45:15 +00:00
k2IngameTalkObjIndex ,
2008-04-06 14:54:14 +00:00
k2IngameItemAnimData ,
2008-01-10 23:24:43 +00:00
- 1
} ;
2009-11-20 19:32:15 +00:00
const int kyra2TownsNeed [ ] = {
2008-01-10 23:24:43 +00:00
k2SeqplayPakFiles ,
k2SeqplayStrings ,
k2SeqplaySfxFiles ,
k2SeqplaySeqData ,
k2SeqplayIntroCDA ,
k2SeqplayFinaleCDA ,
k2IngamePakFiles ,
2008-05-12 21:52:44 +00:00
k2IngameSfxFilesTns ,
2008-01-27 02:06:59 +00:00
k2IngameSfxIndex ,
2008-01-10 23:24:43 +00:00
k2IngameCDA ,
2008-02-16 15:45:15 +00:00
k2IngameTalkObjIndex ,
k2IngameTimJpStrings ,
2008-04-06 14:54:14 +00:00
k2IngameItemAnimData ,
2008-01-10 23:24:43 +00:00
- 1
} ;
const int kyra2DemoNeed [ ] = {
k2SeqplayPakFiles ,
k2SeqplaySeqData ,
k2SeqplaySfxFiles ,
k2SeqplayIntroTracks ,
2008-04-06 14:54:14 +00:00
k2SeqplayShapeAnimData ,
2008-01-10 23:24:43 +00:00
- 1
} ;
2008-05-12 13:35:58 +00:00
const int kyra3Need [ ] = {
k3MainMenuStrings ,
k3MusicFiles ,
k3ScoreTable ,
k3SfxFiles ,
k3SfxMap ,
k3ItemAnimData ,
k3ItemMagicTable ,
k3ItemStringMap ,
- 1
} ;
2009-09-02 06:24:01 +00:00
const int lolFloppyNeed [ ] = {
kLolIngamePakFiles ,
kLolCharacterDefs ,
kLolIngameSfxFiles ,
kLolIngameSfxIndex ,
kLolMusicTrackMap ,
kLolGMSfxIndex ,
kLolMT32SfxIndex ,
2009-11-19 22:17:27 +00:00
kLolPcSpkSfxIndex ,
2009-09-02 06:24:01 +00:00
kLolSpellProperties ,
kLolGameShapeMap ,
kLolSceneItemOffs ,
kLolCharInvIndex ,
kLolCharInvDefs ,
kLolCharDefsMan ,
kLolCharDefsWoman ,
kLolCharDefsKieran ,
kLolCharDefsAkshel ,
kLolExpRequirements ,
kLolMonsterModifiers ,
kLolMonsterLevelOffsets ,
kLolMonsterDirFlags ,
kLolMonsterScaleY ,
kLolMonsterScaleX ,
kLolMonsterScaleWH ,
kLolFlyingItemShp ,
kLolInventoryDesc ,
kLolLevelShpList ,
kLolLevelDatList ,
kLolCompassDefs ,
kLolStashSetup ,
kLolDscUnk1 ,
kLolDscShapeIndex1 ,
kLolDscShapeIndex2 ,
kLolDscScaleWidthData ,
kLolDscScaleHeightData ,
kLolDscX ,
kLolDscY ,
kLolDscTileIndex ,
kLolDscUnk2 ,
kLolDscDoorShapeIndex ,
kLolDscDimData1 ,
kLolDscDimData2 ,
kLolDscBlockMap ,
kLolDscDimMap ,
kLolDscShapeOvlIndex ,
kLolDscBlockIndex ,
kLolDscDoor1 ,
kLolDscDoorScale ,
kLolDscDoor4 ,
kLolDscDoorX ,
kLolDscDoorY ,
kLolScrollXTop ,
kLolScrollYTop ,
kLolScrollXBottom ,
kLolScrollYBottom ,
kLolButtonDefs ,
kLolButtonList1 ,
kLolButtonList1 ,
kLolButtonList2 ,
kLolButtonList3 ,
kLolButtonList4 ,
kLolButtonList5 ,
kLolButtonList6 ,
kLolButtonList7 ,
kLolButtonList8 ,
kLolLegendData ,
kLolMapCursorOvl ,
kLolMapStringId ,
kLolSpellbookAnim ,
kLolSpellbookCoords ,
kLolHealShapeFrames ,
kLolLightningDefs ,
kLolFireballCoords ,
- 1
} ;
2009-11-20 19:32:15 +00:00
const int lolPC98Need [ ] = {
2009-09-17 19:51:16 +00:00
kLolIngamePakFiles ,
kLolCharacterDefs ,
kLolIngameSfxFiles ,
kLolIngameSfxIndex ,
kLolSpellProperties ,
kLolGameShapeMap ,
kLolSceneItemOffs ,
kLolCharInvIndex ,
kLolCharInvDefs ,
kLolCharDefsMan ,
kLolCharDefsWoman ,
kLolCharDefsKieran ,
kLolCharDefsAkshel ,
kLolExpRequirements ,
kLolMonsterModifiers ,
kLolMonsterLevelOffsets ,
kLolMonsterDirFlags ,
kLolMonsterScaleY ,
kLolMonsterScaleX ,
kLolMonsterScaleWH ,
kLolFlyingItemShp ,
kLolInventoryDesc ,
kLolLevelShpList ,
kLolLevelDatList ,
kLolCompassDefs ,
kLolStashSetup ,
kLolDscUnk1 ,
kLolDscShapeIndex1 ,
kLolDscShapeIndex2 ,
kLolDscScaleWidthData ,
kLolDscScaleHeightData ,
kLolDscX ,
kLolDscY ,
kLolDscTileIndex ,
kLolDscUnk2 ,
kLolDscDoorShapeIndex ,
kLolDscDimData1 ,
kLolDscDimData2 ,
kLolDscBlockMap ,
kLolDscDimMap ,
kLolDscShapeOvlIndex ,
kLolDscBlockIndex ,
kLolDscDoor1 ,
kLolDscDoorScale ,
kLolDscDoor4 ,
kLolDscDoorX ,
kLolDscDoorY ,
kLolScrollXTop ,
kLolScrollYTop ,
kLolScrollXBottom ,
kLolScrollYBottom ,
kLolButtonDefs ,
kLolButtonList1 ,
kLolButtonList1 ,
kLolButtonList2 ,
kLolButtonList3 ,
kLolButtonList4 ,
kLolButtonList5 ,
kLolButtonList6 ,
kLolButtonList7 ,
kLolButtonList8 ,
kLolLegendData ,
kLolMapStringId ,
kLolSpellbookAnim ,
kLolSpellbookCoords ,
kLolHealShapeFrames ,
kLolLightningDefs ,
kLolFireballCoords ,
2009-10-14 14:17:15 +00:00
kLolCredits ,
- 1
} ;
2009-11-20 19:32:15 +00:00
const int lolCDNeed [ ] = {
2009-08-13 17:00:40 +00:00
kLolHistory ,
kLolCharacterDefs ,
kLolIngameSfxFiles ,
kLolIngameSfxIndex ,
kLolMusicTrackMap ,
kLolGMSfxIndex ,
kLolMT32SfxIndex ,
2009-11-19 22:17:27 +00:00
kLolPcSpkSfxIndex ,
2009-08-13 17:00:40 +00:00
kLolSpellProperties ,
kLolGameShapeMap ,
kLolSceneItemOffs ,
kLolCharInvIndex ,
kLolCharInvDefs ,
kLolCharDefsMan ,
kLolCharDefsWoman ,
kLolCharDefsKieran ,
kLolCharDefsAkshel ,
kLolExpRequirements ,
kLolMonsterModifiers ,
kLolMonsterLevelOffsets ,
kLolMonsterDirFlags ,
kLolMonsterScaleY ,
kLolMonsterScaleX ,
kLolMonsterScaleWH ,
kLolFlyingItemShp ,
kLolInventoryDesc ,
kLolLevelShpList ,
kLolLevelDatList ,
kLolCompassDefs ,
kLolItemPrices ,
kLolStashSetup ,
kLolDscUnk1 ,
kLolDscShapeIndex1 ,
kLolDscShapeIndex2 ,
kLolDscScaleWidthData ,
kLolDscScaleHeightData ,
kLolDscX ,
kLolDscY ,
kLolDscTileIndex ,
kLolDscUnk2 ,
kLolDscDoorShapeIndex ,
kLolDscDimData1 ,
kLolDscDimData2 ,
kLolDscBlockMap ,
kLolDscDimMap ,
kLolDscShapeOvlIndex ,
kLolDscBlockIndex ,
kLolDscDoor1 ,
kLolDscDoorScale ,
kLolDscDoor4 ,
kLolDscDoorX ,
kLolDscDoorY ,
kLolScrollXTop ,
kLolScrollYTop ,
kLolScrollXBottom ,
kLolScrollYBottom ,
kLolButtonDefs ,
kLolButtonList1 ,
kLolButtonList1 ,
kLolButtonList2 ,
kLolButtonList3 ,
kLolButtonList4 ,
kLolButtonList5 ,
kLolButtonList6 ,
kLolButtonList7 ,
kLolButtonList8 ,
kLolLegendData ,
kLolMapCursorOvl ,
kLolMapStringId ,
2009-04-03 21:32:50 +00:00
2009-08-13 17:00:40 +00:00
kLolSpellbookAnim ,
kLolSpellbookCoords ,
kLolHealShapeFrames ,
kLolLightningDefs ,
kLolFireballCoords ,
2009-01-18 17:04:24 +00:00
- 1
} ;
2008-08-02 23:11:31 +00:00
const int lolDemoNeed [ ] = {
k2SeqplayPakFiles ,
k2SeqplayStrings ,
k2SeqplaySeqData ,
k2SeqplaySfxFiles ,
2009-08-13 17:00:40 +00:00
kLolSeqplayIntroTracks ,
2008-08-02 23:11:31 +00:00
- 1
} ;
2009-09-17 12:02:17 +00:00
struct GameNeed {
int game ;
2009-09-17 12:42:25 +00:00
int platform ;
2009-09-17 12:02:17 +00:00
int special ;
const int * entries ;
} ;
2007-02-03 14:52:02 +00:00
const GameNeed gameNeedTable [ ] = {
2009-11-20 21:24:40 +00:00
{ kKyra1 , kPlatformPC , kNoSpecial , kyra1FloppyNeed } ,
{ kKyra1 , kPlatformAmiga , kNoSpecial , kyra1AmigaNeed } ,
2009-09-17 12:42:25 +00:00
{ kKyra1 , kPlatformPC , kTalkieVersion , kyra1CDNeed } ,
2009-11-20 21:24:40 +00:00
{ kKyra1 , kPlatformFMTowns , kNoSpecial , kyra1TownsNeed } ,
2009-09-17 12:42:25 +00:00
2009-11-20 21:24:40 +00:00
{ kKyra1 , kPlatformPC98 , kNoSpecial , kyra1PC98Need } ,
2009-11-14 22:51:35 +00:00
2009-09-17 12:42:25 +00:00
{ kKyra1 , kPlatformPC , kDemoVersion , kyra1DemoNeed } ,
2009-11-19 17:44:19 +00:00
{ kKyra1 , kPlatformPC , kTalkieDemoVersion , kyra1DemoCDNeed } ,
2009-09-17 12:42:25 +00:00
2009-11-20 21:24:40 +00:00
{ kKyra2 , kPlatformPC , kNoSpecial , kyra2FloppyNeed } ,
2009-09-17 12:42:25 +00:00
2009-11-20 19:32:15 +00:00
{ kKyra2 , kPlatformPC , kTalkieVersion , kyra2CDNeed } ,
2009-09-17 12:42:25 +00:00
2009-11-20 19:32:15 +00:00
{ kKyra2 , kPlatformPC , kTalkieDemoVersion , kyra2CDDemoNeed } ,
2009-09-17 12:42:25 +00:00
2009-11-20 21:24:40 +00:00
{ kKyra2 , kPlatformFMTowns , kNoSpecial , kyra2TownsNeed } ,
2009-09-17 12:42:25 +00:00
2009-09-17 15:59:45 +00:00
{ kKyra2 , kPlatformPC , kDemoVersion , kyra2DemoNeed } ,
2009-09-17 12:42:25 +00:00
2009-09-17 15:59:45 +00:00
{ kLol , kPlatformPC , kDemoVersion , lolDemoNeed } ,
2009-09-17 12:42:25 +00:00
2009-11-20 21:24:15 +00:00
{ kKyra3 , kPlatformPC , kTalkieVersion , kyra3Need } ,
2009-09-17 12:42:25 +00:00
2009-11-20 21:24:40 +00:00
{ kLol , kPlatformPC , kNoSpecial , lolFloppyNeed } ,
{ kLol , kPlatformPC98 , kNoSpecial , lolPC98Need } ,
2009-09-17 12:42:25 +00:00
2009-11-20 19:32:15 +00:00
{ kLol , kPlatformPC , kTalkieVersion , lolCDNeed } ,
2009-01-18 17:04:24 +00:00
2009-10-02 14:42:24 +00:00
{ - 1 , - 1 , - 1 , 0 }
2007-02-03 14:52:02 +00:00
} ;
2009-09-17 12:02:17 +00:00
} // end of anonymous namespace
2009-09-16 20:52:59 +00:00
2009-09-17 12:02:17 +00:00
const int * getNeedList ( const Game * g ) {
for ( const GameNeed * need = gameNeedTable ; need - > game ! = - 1 ; + + need ) {
2009-09-17 12:42:50 +00:00
if ( need - > game = = g - > game & & g - > platform = = need - > platform & & need - > special = = g - > special )
2009-09-17 12:02:17 +00:00
return need - > entries ;
}
2009-09-16 20:52:59 +00:00
2009-09-17 12:02:17 +00:00
return 0 ;
}
2009-09-16 20:52:59 +00:00