// values for graphics/sounds action types
-#define ACTION_DEFAULT 0
-#define ACTION_WAITING 1
-#define ACTION_FALLING 2
-#define ACTION_MOVING 3
-#define ACTION_DIGGING 4
-#define ACTION_SNAPPING 5
-#define ACTION_COLLECTING 6
-#define ACTION_DROPPING 7
-#define ACTION_PUSHING 8
-#define ACTION_WALKING 9
-#define ACTION_PASSING 10
-#define ACTION_IMPACT 11
-#define ACTION_BREAKING 12
-#define ACTION_ACTIVATING 13
-#define ACTION_DEACTIVATING 14
-#define ACTION_OPENING 15
-#define ACTION_CLOSING 16
-#define ACTION_ATTACKING 17
-#define ACTION_GROWING 18
-#define ACTION_SHRINKING 19
-#define ACTION_ACTIVE 20
-#define ACTION_FILLING 21
-#define ACTION_EMPTYING 22
-#define ACTION_CHANGING 23
-#define ACTION_EXPLODING 24
-#define ACTION_BORING 25
-#define ACTION_BORING_1 26
-#define ACTION_BORING_2 27
-#define ACTION_BORING_3 28
-#define ACTION_BORING_4 29
-#define ACTION_BORING_5 30
-#define ACTION_BORING_6 31
-#define ACTION_BORING_7 32
-#define ACTION_BORING_8 33
-#define ACTION_BORING_9 34
-#define ACTION_BORING_10 35
-#define ACTION_SLEEPING 36
-#define ACTION_SLEEPING_1 37
-#define ACTION_SLEEPING_2 38
-#define ACTION_SLEEPING_3 39
-#define ACTION_AWAKENING 40
-#define ACTION_DYING 41
-#define ACTION_TURNING 42
-#define ACTION_TURNING_FROM_LEFT 43
-#define ACTION_TURNING_FROM_RIGHT 44
-#define ACTION_TURNING_FROM_UP 45
-#define ACTION_TURNING_FROM_DOWN 46
-#define ACTION_SMASHED_BY_ROCK 47
-#define ACTION_SMASHED_BY_SPRING 48
-#define ACTION_EATING 49
-#define ACTION_TWINKLING 50
-#define ACTION_SPLASHING 51
-#define ACTION_HITTING 52
-#define ACTION_PAGE_1 53
-#define ACTION_PAGE_2 54
-#define ACTION_PAGE_3 55
-#define ACTION_PAGE_4 56
-#define ACTION_PAGE_5 57
-#define ACTION_PAGE_6 58
-#define ACTION_PAGE_7 59
-#define ACTION_PAGE_8 60
-#define ACTION_PAGE_9 61
-#define ACTION_PAGE_10 62
-#define ACTION_PAGE_11 63
-#define ACTION_PAGE_12 64
-#define ACTION_PAGE_13 65
-#define ACTION_PAGE_14 66
-#define ACTION_PAGE_15 67
-#define ACTION_PAGE_16 68
-#define ACTION_PAGE_17 69
-#define ACTION_PAGE_18 70
-#define ACTION_PAGE_19 71
-#define ACTION_PAGE_20 72
-#define ACTION_PAGE_21 73
-#define ACTION_PAGE_22 74
-#define ACTION_PAGE_23 75
-#define ACTION_PAGE_24 76
-#define ACTION_PAGE_25 77
-#define ACTION_PAGE_26 78
-#define ACTION_PAGE_27 79
-#define ACTION_PAGE_28 80
-#define ACTION_PAGE_29 81
-#define ACTION_PAGE_30 82
-#define ACTION_PAGE_31 83
-#define ACTION_PAGE_32 84
-#define ACTION_PART_1 85
-#define ACTION_PART_2 86
-#define ACTION_PART_3 87
-#define ACTION_PART_4 88
-#define ACTION_PART_5 89
-#define ACTION_PART_6 90
-#define ACTION_PART_7 91
-#define ACTION_PART_8 92
-#define ACTION_PART_9 93
-#define ACTION_PART_10 94
-#define ACTION_PART_11 95
-#define ACTION_PART_12 96
-#define ACTION_PART_13 97
-#define ACTION_PART_14 98
-#define ACTION_PART_15 99
-#define ACTION_PART_16 100
-#define ACTION_PART_17 101
-#define ACTION_PART_18 102
-#define ACTION_PART_19 103
-#define ACTION_PART_20 104
-#define ACTION_PART_21 105
-#define ACTION_PART_22 106
-#define ACTION_PART_23 107
-#define ACTION_PART_24 108
-#define ACTION_PART_25 109
-#define ACTION_PART_26 110
-#define ACTION_PART_27 111
-#define ACTION_PART_28 112
-#define ACTION_PART_29 113
-#define ACTION_PART_30 114
-#define ACTION_PART_31 115
-#define ACTION_PART_32 116
-#define ACTION_OTHER 117
-
-#define NUM_ACTIONS 118
+enum
+{
+ ACTION_DEFAULT = 0,
+ ACTION_WAITING,
+ ACTION_FALLING,
+ ACTION_MOVING,
+ ACTION_DIGGING,
+ ACTION_SNAPPING,
+ ACTION_COLLECTING,
+ ACTION_DROPPING,
+ ACTION_PUSHING,
+ ACTION_WALKING,
+ ACTION_PASSING,
+ ACTION_IMPACT,
+ ACTION_BREAKING,
+ ACTION_ACTIVATING,
+ ACTION_DEACTIVATING,
+ ACTION_OPENING,
+ ACTION_CLOSING,
+ ACTION_ATTACKING,
+ ACTION_GROWING,
+ ACTION_SHRINKING,
+ ACTION_ACTIVE,
+ ACTION_FILLING,
+ ACTION_EMPTYING,
+ ACTION_CHANGING,
+ ACTION_EXPLODING,
+ ACTION_BORING,
+ ACTION_BORING_1,
+ ACTION_BORING_2,
+ ACTION_BORING_3,
+ ACTION_BORING_4,
+ ACTION_BORING_5,
+ ACTION_BORING_6,
+ ACTION_BORING_7,
+ ACTION_BORING_8,
+ ACTION_BORING_9,
+ ACTION_BORING_10,
+ ACTION_SLEEPING,
+ ACTION_SLEEPING_1,
+ ACTION_SLEEPING_2,
+ ACTION_SLEEPING_3,
+ ACTION_AWAKENING,
+ ACTION_DYING,
+ ACTION_TURNING,
+ ACTION_TURNING_FROM_LEFT,
+ ACTION_TURNING_FROM_RIGHT,
+ ACTION_TURNING_FROM_UP,
+ ACTION_TURNING_FROM_DOWN,
+ ACTION_SMASHED_BY_ROCK,
+ ACTION_SMASHED_BY_SPRING,
+ ACTION_EATING,
+ ACTION_TWINKLING,
+ ACTION_SPLASHING,
+ ACTION_HITTING,
+ ACTION_PAGE_1,
+ ACTION_PAGE_2,
+ ACTION_PAGE_3,
+ ACTION_PAGE_4,
+ ACTION_PAGE_5,
+ ACTION_PAGE_6,
+ ACTION_PAGE_7,
+ ACTION_PAGE_8,
+ ACTION_PAGE_9,
+ ACTION_PAGE_10,
+ ACTION_PAGE_11,
+ ACTION_PAGE_12,
+ ACTION_PAGE_13,
+ ACTION_PAGE_14,
+ ACTION_PAGE_15,
+ ACTION_PAGE_16,
+ ACTION_PAGE_17,
+ ACTION_PAGE_18,
+ ACTION_PAGE_19,
+ ACTION_PAGE_20,
+ ACTION_PAGE_21,
+ ACTION_PAGE_22,
+ ACTION_PAGE_23,
+ ACTION_PAGE_24,
+ ACTION_PAGE_25,
+ ACTION_PAGE_26,
+ ACTION_PAGE_27,
+ ACTION_PAGE_28,
+ ACTION_PAGE_29,
+ ACTION_PAGE_30,
+ ACTION_PAGE_31,
+ ACTION_PAGE_32,
+ ACTION_PART_1,
+ ACTION_PART_2,
+ ACTION_PART_3,
+ ACTION_PART_4,
+ ACTION_PART_5,
+ ACTION_PART_6,
+ ACTION_PART_7,
+ ACTION_PART_8,
+ ACTION_PART_9,
+ ACTION_PART_10,
+ ACTION_PART_11,
+ ACTION_PART_12,
+ ACTION_PART_13,
+ ACTION_PART_14,
+ ACTION_PART_15,
+ ACTION_PART_16,
+ ACTION_PART_17,
+ ACTION_PART_18,
+ ACTION_PART_19,
+ ACTION_PART_20,
+ ACTION_PART_21,
+ ACTION_PART_22,
+ ACTION_PART_23,
+ ACTION_PART_24,
+ ACTION_PART_25,
+ ACTION_PART_26,
+ ACTION_PART_27,
+ ACTION_PART_28,
+ ACTION_PART_29,
+ ACTION_PART_30,
+ ACTION_PART_31,
+ ACTION_PART_32,
+ ACTION_OTHER,
+
+ NUM_ACTIONS
+};
#define ACTION_BORING_LAST ACTION_BORING_10
#define ACTION_SLEEPING_LAST ACTION_SLEEPING_3
// values for special image configuration suffixes (must match game mode)
-#define GFX_SPECIAL_ARG_DEFAULT 0
-#define GFX_SPECIAL_ARG_LOADING 1
-#define GFX_SPECIAL_ARG_TITLE_INITIAL 2
-#define GFX_SPECIAL_ARG_TITLE_INITIAL_1 3
-#define GFX_SPECIAL_ARG_TITLE_INITIAL_2 4
-#define GFX_SPECIAL_ARG_TITLE_INITIAL_3 5
-#define GFX_SPECIAL_ARG_TITLE_INITIAL_4 6
-#define GFX_SPECIAL_ARG_TITLE_INITIAL_5 7
-#define GFX_SPECIAL_ARG_TITLE 8
-#define GFX_SPECIAL_ARG_TITLE_1 9
-#define GFX_SPECIAL_ARG_TITLE_2 10
-#define GFX_SPECIAL_ARG_TITLE_3 11
-#define GFX_SPECIAL_ARG_TITLE_4 12
-#define GFX_SPECIAL_ARG_TITLE_5 13
-#define GFX_SPECIAL_ARG_MAIN 14
-#define GFX_SPECIAL_ARG_LEVELS 15
-#define GFX_SPECIAL_ARG_LEVELNR 16
-#define GFX_SPECIAL_ARG_SCORES 17
-#define GFX_SPECIAL_ARG_EDITOR 18
-#define GFX_SPECIAL_ARG_INFO 19
-#define GFX_SPECIAL_ARG_SETUP 20
-#define GFX_SPECIAL_ARG_PLAYING 21
-#define GFX_SPECIAL_ARG_DOOR 22
-#define GFX_SPECIAL_ARG_TAPE 23
-#define GFX_SPECIAL_ARG_PANEL 24
-#define GFX_SPECIAL_ARG_PREVIEW 25
-#define GFX_SPECIAL_ARG_CRUMBLED 26
-#define GFX_SPECIAL_ARG_MAINONLY 27
-#define GFX_SPECIAL_ARG_TYPENAME 28
-#define GFX_SPECIAL_ARG_SUBMENU 29
-#define GFX_SPECIAL_ARG_MENU 30
-#define GFX_SPECIAL_ARG_TOONS 31
-#define GFX_SPECIAL_ARG_SCORESOLD 32
-#define GFX_SPECIAL_ARG_SCORESNEW 33
-#define GFX_SPECIAL_ARG_NO_TITLE 34
-#define GFX_SPECIAL_ARG_FADING 35
-#define GFX_SPECIAL_ARG_QUIT 36
-
-#define NUM_SPECIAL_GFX_ARGS 37
+enum
+{
+ GFX_SPECIAL_ARG_DEFAULT = 0,
+ GFX_SPECIAL_ARG_LOADING,
+ GFX_SPECIAL_ARG_TITLE_INITIAL,
+ GFX_SPECIAL_ARG_TITLE_INITIAL_1,
+ GFX_SPECIAL_ARG_TITLE_INITIAL_2,
+ GFX_SPECIAL_ARG_TITLE_INITIAL_3,
+ GFX_SPECIAL_ARG_TITLE_INITIAL_4,
+ GFX_SPECIAL_ARG_TITLE_INITIAL_5,
+ GFX_SPECIAL_ARG_TITLE,
+ GFX_SPECIAL_ARG_TITLE_1,
+ GFX_SPECIAL_ARG_TITLE_2,
+ GFX_SPECIAL_ARG_TITLE_3,
+ GFX_SPECIAL_ARG_TITLE_4,
+ GFX_SPECIAL_ARG_TITLE_5,
+ GFX_SPECIAL_ARG_MAIN,
+ GFX_SPECIAL_ARG_LEVELS,
+ GFX_SPECIAL_ARG_LEVELNR,
+ GFX_SPECIAL_ARG_SCORES,
+ GFX_SPECIAL_ARG_EDITOR,
+ GFX_SPECIAL_ARG_INFO,
+ GFX_SPECIAL_ARG_SETUP,
+ GFX_SPECIAL_ARG_PLAYING,
+ GFX_SPECIAL_ARG_DOOR,
+ GFX_SPECIAL_ARG_TAPE,
+ GFX_SPECIAL_ARG_PANEL,
+ GFX_SPECIAL_ARG_PREVIEW,
+ GFX_SPECIAL_ARG_CRUMBLED,
+ GFX_SPECIAL_ARG_MAINONLY,
+ GFX_SPECIAL_ARG_TYPENAME,
+ GFX_SPECIAL_ARG_SUBMENU,
+ GFX_SPECIAL_ARG_MENU,
+ GFX_SPECIAL_ARG_TOONS,
+ GFX_SPECIAL_ARG_SCORESOLD,
+ GFX_SPECIAL_ARG_SCORESNEW,
+ GFX_SPECIAL_ARG_NO_TITLE,
+ GFX_SPECIAL_ARG_FADING,
+ GFX_SPECIAL_ARG_QUIT,
+
+ NUM_SPECIAL_GFX_ARGS
+};
// these additional definitions are currently only used for draw offsets
-#define GFX_SPECIAL_ARG_INFO_MAIN 0
-#define GFX_SPECIAL_ARG_INFO_TITLE 1
-#define GFX_SPECIAL_ARG_INFO_ELEMENTS 2
-#define GFX_SPECIAL_ARG_INFO_MUSIC 3
-#define GFX_SPECIAL_ARG_INFO_CREDITS 4
-#define GFX_SPECIAL_ARG_INFO_PROGRAM 5
-#define GFX_SPECIAL_ARG_INFO_VERSION 6
-#define GFX_SPECIAL_ARG_INFO_LEVELSET 7
-
-#define NUM_SPECIAL_GFX_INFO_ARGS 8
+enum
+{
+ GFX_SPECIAL_ARG_INFO_MAIN = 0,
+ GFX_SPECIAL_ARG_INFO_TITLE,
+ GFX_SPECIAL_ARG_INFO_ELEMENTS,
+ GFX_SPECIAL_ARG_INFO_MUSIC,
+ GFX_SPECIAL_ARG_INFO_CREDITS,
+ GFX_SPECIAL_ARG_INFO_PROGRAM,
+ GFX_SPECIAL_ARG_INFO_VERSION,
+ GFX_SPECIAL_ARG_INFO_LEVELSET,
+
+ NUM_SPECIAL_GFX_INFO_ARGS
+};
// these additional definitions are currently only used for draw offsets
// (must match SETUP_MODE_* values as defined in src/screens.c)
// (should also match corresponding entries in src/conf_gfx.c)
-#define GFX_SPECIAL_ARG_SETUP_MAIN 0
-#define GFX_SPECIAL_ARG_SETUP_GAME 1
-#define GFX_SPECIAL_ARG_SETUP_EDITOR 2
-#define GFX_SPECIAL_ARG_SETUP_GRAPHICS 3
-#define GFX_SPECIAL_ARG_SETUP_SOUND 4
-#define GFX_SPECIAL_ARG_SETUP_ARTWORK 5
-#define GFX_SPECIAL_ARG_SETUP_INPUT 6
-#define GFX_SPECIAL_ARG_SETUP_TOUCH 7
-#define GFX_SPECIAL_ARG_SETUP_SHORTCUTS 8
-#define GFX_SPECIAL_ARG_SETUP_SHORTCUTS_1 9
-#define GFX_SPECIAL_ARG_SETUP_SHORTCUTS_2 10
-#define GFX_SPECIAL_ARG_SETUP_SHORTCUTS_3 11
-#define GFX_SPECIAL_ARG_SETUP_SHORTCUTS_4 12
-#define GFX_SPECIAL_ARG_SETUP_SHORTCUTS_5 13
-#define GFX_SPECIAL_ARG_SETUP_CHOOSE_ARTWORK 14
-#define GFX_SPECIAL_ARG_SETUP_CHOOSE_OTHER 15
-
-#define NUM_SPECIAL_GFX_SETUP_ARGS 16
-
+enum
+{
+ GFX_SPECIAL_ARG_SETUP_MAIN = 0,
+ GFX_SPECIAL_ARG_SETUP_GAME,
+ GFX_SPECIAL_ARG_SETUP_EDITOR,
+ GFX_SPECIAL_ARG_SETUP_GRAPHICS,
+ GFX_SPECIAL_ARG_SETUP_SOUND,
+ GFX_SPECIAL_ARG_SETUP_ARTWORK,
+ GFX_SPECIAL_ARG_SETUP_INPUT,
+ GFX_SPECIAL_ARG_SETUP_TOUCH,
+ GFX_SPECIAL_ARG_SETUP_SHORTCUTS,
+ GFX_SPECIAL_ARG_SETUP_SHORTCUTS_1,
+ GFX_SPECIAL_ARG_SETUP_SHORTCUTS_2,
+ GFX_SPECIAL_ARG_SETUP_SHORTCUTS_3,
+ GFX_SPECIAL_ARG_SETUP_SHORTCUTS_4,
+ GFX_SPECIAL_ARG_SETUP_SHORTCUTS_5,
+ GFX_SPECIAL_ARG_SETUP_CHOOSE_ARTWORK,
+ GFX_SPECIAL_ARG_SETUP_CHOOSE_OTHER,
+
+ NUM_SPECIAL_GFX_SETUP_ARGS
+};
// values for image configuration suffixes
-#define GFX_ARG_X 0
-#define GFX_ARG_Y 1
-#define GFX_ARG_XPOS 2
-#define GFX_ARG_YPOS 3
-#define GFX_ARG_WIDTH 4
-#define GFX_ARG_HEIGHT 5
-#define GFX_ARG_VERTICAL 6
-#define GFX_ARG_OFFSET 7
-#define GFX_ARG_XOFFSET 8
-#define GFX_ARG_YOFFSET 9
-#define GFX_ARG_2ND_MOVEMENT_TILE 10
-#define GFX_ARG_2ND_VERTICAL 11
-#define GFX_ARG_2ND_OFFSET 12
-#define GFX_ARG_2ND_XOFFSET 13
-#define GFX_ARG_2ND_YOFFSET 14
-#define GFX_ARG_2ND_SWAP_TILES 15
-#define GFX_ARG_FRAMES 16
-#define GFX_ARG_FRAMES_PER_LINE 17
-#define GFX_ARG_START_FRAME 18
-#define GFX_ARG_DELAY 19
-#define GFX_ARG_ANIM_MODE 20
-#define GFX_ARG_GLOBAL_SYNC 21
-#define GFX_ARG_CRUMBLED_LIKE 22
-#define GFX_ARG_DIGGABLE_LIKE 23
-#define GFX_ARG_BORDER_SIZE 24
-#define GFX_ARG_STEP_OFFSET 25
-#define GFX_ARG_STEP_XOFFSET 26
-#define GFX_ARG_STEP_YOFFSET 27
-#define GFX_ARG_STEP_DELAY 28
-#define GFX_ARG_DIRECTION 29
-#define GFX_ARG_POSITION 30
-#define GFX_ARG_DRAW_XOFFSET 31
-#define GFX_ARG_DRAW_YOFFSET 32
-#define GFX_ARG_DRAW_MASKED 33
-#define GFX_ARG_DRAW_ORDER 34
-#define GFX_ARG_INIT_DELAY_FIXED 35
-#define GFX_ARG_INIT_DELAY_RANDOM 36
-#define GFX_ARG_ANIM_DELAY_FIXED 37
-#define GFX_ARG_ANIM_DELAY_RANDOM 38
-#define GFX_ARG_POST_DELAY_FIXED 39
-#define GFX_ARG_POST_DELAY_RANDOM 40
-#define GFX_ARG_INIT_EVENT 41
-#define GFX_ARG_INIT_EVENT_ACTION 42
-#define GFX_ARG_ANIM_EVENT 43
-#define GFX_ARG_ANIM_EVENT_ACTION 44
-#define GFX_ARG_NAME 45
-#define GFX_ARG_SCALE_UP_FACTOR 46
-#define GFX_ARG_TILE_SIZE 47
-#define GFX_ARG_CLONE_FROM 48
-#define GFX_ARG_FADE_MODE 49
-#define GFX_ARG_FADE_DELAY 50
-#define GFX_ARG_POST_DELAY 51
-#define GFX_ARG_AUTO_DELAY 52
-#define GFX_ARG_ALIGN 53
-#define GFX_ARG_VALIGN 54
-#define GFX_ARG_SORT_PRIORITY 55
-#define GFX_ARG_CLASS 56
-#define GFX_ARG_STYLE 57
-#define GFX_ARG_ACTIVE_XOFFSET 58
-#define GFX_ARG_ACTIVE_YOFFSET 59
-#define GFX_ARG_PRESSED_XOFFSET 60
-#define GFX_ARG_PRESSED_YOFFSET 61
-
-#define NUM_GFX_ARGS 62
-
+enum
+{
+ GFX_ARG_X = 0,
+ GFX_ARG_Y,
+ GFX_ARG_XPOS,
+ GFX_ARG_YPOS,
+ GFX_ARG_WIDTH,
+ GFX_ARG_HEIGHT,
+ GFX_ARG_VERTICAL,
+ GFX_ARG_OFFSET,
+ GFX_ARG_XOFFSET,
+ GFX_ARG_YOFFSET,
+ GFX_ARG_2ND_MOVEMENT_TILE,
+ GFX_ARG_2ND_VERTICAL,
+ GFX_ARG_2ND_OFFSET,
+ GFX_ARG_2ND_XOFFSET,
+ GFX_ARG_2ND_YOFFSET,
+ GFX_ARG_2ND_SWAP_TILES,
+ GFX_ARG_FRAMES,
+ GFX_ARG_FRAMES_PER_LINE,
+ GFX_ARG_START_FRAME,
+ GFX_ARG_DELAY,
+ GFX_ARG_ANIM_MODE,
+ GFX_ARG_GLOBAL_SYNC,
+ GFX_ARG_CRUMBLED_LIKE,
+ GFX_ARG_DIGGABLE_LIKE,
+ GFX_ARG_BORDER_SIZE,
+ GFX_ARG_STEP_OFFSET,
+ GFX_ARG_STEP_XOFFSET,
+ GFX_ARG_STEP_YOFFSET,
+ GFX_ARG_STEP_DELAY,
+ GFX_ARG_DIRECTION,
+ GFX_ARG_POSITION,
+ GFX_ARG_DRAW_XOFFSET,
+ GFX_ARG_DRAW_YOFFSET,
+ GFX_ARG_DRAW_MASKED,
+ GFX_ARG_DRAW_ORDER,
+ GFX_ARG_INIT_DELAY_FIXED,
+ GFX_ARG_INIT_DELAY_RANDOM,
+ GFX_ARG_ANIM_DELAY_FIXED,
+ GFX_ARG_ANIM_DELAY_RANDOM,
+ GFX_ARG_POST_DELAY_FIXED,
+ GFX_ARG_POST_DELAY_RANDOM,
+ GFX_ARG_INIT_EVENT,
+ GFX_ARG_INIT_EVENT_ACTION,
+ GFX_ARG_ANIM_EVENT,
+ GFX_ARG_ANIM_EVENT_ACTION,
+ GFX_ARG_NAME,
+ GFX_ARG_SCALE_UP_FACTOR,
+ GFX_ARG_TILE_SIZE,
+ GFX_ARG_CLONE_FROM,
+ GFX_ARG_FADE_MODE,
+ GFX_ARG_FADE_DELAY,
+ GFX_ARG_POST_DELAY,
+ GFX_ARG_AUTO_DELAY,
+ GFX_ARG_ALIGN,
+ GFX_ARG_VALIGN,
+ GFX_ARG_SORT_PRIORITY,
+ GFX_ARG_CLASS,
+ GFX_ARG_STYLE,
+ GFX_ARG_ACTIVE_XOFFSET,
+ GFX_ARG_ACTIVE_YOFFSET,
+ GFX_ARG_PRESSED_XOFFSET,
+ GFX_ARG_PRESSED_YOFFSET,
+
+ NUM_GFX_ARGS
+};
// values for sound configuration suffixes
-#define SND_ARG_MODE_LOOP 0
-#define SND_ARG_VOLUME 1
-#define SND_ARG_PRIORITY 2
-
-#define NUM_SND_ARGS 3
+enum
+{
+ SND_ARG_MODE_LOOP = 0,
+ SND_ARG_VOLUME,
+ SND_ARG_PRIORITY,
+ NUM_SND_ARGS
+};
// values for music configuration suffixes
-#define MUS_ARG_MODE_LOOP 0
-
-#define NUM_MUS_ARGS 1
+enum
+{
+ MUS_ARG_MODE_LOOP = 0,
+ NUM_MUS_ARGS
+};
// values for font configuration (definitions must match those from main.c)
-#define FONT_INITIAL_1 0
-#define FONT_INITIAL_2 1
-#define FONT_INITIAL_3 2
-#define FONT_INITIAL_4 3
-#define FONT_TITLE_1 4
-#define FONT_TITLE_2 5
-#define FONT_MENU_1_ACTIVE 6
-#define FONT_MENU_2_ACTIVE 7
-#define FONT_MENU_1 8
-#define FONT_MENU_2 9
-#define FONT_TEXT_1_ACTIVE 10
-#define FONT_TEXT_2_ACTIVE 11
-#define FONT_TEXT_3_ACTIVE 12
-#define FONT_TEXT_4_ACTIVE 13
-#define FONT_TEXT_1 14
-#define FONT_TEXT_2 15
-#define FONT_TEXT_3 16
-#define FONT_TEXT_4 17
-#define FONT_ENVELOPE_1 18
-#define FONT_ENVELOPE_2 19
-#define FONT_ENVELOPE_3 20
-#define FONT_ENVELOPE_4 21
-#define FONT_REQUEST 22
-#define FONT_INPUT_1_ACTIVE 23
-#define FONT_INPUT_2_ACTIVE 24
-#define FONT_INPUT_1 25
-#define FONT_INPUT_2 26
-#define FONT_OPTION_OFF_NARROW 27
-#define FONT_OPTION_OFF 28
-#define FONT_OPTION_ON_NARROW 29
-#define FONT_OPTION_ON 30
-#define FONT_VALUE_1 31
-#define FONT_VALUE_2 32
-#define FONT_VALUE_OLD_NARROW 33
-#define FONT_VALUE_OLD 34
-#define FONT_VALUE_NARROW 35
-#define FONT_LEVEL_NUMBER_ACTIVE 36
-#define FONT_LEVEL_NUMBER 37
-#define FONT_TAPE_RECORDER 38
-#define FONT_GAME_INFO 39
-#define FONT_INFO_ELEMENTS 40
-#define FONT_INFO_LEVELSET 41
-#define FONT_MAIN_NETWORK_PLAYERS 42
-
-#define NUM_FONTS 43
+enum
+{
+ FONT_INITIAL_1 = MAIN_FONT_INITIAL_1,
+ FONT_INITIAL_2 = MAIN_FONT_INITIAL_2,
+ FONT_INITIAL_3 = MAIN_FONT_INITIAL_3,
+ FONT_INITIAL_4 = MAIN_FONT_INITIAL_4,
+ FONT_TITLE_1,
+ FONT_TITLE_2,
+ FONT_MENU_1_ACTIVE,
+ FONT_MENU_2_ACTIVE,
+ FONT_MENU_1,
+ FONT_MENU_2,
+ FONT_TEXT_1_ACTIVE,
+ FONT_TEXT_2_ACTIVE,
+ FONT_TEXT_3_ACTIVE,
+ FONT_TEXT_4_ACTIVE,
+ FONT_TEXT_1,
+ FONT_TEXT_2,
+ FONT_TEXT_3,
+ FONT_TEXT_4,
+ FONT_ENVELOPE_1,
+ FONT_ENVELOPE_2,
+ FONT_ENVELOPE_3,
+ FONT_ENVELOPE_4,
+ FONT_REQUEST,
+ FONT_INPUT_1_ACTIVE,
+ FONT_INPUT_2_ACTIVE,
+ FONT_INPUT_1,
+ FONT_INPUT_2,
+ FONT_OPTION_OFF_NARROW,
+ FONT_OPTION_OFF,
+ FONT_OPTION_ON_NARROW,
+ FONT_OPTION_ON,
+ FONT_VALUE_1,
+ FONT_VALUE_2,
+ FONT_VALUE_OLD_NARROW,
+ FONT_VALUE_OLD,
+ FONT_VALUE_NARROW,
+ FONT_LEVEL_NUMBER_ACTIVE,
+ FONT_LEVEL_NUMBER,
+ FONT_TAPE_RECORDER,
+ FONT_GAME_INFO,
+ FONT_INFO_ELEMENTS,
+ FONT_INFO_LEVELSET,
+ FONT_MAIN_NETWORK_PLAYERS,
+
+ NUM_FONTS
+};
+
#define NUM_INITIAL_FONTS 4
// values for toon animation configuration
#define IMG_GLOBAL_BORDER_LAST IMG_GLOBAL_BORDER_PLAYING
// values for game_status (must match special image configuration suffixes)
-#define GAME_MODE_DEFAULT 0
-#define GAME_MODE_LOADING 1
-#define GAME_MODE_TITLE_INITIAL 2
-#define GAME_MODE_TITLE_INITIAL_1 3
-#define GAME_MODE_TITLE_INITIAL_2 4
-#define GAME_MODE_TITLE_INITIAL_3 5
-#define GAME_MODE_TITLE_INITIAL_4 6
-#define GAME_MODE_TITLE_INITIAL_5 7
-#define GAME_MODE_TITLE 8
-#define GAME_MODE_TITLE_1 9
-#define GAME_MODE_TITLE_2 10
-#define GAME_MODE_TITLE_3 11
-#define GAME_MODE_TITLE_4 12
-#define GAME_MODE_TITLE_5 13
-#define GAME_MODE_MAIN 14
-#define GAME_MODE_LEVELS 15
-#define GAME_MODE_LEVELNR 16
-#define GAME_MODE_SCORES 17
-#define GAME_MODE_EDITOR 18
-#define GAME_MODE_INFO 19
-#define GAME_MODE_SETUP 20
-#define GAME_MODE_PLAYING 21
-#define GAME_MODE_PSEUDO_DOOR 22
-#define GAME_MODE_PSEUDO_TAPE 23
-#define GAME_MODE_PSEUDO_PANEL 24
-#define GAME_MODE_PSEUDO_PREVIEW 25
-#define GAME_MODE_PSEUDO_CRUMBLED 26
-#define GAME_MODE_PSEUDO_MAINONLY 27
-#define GAME_MODE_PSEUDO_TYPENAME 28
-#define GAME_MODE_PSEUDO_SUBMENU 29
-#define GAME_MODE_PSEUDO_MENU 30
-#define GAME_MODE_PSEUDO_TOONS 31
-#define GAME_MODE_PSEUDO_SCORESOLD 32
-#define GAME_MODE_PSEUDO_SCORESNEW 33
-#define GAME_MODE_PSEUDO_NO_TITLE 34
-#define GAME_MODE_PSEUDO_FADING 35
-#define GAME_MODE_QUIT 36
-
-#define NUM_GAME_MODES 37
+#define GAME_MODE_DEFAULT GFX_SPECIAL_ARG_DEFAULT
+#define GAME_MODE_LOADING GFX_SPECIAL_ARG_LOADING
+#define GAME_MODE_TITLE_INITIAL GFX_SPECIAL_ARG_TITLE_INITIAL
+#define GAME_MODE_TITLE_INITIAL_1 GFX_SPECIAL_ARG_TITLE_INITIAL_1
+#define GAME_MODE_TITLE_INITIAL_2 GFX_SPECIAL_ARG_TITLE_INITIAL_2
+#define GAME_MODE_TITLE_INITIAL_3 GFX_SPECIAL_ARG_TITLE_INITIAL_3
+#define GAME_MODE_TITLE_INITIAL_4 GFX_SPECIAL_ARG_TITLE_INITIAL_4
+#define GAME_MODE_TITLE_INITIAL_5 GFX_SPECIAL_ARG_TITLE_INITIAL_5
+#define GAME_MODE_TITLE GFX_SPECIAL_ARG_TITLE
+#define GAME_MODE_TITLE_1 GFX_SPECIAL_ARG_TITLE_1
+#define GAME_MODE_TITLE_2 GFX_SPECIAL_ARG_TITLE_2
+#define GAME_MODE_TITLE_3 GFX_SPECIAL_ARG_TITLE_3
+#define GAME_MODE_TITLE_4 GFX_SPECIAL_ARG_TITLE_4
+#define GAME_MODE_TITLE_5 GFX_SPECIAL_ARG_TITLE_5
+#define GAME_MODE_MAIN GFX_SPECIAL_ARG_MAIN
+#define GAME_MODE_LEVELS GFX_SPECIAL_ARG_LEVELS
+#define GAME_MODE_LEVELNR GFX_SPECIAL_ARG_LEVELNR
+#define GAME_MODE_SCORES GFX_SPECIAL_ARG_SCORES
+#define GAME_MODE_EDITOR GFX_SPECIAL_ARG_EDITOR
+#define GAME_MODE_INFO GFX_SPECIAL_ARG_INFO
+#define GAME_MODE_SETUP GFX_SPECIAL_ARG_SETUP
+#define GAME_MODE_PLAYING GFX_SPECIAL_ARG_PLAYING
+#define GAME_MODE_PSEUDO_DOOR GFX_SPECIAL_ARG_DOOR
+#define GAME_MODE_PSEUDO_TAPE GFX_SPECIAL_ARG_TAPE
+#define GAME_MODE_PSEUDO_PANEL GFX_SPECIAL_ARG_PANEL
+#define GAME_MODE_PSEUDO_PREVIEW GFX_SPECIAL_ARG_PREVIEW
+#define GAME_MODE_PSEUDO_CRUMBLED GFX_SPECIAL_ARG_CRUMBLED
+#define GAME_MODE_PSEUDO_MAINONLY GFX_SPECIAL_ARG_MAINONLY
+#define GAME_MODE_PSEUDO_TYPENAME GFX_SPECIAL_ARG_TYPENAME
+#define GAME_MODE_PSEUDO_SUBMENU GFX_SPECIAL_ARG_SUBMENU
+#define GAME_MODE_PSEUDO_MENU GFX_SPECIAL_ARG_MENU
+#define GAME_MODE_PSEUDO_TOONS GFX_SPECIAL_ARG_TOONS
+#define GAME_MODE_PSEUDO_SCORESOLD GFX_SPECIAL_ARG_SCORESOLD
+#define GAME_MODE_PSEUDO_SCORESNEW GFX_SPECIAL_ARG_SCORESNEW
+#define GAME_MODE_PSEUDO_NO_TITLE GFX_SPECIAL_ARG_NO_TITLE
+#define GAME_MODE_PSEUDO_FADING GFX_SPECIAL_ARG_FADING
+#define GAME_MODE_QUIT GFX_SPECIAL_ARG_QUIT
+
+#define NUM_GAME_MODES NUM_SPECIAL_GFX_ARGS
// special definitions currently only used for custom artwork configuration
#define MUSIC_PREFIX_BACKGROUND 0