diff options
Diffstat (limited to 'saga/game.cpp')
-rw-r--r-- | saga/game.cpp | 64 |
1 files changed, 55 insertions, 9 deletions
diff --git a/saga/game.cpp b/saga/game.cpp index d04ac2412f..9f24f651a8 100644 --- a/saga/game.cpp +++ b/saga/game.cpp @@ -50,12 +50,26 @@ GAME_FILEDESC ITEDEMO_GameFiles[] = { GAME_FONTDESC ITEDEMO_GameFonts[] = { {GAME_FONT_SMALL, 0}, {GAME_FONT_MEDIUM, 1} -}; +}; GAME_SOUNDINFO ITEDEMO_GameSound = { GAME_SOUND_VOC, 0, 0, 0 }; +// Inherit the Earth - MAC Wyrmkeep Demo version +GAME_FILEDESC ITEMACDEMO_GameFiles[] = { + {"ITED.RSC", GAME_RESOURCEFILE}, + {"SCRIPTSD.RSC", GAME_SCRIPTFILE}, + {"SOUNDSD.RSC", GAME_SOUNDFILE}, + {"VOICESD.RSC", GAME_VOICEFILE}, + {"MUSICD.RSC", GAME_MUSICFILE} +}; + +GAME_FONTDESC ITEMACDEMO_GameFonts[] = { + {GAME_FONT_MEDIUM, 0}, + {GAME_FONT_SMALL, 2} +}; + // Inherit the Earth - win32 Wyrmkeep Linux Demo version GAME_FILEDESC ITEWINDEMO_GameFiles[] = { {"ITED.RSC", GAME_RESOURCEFILE}, @@ -65,6 +79,11 @@ GAME_FILEDESC ITEWINDEMO_GameFiles[] = { {"MUSICD.RSC", GAME_MUSICFILE} }; +GAME_FONTDESC ITEWINDEMO_GameFonts[] = { + {GAME_FONT_MEDIUM, 0}, + {GAME_FONT_SMALL, 2} +}; + // Inherit the Earth - win32 Wyrmkeep Demo version older release GAME_FILEDESC ITEWINDEMOOld_GameFiles[] = { {"ITED.RSC", GAME_RESOURCEFILE}, @@ -93,6 +112,13 @@ GAME_RESOURCEDESC ITE_Resources = { ITE_DIALOGUE_PANEL }; +GAME_RESOURCEDESC ITEMACDEMO_Resources = { + ITEMACDEMO_SCENE_LUT, // Scene lookup table RN + ITE_SCRIPT_LUT, // Script lookup table RN + ITE_COMMAND_PANEL, + ITE_DIALOGUE_PANEL +}; + GAME_SOUNDINFO ITE_GameSound = { GAME_SOUND_VOC, 0, 0, 0 }; @@ -179,7 +205,26 @@ GAMEDESC GameDescs[] = { ARRAYSIZE(ITEDEMO_GameFonts), ITEDEMO_GameFonts, &ITEDEMO_GameSound, - 0 // features + 0, // features + }, + + // Inherit the earth - MAC Demo version + // Note: it should be before win32 version ??? + { + "ite-demo", + GID_ITE, + GAME_ITE_MACDEMO, + "Inherit the Earth (MAC Demo)", + 320, 200, + 137, + ITE_DEFAULT_SCENE, + &ITEMACDEMO_Resources, + ARRAYSIZE(ITEMACDEMO_GameFiles), + ITEMACDEMO_GameFiles, + ARRAYSIZE(ITEMACDEMO_GameFonts), + ITEMACDEMO_GameFonts, + &ITECD_GameSound, + GF_VOX_VOICES | GF_BIG_ENDIAN_DATA }, // Inherit the earth - Linux Demo version @@ -213,8 +258,8 @@ GAMEDESC GameDescs[] = { &ITE_Resources, ARRAYSIZE(ITEWINDEMOOld_GameFiles), ITEWINDEMO_GameFiles, - ARRAYSIZE(ITECD_GameFonts), - ITECD_GameFonts, + ARRAYSIZE(ITEWINDEMO_GameFonts), + ITEWINDEMO_GameFonts, &ITECD_GameSound, GF_VOX_VOICES }, @@ -465,8 +510,11 @@ int LoadGame(uint16 game_n) { return FAILURE; } - game_filect = GameDescs[game_n].gd_filect; + GameModule.game_number = game_n; + GameModule.gamedesc = &GameDescs[game_n]; + game_filect = GameDescs[game_n].gd_filect; + GameModule.gfile_data = (GAME_FILEDATA *)malloc(game_filect * sizeof *GameModule.gfile_data); if (GameModule.gfile_data == NULL) { return MEM; @@ -493,8 +541,6 @@ int LoadGame(uint16 game_n) { GameModule.gd_fontdescs = GameDescs[game_n].gd_fontdescs; // Finish initialization - GameModule.game_number = game_n; - GameModule.gamedesc = &GameDescs[game_n]; GameModule.game_init = 1; return SUCCESS; @@ -552,11 +598,11 @@ int GAME_GetSceneInfo(GAME_SCENEDESC *gs_desc) { return SUCCESS; } -int GAME_GetGame() { +GAME_IDS GAME_GetGame() { return GameModule.gamedesc->gd_game_id; } -int GAME_GetGameType() { +SAGAGameId GAME_GetGameType() { return GameModule.gamedesc->gd_game_type; } |