added specification for Descent: Destination Saturn briefing screen to properly show briefings; added different briefing structure for Descent 1 Shareware which has a slightly different order of the usual briefings

This commit is contained in:
zicodxx 2012-04-08 15:47:50 +02:00
parent d39d58a585
commit ba75f1237e
4 changed files with 27 additions and 17 deletions

View file

@ -1,5 +1,9 @@
D1X-Rebirth Changelog
20120408
--------
main/mission.c, main/mission.h, main/titles.c: added specification for Descent: Destination Saturn briefing screen to properly show briefings; added different briefing structure for Descent 1 Shareware which has a slightly different order of the usual briefings
20120407
--------
main/fireball.c: made choose_drop_segment more similar to D2X-Rebirth and let fallback correctly check for reactor segment

View file

@ -110,7 +110,7 @@ int load_mission_d1(void)
Secret_level_table[0] = 10;
strcpy(Briefing_text_filename,BIMD1_BRIEFING_FILE);
strcpy(Briefing_text_filename,BIMD1_BRIEFING_FILE_OEM);
strcpy(Ending_text_filename,BIMD1_ENDING_FILE_OEM);
break;

View file

@ -78,10 +78,11 @@ extern Mission *Current_mission; // current mission
#define PLAYING_BUILTIN_MISSION (Current_mission->builtin_hogsize != 0)
#define ANARCHY_ONLY_MISSION (Current_mission->anarchy_only_flag == 1)
#define BIMD1_LAST_LEVEL 27
#define BIMD1_LAST_LEVEL 27
#define BIMD1_LAST_SECRET_LEVEL -3
#define BIMD1_BRIEFING_FILE "briefing.txb"
#define BIMD1_ENDING_FILE "endreg.txb"
#define BIMD1_BRIEFING_FILE "briefing.txb"
#define BIMD1_BRIEFING_FILE_OEM "briefsat.txb"
#define BIMD1_ENDING_FILE "endreg.txb"
#define BIMD1_ENDING_FILE_OEM "endsat.txb"
#define BIMD1_ENDING_FILE_SHARE "ending.txb"

View file

@ -222,58 +222,47 @@ typedef struct {
#define ENDING_LEVEL_NUM_OEMSHARE 0x7f
#define ENDING_LEVEL_NUM_REGISTER 0x7e
briefing_screen Briefing_screens[] = {
briefing_screen Briefing_screens_full[] = {
{ "brief01.pcx", 0, 1, 13, 140, 290, 59 },
{ "brief02.pcx", 0, 2, 27, 34, 257, 177 },
{ "brief03.pcx", 0, 3, 20, 22, 257, 177 },
{ "brief02.pcx", 0, 4, 27, 34, 257, 177 },
{ "moon01.pcx", 1, 5, 10, 10, 300, 170 }, // level 1
{ "moon01.pcx", 2, 6, 10, 10, 300, 170 }, // level 2
{ "moon01.pcx", 3, 7, 10, 10, 300, 170 }, // level 3
{ "venus01.pcx", 4, 8, 15, 15, 300, 200 }, // level 4
{ "venus01.pcx", 5, 9, 15, 15, 300, 200 }, // level 5
{ "brief03.pcx", 6, 10, 20, 22, 257, 177 },
{ "merc01.pcx", 6, 11, 10, 15, 300, 200 }, // level 6
{ "merc01.pcx", 7, 12, 10, 15, 300, 200 }, // level 7
{ "brief03.pcx", 8, 13, 20, 22, 257, 177 },
{ "mars01.pcx", 8, 14, 10, 100, 300, 200 }, // level 8
{ "mars01.pcx", 9, 15, 10, 100, 300, 200 }, // level 9
{ "brief03.pcx", 10, 16, 20, 22, 257, 177 },
{ "mars01.pcx", 10, 17, 10, 100, 300, 200 }, // level 10
{ "jup01.pcx", 11, 18, 10, 40, 300, 200 }, // level 11
{ "jup01.pcx", 12, 19, 10, 40, 300, 200 }, // level 12
{ "brief03.pcx", 13, 20, 20, 22, 257, 177 },
{ "jup01.pcx", 13, 21, 10, 40, 300, 200 }, // level 13
{ "jup01.pcx", 14, 22, 10, 40, 300, 200 }, // level 14
{ "saturn01.pcx", 15, 23, 10, 40, 300, 200 }, // level 15
{ "brief03.pcx", 16, 24, 20, 22, 257, 177 },
{ "saturn01.pcx", 16, 25, 10, 40, 300, 200 }, // level 16
{ "brief03.pcx", 17, 26, 20, 22, 257, 177 },
{ "saturn01.pcx", 17, 27, 10, 40, 300, 200 }, // level 17
{ "uranus01.pcx", 18, 28, 100, 100, 300, 200 }, // level 18
{ "uranus01.pcx", 19, 29, 100, 100, 300, 200 }, // level 19
{ "uranus01.pcx", 20, 30, 100, 100, 300, 200 }, // level 20
{ "uranus01.pcx", 21, 31, 100, 100, 300, 200 }, // level 21
{ "neptun01.pcx", 22, 32, 10, 20, 300, 200 }, // level 22
{ "neptun01.pcx", 23, 33, 10, 20, 300, 200 }, // level 23
{ "neptun01.pcx", 24, 34, 10, 20, 300, 200 }, // level 24
{ "pluto01.pcx", 25, 35, 10, 20, 300, 200 }, // level 25
{ "pluto01.pcx", 26, 36, 10, 20, 300, 200 }, // level 26
{ "pluto01.pcx", 27, 37, 10, 20, 300, 200 }, // level 27
{ "aster01.pcx", -1, 38, 10, 90, 300, 200 }, // secret level -1
{ "aster01.pcx", -2, 39, 10, 90, 300, 200 }, // secret level -2
{ "aster01.pcx", -3, 40, 10, 90, 300, 200 }, // secret level -3
{ "end01.pcx", ENDING_LEVEL_NUM_OEMSHARE, 1, 23, 40, 320, 200 }, // OEM and shareware end
{ "end02.pcx", ENDING_LEVEL_NUM_REGISTER, 1, 5, 5, 300, 200 }, // registered end
{ "end01.pcx", ENDING_LEVEL_NUM_REGISTER, 2, 23, 40, 320, 200 }, // registered end
@ -281,7 +270,23 @@ briefing_screen Briefing_screens[] = {
};
#define MAX_BRIEFING_SCREEN (sizeof(Briefing_screens) / sizeof(Briefing_screens[0]))
briefing_screen Briefing_screens_share[] = {
{ "brief01.pcx", 0, 1, 13, 140, 290, 59 },
{ "brief02.pcx", 0, 2, 27, 34, 257, 177 },
{ "brief03.pcx", 0, 3, 20, 22, 257, 177 },
{ "brief02.pcx", 0, 4, 27, 34, 257, 177 },
{ "moon01.pcx", 1, 5, 10, 10, 300, 170 }, // level 1
{ "moon01.pcx", 2, 6, 10, 10, 300, 170 }, // level 2
{ "moon01.pcx", 3, 7, 10, 10, 300, 170 }, // level 3
{ "venus01.pcx", 4, 8, 15, 15, 300, 200 }, // level 4
{ "venus01.pcx", 5, 9, 15, 15, 300, 200 }, // level 5
{ "merc01.pcx", 6, 10, 10, 15, 300, 200 }, // level 6
{ "merc01.pcx", 7, 11, 10, 15, 300, 200 }, // level 7
{ "end01.pcx", ENDING_LEVEL_NUM_OEMSHARE, 1, 23, 40, 320, 200 }, // shareware end
};
#define Briefing_screens ((PHYSFSX_fsize("descent.hog")==D1_SHAREWARE_MISSION_HOGSIZE || PHYSFSX_fsize("descent.hog")==D1_SHAREWARE_10_MISSION_HOGSIZE)?Briefing_screens_share:Briefing_screens_full)
#define MAX_BRIEFING_SCREEN (sizeof(Briefing_screens_full) / sizeof(Briefing_screens_full[0]))
typedef struct msgstream
{