projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rnd-19981013-3
[rocksndiamonds.git]
/
src
/
main.h
diff --git
a/src/main.h
b/src/main.h
index d967565c231cb75efc18e3014118820bd6838713..ce5d1bb99cc9753a168bea37bfff849d0bf85bae 100644
(file)
--- a/
src/main.h
+++ b/
src/main.h
@@
-1,13
+1,12
@@
/***********************************************************
* Rocks'n'Diamonds -- McDuffin Strikes Back! *
*----------------------------------------------------------*
/***********************************************************
* Rocks'n'Diamonds -- McDuffin Strikes Back! *
*----------------------------------------------------------*
-* ©1995 Artsoft Development *
-* Holger Schemel *
-* 33659 Bielefeld-Senne *
-* Telefon: (0521) 493245 *
-* eMail: aeglos@valinor.owl.de *
-* aeglos@uni-paderborn.de *
-* q99492@pbhrzx.uni-paderborn.de *
+* (c) 1995-98 Artsoft Entertainment *
+* Holger Schemel *
+* Oststrasse 11a *
+* 33604 Bielefeld *
+* phone: ++49 +521 290471 *
+* email: aeglos@valinor.owl.de *
*----------------------------------------------------------*
* main.h *
***********************************************************/
*----------------------------------------------------------*
* main.h *
***********************************************************/
@@
-15,6
+14,13
@@
#ifndef MAIN_H
#define MAIN_H
#ifndef MAIN_H
#define MAIN_H
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <errno.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+
#ifndef MSDOS
#define XK_MISCELLANY
#define XK_LATIN1
#ifndef MSDOS
#define XK_MISCELLANY
#define XK_LATIN1
@@
-33,14
+39,8
@@
#include "msdos.h"
#endif /* #ifndef MSDOS */
#include "msdos.h"
#endif /* #ifndef MSDOS */
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <errno.h>
-
typedef int BOOL;
typedef int BOOL;
+typedef unsigned char byte;
#ifndef FALSE
#define FALSE 0
#ifndef FALSE
#define FALSE 0
@@
-82,10
+82,11
@@
typedef int BOOL;
#ifndef SIGN
#define SIGN(a) ((a) < 0 ? -1 : ((a)>0 ? 1 : 0))
#endif
#ifndef SIGN
#define SIGN(a) ((a) < 0 ? -1 : ((a)>0 ? 1 : 0))
#endif
-#define SCROLLX(a) ((a) - scroll_x)
-#define SCROLLY(a) ((a) - scroll_y)
-#define UNSCROLLX(a) ((a) + scroll_x)
-#define UNSCROLLY(a) ((a) + scroll_y)
+#define SCREENX(a) ((a) - scroll_x)
+#define SCREENY(a) ((a) - scroll_y)
+#define LEVELX(a) ((a) + scroll_x)
+#define LEVELY(a) ((a) + scroll_y)
+#define IN_VIS_FIELD(x,y) ((x)>=0 && (x)<SCR_FIELDX && (y)>=0 &&(y)<SCR_FIELDY)
#define IN_SCR_FIELD(x,y) ((x)>=BX1 && (x)<=BX2 && (y)>=BY1 &&(y)<=BY2)
#define IN_LEV_FIELD(x,y) ((x)>=0 && (x)<lev_fieldx && (y)>=0 &&(y)<lev_fieldy)
#define IN_SCR_FIELD(x,y) ((x)>=BX1 && (x)<=BX2 && (y)>=BY1 &&(y)<=BY2)
#define IN_LEV_FIELD(x,y) ((x)>=0 && (x)<lev_fieldx && (y)>=0 &&(y)<lev_fieldy)
@@
-143,12
+144,7
@@
typedef int BOOL;
#define IS_PUSHABLE(e) (Elementeigenschaften[e] & EP_BIT_PUSHABLE)
#define ELEM_IS_PLAYER(e) (Elementeigenschaften[e] & EP_BIT_PLAYER)
#define IS_PUSHABLE(e) (Elementeigenschaften[e] & EP_BIT_PUSHABLE)
#define ELEM_IS_PLAYER(e) (Elementeigenschaften[e] & EP_BIT_PLAYER)
-/*
-#define IS_PLAYER(x,y) (JX == (x) && JY == (y))
-*/
-
#define IS_PLAYER(x,y) (ELEM_IS_PLAYER(StorePlayer[x][y]))
#define IS_PLAYER(x,y) (ELEM_IS_PLAYER(StorePlayer[x][y]))
-#define IS_LOCAL_PLAYER(x,y) (StorePlayer[x][y] == EL_SPIELER1)
#define IS_FREE(x,y) (Feld[x][y] == EL_LEERRAUM && !IS_PLAYER(x,y))
#define IS_FREE_OR_PLAYER(x,y) (Feld[x][y] == EL_LEERRAUM)
#define IS_FREE(x,y) (Feld[x][y] == EL_LEERRAUM && !IS_PLAYER(x,y))
#define IS_FREE_OR_PLAYER(x,y) (Feld[x][y] == EL_LEERRAUM)
@@
-200,7
+196,8
@@
typedef int BOOL;
#define MAX_LEVDIR_ENTRIES 15
#define MAX_SCORE_ENTRIES 15
#define MAX_LEVDIR_ENTRIES 15
#define MAX_SCORE_ENTRIES 15
-#define MAX_FILENAME 256
+#define MAX_OPTION_LEN 256
+#define MAX_FILENAME_LEN 256
#define MAX_NUM_AMOEBA 100
#define MAX_ELEMENTS 512
#define MAX_NUM_AMOEBA 100
#define MAX_ELEMENTS 512
@@
-212,7
+209,8
@@
struct HiScore
struct PlayerInfo
{
struct PlayerInfo
{
- int nr, active, local;
+ int active, local;
+ int index_nr, client_nr, element_nr;
char login_name[MAX_NAMELEN];
char alias_name[MAX_NAMELEN];
char login_name[MAX_NAMELEN];
char alias_name[MAX_NAMELEN];
@@
-222,8
+220,8
@@
struct PlayerInfo
int level_nr;
int jx,jy, last_jx,last_jy;
int level_nr;
int jx,jy, last_jx,last_jy;
- int MovDir, MovPos,
Pushing
;
- int
Frame, GfxPos
;
+ int MovDir, MovPos,
GfxPos
;
+ int
Pushing, Frame
;
int gone, LevelSolved, GameOver;
int gone, LevelSolved, GameOver;
@@
-275,7
+273,7
@@
struct LevelDirInfo
struct RecordingInfo
{
int level_nr;
struct RecordingInfo
{
int level_nr;
- unsigned
int
random_seed;
+ unsigned
long
random_seed;
unsigned long date;
unsigned long counter;
unsigned long length;
unsigned long date;
unsigned long counter;
unsigned long length;
@@
-287,8
+285,8
@@
struct RecordingInfo
BOOL changed;
struct
{
BOOL changed;
struct
{
-
unsigned char joystickdata
;
-
unsigned char
delay;
+
byte action[MAX_PLAYERS]
;
+
byte
delay;
} pos[MAX_TAPELEN];
};
} pos[MAX_TAPELEN];
};
@@
-321,8
+319,17
@@
extern char *joystick_device_name[2];
extern char *level_directory;
extern int width, height;
extern char *level_directory;
extern int width, height;
+extern char *program_name;
+extern char *display_name;
+extern char *server_host;
+extern int server_port;
+extern int serveronly;
+extern int network;
+extern int verbose;
+
extern int game_status;
extern int game_emulation;
extern int game_status;
extern int game_emulation;
+extern int network_playing;
extern int button_status, motion_status;
extern int key_joystick_mapping;
extern int global_joystick_status, joystick_status;
extern int button_status, motion_status;
extern int key_joystick_mapping;
extern int global_joystick_status, joystick_status;
@@
-362,7
+369,8
@@
extern long Elementeigenschaften[MAX_ELEMENTS];
extern int level_nr, leveldir_nr, num_leveldirs;
extern int lev_fieldx,lev_fieldy, scroll_x,scroll_y;
extern int level_nr, leveldir_nr, num_leveldirs;
extern int lev_fieldx,lev_fieldy, scroll_x,scroll_y;
-extern int FX,FY, ScreenMovPos, ScrollStepSize;
+extern int FX,FY, ScrollStepSize;
+extern int ScreenMovDir, ScreenMovPos, ScreenGfxPos;
extern int GameFrameDelay, MoveSpeed;
extern int BX1,BY1, BX2,BY2;
extern int ZX,ZY, ExitX,ExitY;
extern int GameFrameDelay, MoveSpeed;
extern int BX1,BY1, BX2,BY2;
extern int ZX,ZY, ExitX,ExitY;
@@
-370,6
+378,10
@@
extern int AllPlayersGone;
extern int FrameCounter, TimeFrames, TimeLeft;
extern int MampferNr, SiebAktiv;
extern int FrameCounter, TimeFrames, TimeLeft;
extern int MampferNr, SiebAktiv;
+extern byte network_player_action[];
+extern BOOL network_player_action_received;
+extern int TestPlayer;
+
extern struct LevelDirInfo leveldir[];
extern struct LevelInfo level;
extern struct PlayerInfo stored_player[];
extern struct LevelDirInfo leveldir[];
extern struct LevelInfo level;
extern struct PlayerInfo stored_player[];
@@
-383,8
+395,6
@@
extern char *sound_name[];
extern int background_loop[];
extern int num_bg_loops;
extern int background_loop[];
extern int num_bg_loops;
-extern char *progname;
-
/* often used screen positions */
#define SX 8
/* often used screen positions */
#define SX 8
@@
-606,7
+616,11
@@
extern char *progname;
#define EL_CHAR_COPY (EL_CHAR_ASCII0+94)
#define EL_CHAR_END (EL_CHAR_START+79)
#define EL_CHAR_COPY (EL_CHAR_ASCII0+94)
#define EL_CHAR_END (EL_CHAR_START+79)
-#define EL_UNUSED_200 200
+#define EL_MAUER_X 200
+#define EL_MAUER_Y 201
+#define EL_MAUER_XY 202
+
+#define EL_UNUSED_200 203
/* ... */
#define EL_UNUSED_255 255
/* ... */
#define EL_UNUSED_255 255
@@
-746,15
+760,20
@@
extern char *progname;
#define GFX_MAULWURF 145
#define GFX_SCHWEIN 146
#define GFX_DRACHE 147
#define GFX_MAULWURF 145
#define GFX_SCHWEIN 146
#define GFX_DRACHE 147
+#define GFX_MAUER_XY 148
+#define GFX_MAUER_X 149
+#define GFX_MAUER_Y 150
#define GFX_EDELSTEIN_ROT 152
#define GFX_EDELSTEIN_LILA 154
#define GFX_DYNABOMB_XL 156
#define GFX_SONDE 159
/* Zeile 10 (160) */
#define GFX_EDELSTEIN_BD 163
#define GFX_EDELSTEIN_ROT 152
#define GFX_EDELSTEIN_LILA 154
#define GFX_DYNABOMB_XL 156
#define GFX_SONDE 159
/* Zeile 10 (160) */
#define GFX_EDELSTEIN_BD 163
-#define GFX_MAUER_R1 165
+#define GFX_MAUER_RIGHT 165
+#define GFX_MAUER_R1 GFX_MAUER_RIGHT
#define GFX_MAUER_R 167
#define GFX_MAUER_R 167
-#define GFX_MAUER_L1 168
+#define GFX_MAUER_LEFT 168
+#define GFX_MAUER_L1 GFX_MAUER_LEFT
#define GFX_MAUER_L 170
#define GFX_MAUER_LEBT 171
#define GFX_SIEB2_LEER 172
#define GFX_MAUER_L 170
#define GFX_MAUER_LEBT 171
#define GFX_SIEB2_LEER 172
@@
-814,6
+833,9
@@
extern char *progname;
#define GFX_SPIELER4_RIGHT (GFX_START_ROCKSHEROES +10*HEROES_PER_LINE + 4)
#define GFX_SPIELER4_PUSH_RIGHT (GFX_START_ROCKSHEROES +11*HEROES_PER_LINE + 0)
#define GFX_SPIELER4_PUSH_LEFT (GFX_START_ROCKSHEROES +11*HEROES_PER_LINE + 4)
#define GFX_SPIELER4_RIGHT (GFX_START_ROCKSHEROES +10*HEROES_PER_LINE + 4)
#define GFX_SPIELER4_PUSH_RIGHT (GFX_START_ROCKSHEROES +11*HEROES_PER_LINE + 0)
#define GFX_SPIELER4_PUSH_LEFT (GFX_START_ROCKSHEROES +11*HEROES_PER_LINE + 4)
+#define GFX_MAUER_DOWN (GFX_START_ROCKSHEROES +12*HEROES_PER_LINE + 0)
+#define GFX_MAUER_UP (GFX_START_ROCKSHEROES +12*HEROES_PER_LINE + 3)
+
#define GFX_SONDE_START (GFX_START_ROCKSHEROES + 9*HEROES_PER_LINE + 8)
#define GFX_SCHWEIN_DOWN (GFX_START_ROCKSHEROES + 0*HEROES_PER_LINE + 8)
#define GFX_SCHWEIN_UP (GFX_START_ROCKSHEROES + 0*HEROES_PER_LINE +12)
#define GFX_SONDE_START (GFX_START_ROCKSHEROES + 9*HEROES_PER_LINE + 8)
#define GFX_SCHWEIN_DOWN (GFX_START_ROCKSHEROES + 0*HEROES_PER_LINE + 8)
#define GFX_SCHWEIN_UP (GFX_START_ROCKSHEROES + 0*HEROES_PER_LINE +12)
@@
-951,10
+973,10
@@
extern char *progname;
/* directions for moving */
#define MV_NO_MOVING 0
/* directions for moving */
#define MV_NO_MOVING 0
-#define MV_LEFT
1
-#define MV_RIGHT
2
-#define MV_UP
4
-#define MV_DOWN
8
+#define MV_LEFT
(1<<0)
+#define MV_RIGHT
(1<<1)
+#define MV_UP
(1<<2)
+#define MV_DOWN
(1<<3)
/* font types */
#define FS_SMALL 0
/* font types */
#define FS_SMALL 0
@@
-1033,12
+1055,13
@@
extern char *progname;
/* old cookies */
#define NAMES_COOKIE_10 "ROCKSNDIAMONDS_NAMES_FILE_VERSION_1.0"
/* old cookies */
#define NAMES_COOKIE_10 "ROCKSNDIAMONDS_NAMES_FILE_VERSION_1.0"
+#define LEVELREC_COOKIE_10 "ROCKSNDIAMONDS_LEVELREC_FILE_VERSION_1.0"
#define LEVEL_COOKIE "ROCKSNDIAMONDS_LEVEL_FILE_VERSION_1.0"
#define SCORE_COOKIE "ROCKSNDIAMONDS_SCORE_FILE_VERSION_1.0"
#define NAMES_COOKIE "ROCKSNDIAMONDS_NAMES_FILE_VERSION_1.1"
#define LEVELDIR_COOKIE "ROCKSNDIAMONDS_LEVELDIR_FILE_VERSION_1.0"
#define LEVEL_COOKIE "ROCKSNDIAMONDS_LEVEL_FILE_VERSION_1.0"
#define SCORE_COOKIE "ROCKSNDIAMONDS_SCORE_FILE_VERSION_1.0"
#define NAMES_COOKIE "ROCKSNDIAMONDS_NAMES_FILE_VERSION_1.1"
#define LEVELDIR_COOKIE "ROCKSNDIAMONDS_LEVELDIR_FILE_VERSION_1.0"
-#define LEVELREC_COOKIE "ROCKSNDIAMONDS_LEVELREC_FILE_VERSION_1.
0
"
+#define LEVELREC_COOKIE "ROCKSNDIAMONDS_LEVELREC_FILE_VERSION_1.
2
"
#define JOYSTICK_COOKIE "ROCKSNDIAMONDS_JOYSTICK_FILE_VERSION_1.0"
#define LEVEL_COOKIE_LEN (strlen(LEVEL_COOKIE)+1)
#define SCORE_COOKIE_LEN (strlen(SCORE_COOKIE)+1)
#define JOYSTICK_COOKIE "ROCKSNDIAMONDS_JOYSTICK_FILE_VERSION_1.0"
#define LEVEL_COOKIE_LEN (strlen(LEVEL_COOKIE)+1)
#define SCORE_COOKIE_LEN (strlen(SCORE_COOKIE)+1)