load d1 oem mission, d1 v1.0 mission
authorBradley Bell <btb@icculus.org>
Wed, 26 Feb 2003 11:03:27 +0000 (11:03 +0000)
committerBradley Bell <btb@icculus.org>
Wed, 26 Feb 2003 11:03:27 +0000 (11:03 +0000)
ChangeLog
main/mission.c
main/mission.h

index 0eb34d9..b705b65 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2003-02-26  Bradley Bell  <bradleyb@smeagol>
 
+       * main/mission.c, main/mission.h: load d1 oem mission, d1 v1.0
+       mission
+
        * main/gamemine.c: load d1 shareware levels!
 
 2003-02-25  Bradley Bell  <btb@icculus.org>
        * NEWS: news
        * 2d/rle.c: make rle_swap handle RLE_BIG
 
-2003-01-01  Bradley Bell <btb@icculus.org>
+2003-01-01  Martin Schaffner <maschaffner@gmx.ch>
 
        * main/render.c: workaround solaris qsort bug
+
+2003-01-01  Steffen Pohle <stpohle@gmx.net>
+
        * arch/linux/linuxnet.c, arch/linux/ukali.c,
        arch/linux/include/ukali.h, main/inferno.c: enabled kali
        * arch/linux/Makefile.am: enabled linux joystick, kali
        * arch/sdl/rbaudio.c: gracefully handle redbook non-availability
        * arch/sdl/gr.c: don't need to set mode in gr_init
 
-2002-08-02  Bradley Bell <btb@icculus.org>
+2002-08-02  Martin Schaffner <maschaffner@gmx.ch>
 
        * main/: gamemine.c, gamemine.h, gamesave.c, gamesave.h: more d1
        level loading stuff
        * Makefile.am, descent.mn2: added mission file for descent 1
+
+2002-08-02  Bradley Bell <btb@icculus.org>
+
        * arch/sdl/digi.c, arch/sdl/gr.c, include/error.h,
        include/oldsdl.h, main/gamecntl.c, main/inferno.c, main/laser.c,
        main/piggy.h, misc/error.c: junk
        main/vclip.c, main/vclip.h, main/wall.c, main/wall.h,
        main/weapon.c, main/weapon.h: fast i/o macros
 
-2002-08-01  Bradley Bell <btb@icculus.org>
+2002-08-01  Martin Schaffner <maschaffner@gmx.ch>
 
        * NEWS, cfile/cfile.c, main/console.c, main/gamemine.c,
        main/gamemine.h, main/gamesave.c: load d1 levels
 
 2002-01-28  Bradley Bell <btb@icculus.org>
 
-       * NEWS, acconfig.h, configure.ac, cfile/cfile.c, main/inferno.c,
-       main/newdemo.c: Data files now go in DATADIR/games/d2x, user files
-       now go in ~/.d2x
+       * NEWS, acconfig.h, configure.ac, cfile/cfile.c, main/newdemo.c:
+       Data files now go in DATADIR/games/d2x, user files now go in
+       ~/.d2x
+
+2002-01-28  Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
+
+       * main/inferno.c: Data files now go in DATADIR/games/d2x, user
+       files now go in ~/.d2x
 
 2002-01-24  Bradley Bell <btb@icculus.org>
 
        * iff/iff.c, include/u_mem.h: NDEBUG fixes
        * main/: ai.h, inferno.c, lighting.c, object.c, render.c: fix
        warnings and enable NDEBUG
-       * ChangeLog, main/kconfig.c: joystick support
        * arch/svgalib_init.c: svgalib support
 
+2001-01-22  Michael Wagener <Michael.Wagener@materna.de>
+
+       * main/kconfig.c: joystick support
+
 2001-01-21  Bradley Bell <btb@icculus.org>
 
        * cvshowto.txt: new file, taken from d1x webpage
index 3cdb69c..aad1eab 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: mission.c,v 1.18 2003-01-11 02:58:33 btb Exp $ */
+/* $Id: mission.c,v 1.19 2003-02-26 11:03:27 btb Exp $ */
 /*
 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
@@ -182,6 +182,7 @@ int load_mission_d1(int mission_num)
 
        switch (D1_Builtin_mission_hogsize) {
        case D1_SHAREWARE_MISSION_HOGSIZE:
+       case D1_SHAREWARE_10_MISSION_HOGSIZE:
                N_secret_levels = 0;
 
                Last_level = 7;
@@ -202,10 +203,27 @@ int load_mission_d1(int mission_num)
                for (i=0;i<Last_level;i++)
                        sprintf(Level_names[i], "level%02d.sdl", i+1);
 
+               break;
+       case D1_OEM_MISSION_HOGSIZE:
+               N_secret_levels = 1;
+
+               Last_level = 15;
+               Last_secret_level = -1;
+
+               //build level names
+               for (i=0; i < Last_level - 1; i++)
+                       sprintf(Level_names[i], "level%02d.rdl", i+1);
+               sprintf(Level_names[i], "saturn%02d.rdl", i+1);
+               for (i=0; i < -Last_secret_level; i++)
+                       sprintf(Secret_level_names[i], "levels%1d.rdl", i+1);
+
+               Secret_level_table[0] = 10;
+
                break;
        default:
                Int3(); // fall through
        case D1_MISSION_HOGSIZE:
+       case D1_10_MISSION_HOGSIZE:
        case D1_MAC_MISSION_HOGSIZE:
                N_secret_levels = 3;
 
@@ -463,16 +481,23 @@ void add_d1_builtin_mission_to_list(int *count)
 
        switch (D1_Builtin_mission_hogsize) {
        case D1_SHAREWARE_MISSION_HOGSIZE:
+       case D1_SHAREWARE_10_MISSION_HOGSIZE:
        case D1_MAC_SHARE_MISSION_HOGSIZE:
                strcpy(Mission_list[*count].filename, D1_MISSION_FILENAME);
                strcpy(Mission_list[*count].mission_name, D1_SHAREWARE_MISSION_NAME);
                Mission_list[*count].anarchy_only_flag = 0;
                break;
+       case D1_OEM_MISSION_HOGSIZE:
+               strcpy(Mission_list[*count].filename, D1_MISSION_FILENAME);
+               strcpy(Mission_list[*count].mission_name, D1_OEM_MISSION_NAME);
+               Mission_list[*count].anarchy_only_flag = 0;
+               break;
        default:
                Warning("Unknown D1 hogsize %d\n", D1_Builtin_mission_hogsize);
                Int3();
                // fall through
        case D1_MISSION_HOGSIZE:
+       case D1_10_MISSION_HOGSIZE:
        case D1_MAC_MISSION_HOGSIZE:
                strcpy(Mission_list[*count].filename, D1_MISSION_FILENAME);
                strcpy(Mission_list[*count].mission_name, D1_MISSION_NAME);
@@ -653,8 +678,11 @@ int load_mission(int mission_num)
                default:
                        Int3(); // fall through
                case D1_MISSION_HOGSIZE:
+               case D1_10_MISSION_HOGSIZE:
                case D1_MAC_MISSION_HOGSIZE:
+               case D1_OEM_MISSION_HOGSIZE:
                case D1_SHAREWARE_MISSION_HOGSIZE:
+               case D1_SHAREWARE_10_MISSION_HOGSIZE:
                case D1_MAC_SHARE_MISSION_HOGSIZE:
                        return load_mission_d1(mission_num);
                        break;
index 1eea535..e850892 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: mission.h,v 1.8 2003-01-11 02:58:33 btb Exp $ */
+/* $Id: mission.h,v 1.9 2003-02-26 11:03:27 btb Exp $ */
 /*
 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
@@ -59,9 +59,13 @@ COPYRIGHT 1993-1999 PARALLAX SOFTWARE CORPORATION.  ALL RIGHTS RESERVED.
 #define D1_MISSION_FILENAME             "descent"
 #define D1_MISSION_NAME                 "Descent: First Strike"
 #define D1_MISSION_HOGSIZE              6856701
+#define D1_10_MISSION_HOGSIZE           7261423
 #define D1_MAC_MISSION_HOGSIZE          7456179
+#define D1_OEM_MISSION_NAME             "Destination Saturn"
+#define D1_OEM_MISSION_HOGSIZE          4492107
 #define D1_SHAREWARE_MISSION_NAME       "Descent Demo"
 #define D1_SHAREWARE_MISSION_HOGSIZE    2339773
+#define D1_SHAREWARE_10_MISSION_HOGSIZE 2365676
 #define D1_MAC_SHARE_MISSION_HOGSIZE    3370339
 
 #define SHAREWARE_MISSION_FILENAME  "d2demo"