Use enum for multiplayer message numbers
This commit is contained in:
parent
9af78b7217
commit
b685253fef
73
main/multi.c
73
main/multi.c
|
@ -174,76 +174,9 @@ char RefuseThisPlayer=0,WaitForRefuseAnswer=0,RefuseTeam,RefusePlayerName[12];
|
||||||
fix64 RefuseTimeLimit=0;
|
fix64 RefuseTimeLimit=0;
|
||||||
extern void init_player_stats_new_ship(ubyte pnum);
|
extern void init_player_stats_new_ship(ubyte pnum);
|
||||||
|
|
||||||
static const int message_length[MULTI_MAX_TYPE+1] = {
|
static const int message_length[] = {
|
||||||
25, // POSITION
|
#define define_message_length(NAME,SIZE) (SIZE),
|
||||||
4, // REAPPEAR
|
for_each_multiplayer_command(, define_message_length, )
|
||||||
8, // FIRE
|
|
||||||
5, // KILL
|
|
||||||
4, // REMOVE_OBJECT
|
|
||||||
97+9, // PLAYER_EXPLODE
|
|
||||||
37, // MESSAGE (MAX_MESSAGE_LENGTH = 40)
|
|
||||||
2, // QUIT
|
|
||||||
4, // PLAY_SOUND
|
|
||||||
41, // BEGIN_SYNC
|
|
||||||
4, // CONTROLCEN
|
|
||||||
5, // CLAIM ROBOT
|
|
||||||
4, // END_SYNC
|
|
||||||
2, // CLOAK
|
|
||||||
3, // ENDLEVEL_START
|
|
||||||
5, // DOOR_OPEN
|
|
||||||
2, // CREATE_EXPLOSION
|
|
||||||
16, // CONTROLCEN_FIRE
|
|
||||||
97+9, // PLAYER_DROP
|
|
||||||
19, // CREATE_POWERUP
|
|
||||||
9, // MISSILE_TRACK
|
|
||||||
2, // DE-CLOAK
|
|
||||||
2, // MENU_CHOICE
|
|
||||||
28, // ROBOT_POSITION (shortpos_length (23) + 5 = 28)
|
|
||||||
9, // ROBOT_EXPLODE
|
|
||||||
5, // ROBOT_RELEASE
|
|
||||||
18, // ROBOT_FIRE
|
|
||||||
6, // SCORE
|
|
||||||
6, // CREATE_ROBOT
|
|
||||||
3, // TRIGGER
|
|
||||||
10, // BOSS_ACTIONS
|
|
||||||
27, // ROBOT_POWERUPS
|
|
||||||
7, // HOSTAGE_DOOR
|
|
||||||
2+24, // SAVE_GAME (ubyte slot, uint id, char name[20]) // obsolete
|
|
||||||
2+4, // RESTORE_GAME (ubyte slot, uint id) // obsolete
|
|
||||||
-1, // MULTI_REQ_PLAYER - NEVER USED
|
|
||||||
-1, // MULTI_SEND_PLAYER - NEVER USED
|
|
||||||
55, // MULTI_MARKER
|
|
||||||
12, // MULTI_DROP_WEAPON
|
|
||||||
3+sizeof(shortpos), // MULTI_GUIDED, IF SHORTPOS CHANGES, CHANGE MAC VALUE BELOW
|
|
||||||
11, // MULTI_STOLEN_ITEMS
|
|
||||||
6, // MULTI_WALL_STATUS
|
|
||||||
5, // MULTI_HEARTBEAT
|
|
||||||
9, // MULTI_KILLGOALS
|
|
||||||
9, // MULTI_SEISMIC
|
|
||||||
18, // MULTI_LIGHT
|
|
||||||
2, // MULTI_START_TRIGGER
|
|
||||||
6, // MULTI_FLAGS
|
|
||||||
2, // MULTI_DROP_BLOB
|
|
||||||
MAX_POWERUP_TYPES+1, // MULTI_POWCAP_UPDATE
|
|
||||||
sizeof(active_door)+3, // MULTI_ACTIVE_DOOR
|
|
||||||
4, // MULTI_SOUND_FUNCTION
|
|
||||||
2, // MULTI_CAPTURE_BONUS
|
|
||||||
2, // MULTI_GOT_FLAG
|
|
||||||
12, // MULTI_DROP_FLAG
|
|
||||||
1, // MULTI_ROBOT_CONTROLS - UNUSED
|
|
||||||
2, // MULTI_FINISH_GAME
|
|
||||||
3, // MULTI_RANK
|
|
||||||
1, // MULTI_MODEM_PING
|
|
||||||
1, // MULTI_MODEM_PING_RETURN
|
|
||||||
3, // MULTI_ORB_BONUS
|
|
||||||
2, // MULTI_GOT_ORB
|
|
||||||
12, // MULTI_DROP_ORB
|
|
||||||
4, // MULTI_PLAY_BY_PLAY
|
|
||||||
2, // MULTI_DO_BOUNTY
|
|
||||||
3, // MULTI_TYPING_STATE
|
|
||||||
3, // MULTI_GMODE_UPDATE
|
|
||||||
7, // MULTI_KILL_HOST
|
|
||||||
5, // MULTI_KILL_CLIENT
|
|
||||||
};
|
};
|
||||||
|
|
||||||
char PowerupsInMine[MAX_POWERUP_TYPES],MaxPowerupsAllowed[MAX_POWERUP_TYPES];
|
char PowerupsInMine[MAX_POWERUP_TYPES],MaxPowerupsAllowed[MAX_POWERUP_TYPES];
|
||||||
|
|
143
main/multi.h
143
main/multi.h
|
@ -59,81 +59,84 @@ extern int multi_protocol; // set and determinate used protocol
|
||||||
#define MULTI_PROTO_UDP 1 // UDP protocol
|
#define MULTI_PROTO_UDP 1 // UDP protocol
|
||||||
|
|
||||||
// What version of the multiplayer protocol is this? Increment each time something drastic changes in Multiplayer without the version number changes. Can be reset to 0 each time the version of the game changes
|
// What version of the multiplayer protocol is this? Increment each time something drastic changes in Multiplayer without the version number changes. Can be reset to 0 each time the version of the game changes
|
||||||
#define MULTI_PROTO_VERSION 5
|
#define MULTI_PROTO_VERSION 6
|
||||||
// PROTOCOL VARIABLES AND DEFINES - END
|
// PROTOCOL VARIABLES AND DEFINES - END
|
||||||
|
|
||||||
|
|
||||||
#define MAX_MESSAGE_LEN 35
|
#define MAX_MESSAGE_LEN 35
|
||||||
|
|
||||||
#define MULTI_POSITION 0
|
#define define_multiplayer_command(NAME,SIZE) NAME,
|
||||||
#define MULTI_REAPPEAR 1
|
|
||||||
#define MULTI_FIRE 2
|
#define for_each_multiplayer_command(BEFORE,VALUE,AFTER) \
|
||||||
#define MULTI_KILL 3
|
BEFORE \
|
||||||
#define MULTI_REMOVE_OBJECT 4
|
VALUE(MULTI_POSITION , 25) \
|
||||||
#define MULTI_PLAYER_EXPLODE 5
|
VALUE(MULTI_REAPPEAR , 4) \
|
||||||
#define MULTI_MESSAGE 6
|
VALUE(MULTI_FIRE , 8) \
|
||||||
#define MULTI_QUIT 7
|
VALUE(MULTI_KILL , 5) \
|
||||||
#define MULTI_PLAY_SOUND 8
|
VALUE(MULTI_REMOVE_OBJECT , 4) \
|
||||||
#define MULTI_BEGIN_SYNC 9
|
VALUE(MULTI_MESSAGE , 37) /* (MAX_MESSAGE_LENGTH = 40) */ \
|
||||||
#define MULTI_CONTROLCEN 10
|
VALUE(MULTI_QUIT , 2) \
|
||||||
#define MULTI_ROBOT_CLAIM 11
|
VALUE(MULTI_PLAY_SOUND , 4) \
|
||||||
#define MULTI_END_SYNC 12
|
VALUE(MULTI_CONTROLCEN , 4) \
|
||||||
#define MULTI_CLOAK 13
|
VALUE(MULTI_ROBOT_CLAIM , 5) \
|
||||||
#define MULTI_ENDLEVEL_START 14
|
VALUE(MULTI_END_SYNC , 4) \
|
||||||
#define MULTI_DOOR_OPEN 15
|
VALUE(MULTI_CLOAK , 2) \
|
||||||
#define MULTI_CREATE_EXPLOSION 16
|
VALUE(MULTI_ENDLEVEL_START , 3) \
|
||||||
#define MULTI_CONTROLCEN_FIRE 17
|
VALUE(MULTI_CREATE_EXPLOSION , 2) \
|
||||||
#define MULTI_PLAYER_DROP 18
|
VALUE(MULTI_CONTROLCEN_FIRE , 16) \
|
||||||
#define MULTI_CREATE_POWERUP 19
|
VALUE(MULTI_CREATE_POWERUP , 19) \
|
||||||
#define MULTI_CONSISTENCY 20
|
VALUE(MULTI_DECLOAK , 2) \
|
||||||
#define MULTI_DECLOAK 21
|
VALUE(MULTI_MENU_CHOICE , 2) \
|
||||||
#define MULTI_MENU_CHOICE 22
|
VALUE(MULTI_ROBOT_POSITION , 5+sizeof(shortpos)) \
|
||||||
#define MULTI_ROBOT_POSITION 23
|
VALUE(MULTI_PLAYER_EXPLODE , 97+9) \
|
||||||
#define MULTI_ROBOT_EXPLODE 24
|
VALUE(MULTI_BEGIN_SYNC , 41) \
|
||||||
#define MULTI_ROBOT_RELEASE 25
|
VALUE(MULTI_DOOR_OPEN , 5) \
|
||||||
#define MULTI_ROBOT_FIRE 26
|
VALUE(MULTI_PLAYER_DROP , 97+9) \
|
||||||
#define MULTI_SCORE 27
|
VALUE(MULTI_ROBOT_EXPLODE , 9) \
|
||||||
#define MULTI_CREATE_ROBOT 28
|
VALUE(MULTI_ROBOT_RELEASE , 5) \
|
||||||
#define MULTI_TRIGGER 29
|
VALUE(MULTI_ROBOT_FIRE , 18) \
|
||||||
#define MULTI_BOSS_ACTIONS 30
|
VALUE(MULTI_SCORE , 6) \
|
||||||
#define MULTI_CREATE_ROBOT_POWERUPS 31
|
VALUE(MULTI_CREATE_ROBOT , 6) \
|
||||||
#define MULTI_HOSTAGE_DOOR 32
|
VALUE(MULTI_TRIGGER , 3) \
|
||||||
#define MULTI_SAVE_GAME 33
|
VALUE(MULTI_BOSS_ACTIONS , 10) \
|
||||||
#define MULTI_RESTORE_GAME 34
|
VALUE(MULTI_CREATE_ROBOT_POWERUPS, 27) \
|
||||||
#define MULTI_REQ_PLAYER 35 // NEVER USED
|
VALUE(MULTI_HOSTAGE_DOOR , 7) \
|
||||||
#define MULTI_SEND_PLAYER 36 // NEVER USED
|
VALUE(MULTI_SAVE_GAME , 2+24) /* (ubyte slot, uint id, char name[20]) */ \
|
||||||
#define MULTI_MARKER 37
|
VALUE(MULTI_RESTORE_GAME , 2+4) /* (ubyte slot, uint id) */ \
|
||||||
#define MULTI_DROP_WEAPON 38
|
VALUE(MULTI_HEARTBEAT , 5) \
|
||||||
#define MULTI_GUIDED 39
|
VALUE(MULTI_KILLGOALS , 9) \
|
||||||
#define MULTI_STOLEN_ITEMS 40
|
VALUE(MULTI_POWCAP_UPDATE , MAX_POWERUP_TYPES+1) \
|
||||||
#define MULTI_WALL_STATUS 41 // send to new players
|
VALUE(MULTI_DO_BOUNTY , 2) \
|
||||||
#define MULTI_HEARTBEAT 42
|
VALUE(MULTI_TYPING_STATE , 3) \
|
||||||
#define MULTI_KILLGOALS 43
|
VALUE(MULTI_GMODE_UPDATE , 3) \
|
||||||
#define MULTI_SEISMIC 44
|
VALUE(MULTI_KILL_HOST , 7) \
|
||||||
#define MULTI_LIGHT 45
|
VALUE(MULTI_KILL_CLIENT , 5) \
|
||||||
#define MULTI_START_TRIGGER 46
|
VALUE(MULTI_RANK , 3) \
|
||||||
#define MULTI_FLAGS 47
|
VALUE(MULTI_MARKER , 55) \
|
||||||
#define MULTI_DROP_BLOB 48
|
VALUE(MULTI_DROP_WEAPON , 12) \
|
||||||
#define MULTI_POWCAP_UPDATE 49
|
VALUE(MULTI_GUIDED , 3+sizeof(shortpos)) \
|
||||||
#define MULTI_ACTIVE_DOOR 50
|
VALUE(MULTI_STOLEN_ITEMS , 11) \
|
||||||
#define MULTI_SOUND_FUNCTION 51
|
VALUE(MULTI_WALL_STATUS , 6) /* send to new players */ \
|
||||||
#define MULTI_CAPTURE_BONUS 52
|
VALUE(MULTI_SEISMIC , 9) \
|
||||||
#define MULTI_GOT_FLAG 53
|
VALUE(MULTI_LIGHT , 18) \
|
||||||
#define MULTI_DROP_FLAG 54
|
VALUE(MULTI_START_TRIGGER , 2) \
|
||||||
#define MULTI_ROBOT_CONTROLS 55 // NEVER USED
|
VALUE(MULTI_FLAGS , 6) \
|
||||||
#define MULTI_FINISH_GAME 56
|
VALUE(MULTI_DROP_BLOB , 2) \
|
||||||
#define MULTI_RANK 57
|
VALUE(MULTI_ACTIVE_DOOR , sizeof(active_door)+3) \
|
||||||
#define MULTI_MODEM_PING 58
|
VALUE(MULTI_SOUND_FUNCTION , 4) \
|
||||||
#define MULTI_MODEM_PING_RETURN 59
|
VALUE(MULTI_CAPTURE_BONUS , 2) \
|
||||||
#define MULTI_ORB_BONUS 60
|
VALUE(MULTI_GOT_FLAG , 2) \
|
||||||
#define MULTI_GOT_ORB 61
|
VALUE(MULTI_DROP_FLAG , 12) \
|
||||||
#define MULTI_DROP_ORB 62
|
VALUE(MULTI_ROBOT_CONTROLS , 1) /* UNUSED */ \
|
||||||
#define MULTI_PLAY_BY_PLAY 63
|
VALUE(MULTI_FINISH_GAME , 2) \
|
||||||
#define MULTI_DO_BOUNTY 64
|
VALUE(MULTI_MODEM_PING , 1) \
|
||||||
#define MULTI_TYPING_STATE 65
|
VALUE(MULTI_MODEM_PING_RETURN , 1) \
|
||||||
#define MULTI_GMODE_UPDATE 66
|
VALUE(MULTI_ORB_BONUS , 3) \
|
||||||
#define MULTI_KILL_HOST 67
|
VALUE(MULTI_GOT_ORB , 2) \
|
||||||
#define MULTI_KILL_CLIENT 68
|
VALUE(MULTI_DROP_ORB , 12) \
|
||||||
|
VALUE(MULTI_PLAY_BY_PLAY , 4) \
|
||||||
|
AFTER
|
||||||
|
for_each_multiplayer_command(enum {, define_multiplayer_command, });
|
||||||
|
|
||||||
#define MAX_NET_CREATE_OBJECTS 40
|
#define MAX_NET_CREATE_OBJECTS 40
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue