rnd-19981026-2
[rocksndiamonds.git] / src / main.h
index a43543e54255c737d86964320e8ef158fab8932e..81a67831e3e189d0c44f639f0b0b227f86df3d5d 100644 (file)
@@ -35,9 +35,9 @@
 #ifdef   XPM_INCLUDE_FILE
 #include XPM_INCLUDE_FILE
 #endif
-#else
+#else  /* MSDOS */
 #include "msdos.h"
-#endif  /* #ifndef MSDOS */
+#endif  /* MSDOS */
 
 typedef unsigned char boolean;
 typedef unsigned char byte;
@@ -52,10 +52,10 @@ typedef unsigned char byte;
 #ifndef MSDOS
 #define WIN_XPOS       0
 #define WIN_YPOS       0
-#else
+#else  /* MSDOS */
 #define WIN_XPOS       ((XRES - WIN_XSIZE) / 2)
 #define WIN_YPOS       ((YRES - WIN_YSIZE) / 2)
-#endif
+#endif /* MSDOS */
 #define SCR_FIELDX     17
 #define SCR_FIELDY     17
 #define MAX_BUF_XSIZE  (SCR_FIELDX + 2)
@@ -82,6 +82,7 @@ typedef unsigned char byte;
 #ifndef SIGN
 #define SIGN(a)                ((a) < 0 ? -1 : ((a)>0 ? 1 : 0))
 #endif
+
 #define SCREENX(a)     ((a) - scroll_x)
 #define SCREENY(a)     ((a) - scroll_y)
 #define LEVELX(a)      ((a) + scroll_x)
@@ -255,18 +256,17 @@ struct SetupInfo
   } input[MAX_PLAYERS];
 };
 
-struct SetupFileInfo
+struct SetupFileList
 {
   char *token;
   char *value;
-  struct SetupFileInfo *next;
+  struct SetupFileList *next;
 };
 
 struct PlayerInfo
 {
   boolean present;             /* player present in level playfield */
-  boolean connected;           /* player connected locally or via network */
-  boolean local;               /* player connected locally */
+  boolean connected;           /* player connected (locally or via network) */
   boolean active;              /* player (present && connected) */
 
   int index_nr, client_nr, element_nr;
@@ -275,10 +275,6 @@ struct PlayerInfo
 
   char login_name[MAX_NAMELEN];
   char alias_name[MAX_NAMELEN];
-  int handicap;
-  unsigned int setup;
-  int leveldir_nr;
-  int level_nr;
 
   int jx,jy, last_jx,last_jy;
   int MovDir, MovPos, GfxPos;
@@ -438,6 +434,8 @@ extern struct SoundInfo             Sound[];
 extern struct JoystickInfo     joystick[];
 extern struct OptionInfo       options;
 extern struct SetupInfo                setup;
+extern struct SetupFileList    *setup_list;
+extern struct SetupFileList    *level_setup_list;
 
 extern char            *sound_name[];
 extern int             background_loop[];
@@ -1100,12 +1098,14 @@ extern int              num_bg_loops;
 #define LEVDIR_FILENAME                "ROCKS.levelinfo"
 #define JOYDAT_FILENAME                "ROCKS.joystick"
 #define SETUP_FILENAME         "ROCKS.setup"
+#define LEVELSETUP_FILENAME    "ROCKS.levelsetup"
 #else
 #define SCORE_FILENAME         "ROCKS.sco"
 #define NAMES_FILENAME         "ROCKS.nam"
 #define LEVDIR_FILENAME                "ROCKS.lev"
 #define JOYDAT_FILENAME                "ROCKS.joy"
 #define SETUP_FILENAME         "ROCKS.set"
+#define LEVELSETUP_FILENAME    "ROCKS.lvs"
 #endif
 
 #define JOYDAT_FILE            JOYDAT_PATH "/" JOYDAT_FILENAME
@@ -1129,6 +1129,7 @@ extern int                num_bg_loops;
 #define LEVELREC_COOKIE                "ROCKSNDIAMONDS_LEVELREC_FILE_VERSION_1.2"
 #define JOYSTICK_COOKIE                "ROCKSNDIAMONDS_JOYSTICK_FILE_VERSION_1.0"
 #define SETUP_COOKIE           "ROCKSNDIAMONDS_SETUP_FILE_VERSION_1.2"
+#define LEVELSETUP_COOKIE      "ROCKSNDIAMONDS_LEVELSETUP_FILE_VERSION_1.2"
 #define LEVEL_COOKIE_LEN       (strlen(LEVEL_COOKIE)+1)
 #define SCORE_COOKIE_LEN       (strlen(SCORE_COOKIE)+1)
 #define NAMES_COOKIE_LEN       (strlen(NAMES_COOKIE)+1)
@@ -1136,6 +1137,7 @@ extern int                num_bg_loops;
 #define LEVELREC_COOKIE_LEN    (strlen(LEVELREC_COOKIE)+1)
 #define JOYSTICK_COOKIE_LEN    (strlen(JOYSTICK_COOKIE)+1)
 #define SETUP_COOKIE_LEN       (strlen(SETUP_COOKIE)+1)
+#define LEVELSETUP_COOKIE_LEN  (strlen(LEVELSETUP_COOKIE)+1)
 
 #define VERSION_STRING         "1.2"
 #define GAMETITLE_STRING       "Rocks'n'Diamonds"
@@ -1231,4 +1233,4 @@ extern int                num_bg_loops;
 #define ANIM_OSCILLATE 1
 #define ANIM_REVERSE   2
 
-#endif
+#endif /* MAIN_H */