#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_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)
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];
struct RecordingInfo
{
int level_nr;
- unsigned int random_seed;
+ unsigned long random_seed;
unsigned long date;
unsigned long counter;
unsigned long length;
BOOL changed;
struct
{
- byte joystickdata[MAX_PLAYERS];
+ byte action[MAX_PLAYERS];
byte delay;
} pos[MAX_TAPELEN];
};
extern char *display_name;
extern char *server_host;
extern int server_port;
-extern int networking;
extern int standalone;
extern int verbose;
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[];