From bbe75d04a9fc20a80073e7f2c8d95ee1341a143f Mon Sep 17 00:00:00 2001 From: Holger Schemel Date: Sat, 22 Feb 2003 18:45:28 +0100 Subject: [PATCH 1/1] rnd-20030222-1-src --- src/conf_e2g.c | 16 - src/conf_gfx.c | 36 +- src/conf_gfx.h | 1572 ++++++++++++++++++++++++------------------------ src/conftime.h | 2 +- src/game.c | 300 ++------- src/main.h | 2 - src/tools.c | 171 ++---- 7 files changed, 880 insertions(+), 1219 deletions(-) diff --git a/src/conf_e2g.c b/src/conf_e2g.c index c659b598..367a1ece 100644 --- a/src/conf_e2g.c +++ b/src/conf_e2g.c @@ -200,22 +200,6 @@ element_to_graphic[] = EL_SP_MURPHY, -1, -1, IMG_SP_MURPHY }, - { - EL_SP_MURPHY, -1, MV_BIT_LEFT, - IMG_SP_MURPHY_LEFT - }, - { - EL_SP_MURPHY, -1, MV_BIT_RIGHT, - IMG_SP_MURPHY_RIGHT - }, - { - EL_SP_MURPHY, -1, MV_BIT_UP, - IMG_SP_MURPHY_UP - }, - { - EL_SP_MURPHY, -1, MV_BIT_DOWN, - IMG_SP_MURPHY_DOWN - }, { EL_SP_MURPHY, ACTION_MOVING, MV_BIT_LEFT, IMG_SP_MURPHY_MOVING_LEFT diff --git a/src/conf_gfx.c b/src/conf_gfx.c index f71a2b2c..d73f922a 100644 --- a/src/conf_gfx.c +++ b/src/conf_gfx.c @@ -247,22 +247,6 @@ struct ConfigInfo image_config[] = { "sp_murphy.xpos", "3" }, { "sp_murphy.ypos", "0" }, { "sp_murphy.frames", "1" }, - { "sp_murphy.left", "RocksSP.pcx" }, - { "sp_murphy.left.xpos", "8" }, - { "sp_murphy.left.ypos", "0" }, - { "sp_murphy.left.frames", "1" }, - { "sp_murphy.right", "RocksSP.pcx" }, - { "sp_murphy.right.xpos", "11" }, - { "sp_murphy.right.ypos", "0" }, - { "sp_murphy.right.frames", "1" }, - { "sp_murphy.up", "RocksSP.pcx" }, - { "sp_murphy.up.xpos", "14" }, - { "sp_murphy.up.ypos", "0" }, - { "sp_murphy.up.frames", "1" }, - { "sp_murphy.down", "RocksSP.pcx" }, - { "sp_murphy.down.xpos", "15" }, - { "sp_murphy.down.ypos", "0" }, - { "sp_murphy.down.frames", "1" }, { "sp_murphy.moving.left", "RocksSP.pcx" }, { "sp_murphy.moving.left.xpos", "8" }, { "sp_murphy.moving.left.ypos", "0" }, @@ -2224,22 +2208,22 @@ struct ConfigInfo image_config[] = { "player1.pushing.down.xpos", "0" }, { "player1.pushing.down.ypos", "0" }, { "player1.pushing.down.frames", "4" }, - { "player1.pushing.down.delay", "2" }, + { "player1.pushing.down.delay", "4" }, { "player1.pushing.up", "RocksHeroes.pcx" }, { "player1.pushing.up.xpos", "4" }, { "player1.pushing.up.ypos", "0" }, { "player1.pushing.up.frames", "4" }, - { "player1.pushing.up.delay", "2" }, + { "player1.pushing.up.delay", "4" }, { "player1.pushing.left", "RocksHeroes.pcx" }, { "player1.pushing.left.xpos", "4" }, { "player1.pushing.left.ypos", "2" }, { "player1.pushing.left.frames", "4" }, - { "player1.pushing.left.delay", "2" }, + { "player1.pushing.left.delay", "4" }, { "player1.pushing.right", "RocksHeroes.pcx" }, { "player1.pushing.right.xpos", "0" }, { "player1.pushing.right.ypos", "2" }, { "player1.pushing.right.frames", "4" }, - { "player1.pushing.right.delay", "2" }, + { "player1.pushing.right.delay", "4" }, { "player1.snapping.down", "RocksHeroes.pcx" }, { "player1.snapping.down.xpos", "0" }, { "player1.snapping.down.ypos", "0" }, @@ -2316,18 +2300,22 @@ struct ConfigInfo image_config[] = { "player2.pushing.down.xpos", "0" }, { "player2.pushing.down.ypos", "3" }, { "player2.pushing.down.frames", "4" }, + { "player2.pushing.down.delay", "4" }, { "player2.pushing.up", "RocksHeroes.pcx" }, { "player2.pushing.up.xpos", "4" }, { "player2.pushing.up.ypos", "3" }, { "player2.pushing.up.frames", "4" }, + { "player2.pushing.up.delay", "4" }, { "player2.pushing.left", "RocksHeroes.pcx" }, { "player2.pushing.left.xpos", "4" }, { "player2.pushing.left.ypos", "5" }, { "player2.pushing.left.frames", "4" }, + { "player2.pushing.left.delay", "4" }, { "player2.pushing.right", "RocksHeroes.pcx" }, { "player2.pushing.right.xpos", "0" }, { "player2.pushing.right.ypos", "5" }, { "player2.pushing.right.frames", "4" }, + { "player2.pushing.right.delay", "4" }, { "player2.snapping.down", "RocksHeroes.pcx" }, { "player2.snapping.down.xpos", "0" }, { "player2.snapping.down.ypos", "3" }, @@ -2404,18 +2392,22 @@ struct ConfigInfo image_config[] = { "player3.pushing.down.xpos", "0" }, { "player3.pushing.down.ypos", "6" }, { "player3.pushing.down.frames", "4" }, + { "player3.pushing.down.delay", "4" }, { "player3.pushing.up", "RocksHeroes.pcx" }, { "player3.pushing.up.xpos", "4" }, { "player3.pushing.up.ypos", "6" }, { "player3.pushing.up.frames", "4" }, + { "player3.pushing.up.delay", "4" }, { "player3.pushing.left", "RocksHeroes.pcx" }, { "player3.pushing.left.xpos", "4" }, { "player3.pushing.left.ypos", "8" }, { "player3.pushing.left.frames", "4" }, + { "player3.pushing.left.delay", "4" }, { "player3.pushing.right", "RocksHeroes.pcx" }, { "player3.pushing.right.xpos", "0" }, { "player3.pushing.right.ypos", "8" }, { "player3.pushing.right.frames", "4" }, + { "player3.pushing.right.delay", "4" }, { "player3.snapping.down", "RocksHeroes.pcx" }, { "player3.snapping.down.xpos", "0" }, { "player3.snapping.down.ypos", "6" }, @@ -2492,18 +2484,22 @@ struct ConfigInfo image_config[] = { "player4.pushing.down.xpos", "0" }, { "player4.pushing.down.ypos", "9" }, { "player4.pushing.down.frames", "4" }, + { "player4.pushing.down.delay", "4" }, { "player4.pushing.up", "RocksHeroes.pcx" }, { "player4.pushing.up.xpos", "4" }, { "player4.pushing.up.ypos", "9" }, { "player4.pushing.up.frames", "4" }, + { "player4.pushing.up.delay", "4" }, { "player4.pushing.left", "RocksHeroes.pcx" }, { "player4.pushing.left.xpos", "4" }, { "player4.pushing.left.ypos", "11" }, { "player4.pushing.left.frames", "4" }, + { "player4.pushing.left.delay", "4" }, { "player4.pushing.right", "RocksHeroes.pcx" }, { "player4.pushing.right.xpos", "0" }, { "player4.pushing.right.ypos", "11" }, { "player4.pushing.right.frames", "4" }, + { "player4.pushing.right.delay", "4" }, { "player4.snapping.down", "RocksHeroes.pcx" }, { "player4.snapping.down.xpos", "0" }, { "player4.snapping.down.ypos", "9" }, diff --git a/src/conf_gfx.h b/src/conf_gfx.h index 65c3c846..73418226 100644 --- a/src/conf_gfx.h +++ b/src/conf_gfx.h @@ -55,794 +55,790 @@ #define IMG_SP_ZONK_MOVING_RIGHT 34 #define IMG_SP_BASE 35 #define IMG_SP_MURPHY 36 -#define IMG_SP_MURPHY_LEFT 37 -#define IMG_SP_MURPHY_RIGHT 38 -#define IMG_SP_MURPHY_UP 39 -#define IMG_SP_MURPHY_DOWN 40 -#define IMG_SP_MURPHY_MOVING_LEFT 41 -#define IMG_SP_MURPHY_MOVING_RIGHT 42 -#define IMG_SP_MURPHY_DIGGING_LEFT 43 -#define IMG_SP_MURPHY_DIGGING_RIGHT 44 -#define IMG_SP_MURPHY_PUSHING_LEFT 45 -#define IMG_SP_MURPHY_PUSHING_RIGHT 46 -#define IMG_SP_MURPHY_SNAPPING_LEFT 47 -#define IMG_SP_MURPHY_SNAPPING_RIGHT 48 -#define IMG_SP_MURPHY_SNAPPING_UP 49 -#define IMG_SP_MURPHY_SNAPPING_DOWN 50 -#define IMG_SP_MURPHY_CLONE 51 -#define IMG_SP_INFOTRON 52 -#define IMG_SP_INFOTRON_EDITOR 53 -#define IMG_SP_INFOTRON_FALLING 54 -#define IMG_SP_CHIP_SINGLE 55 -#define IMG_SP_CHIP_LEFT 56 -#define IMG_SP_CHIP_RIGHT 57 -#define IMG_SP_CHIP_UPPER 58 -#define IMG_SP_CHIP_LOWER 59 -#define IMG_SP_HARD_GRAY 60 -#define IMG_SP_HARD_GREEN 61 -#define IMG_SP_HARD_BLUE 62 -#define IMG_SP_HARD_RED 63 -#define IMG_SP_HARD_YELLOW 64 -#define IMG_SP_EXIT_CLOSED 65 -#define IMG_SP_EXIT_OPEN 66 -#define IMG_SP_DISK_ORANGE 67 -#define IMG_SP_DISK_ORANGE_FALLING 68 -#define IMG_SP_DISK_ORANGE_PUSHING 69 -#define IMG_SP_DISK_YELLOW 70 -#define IMG_SP_DISK_YELLOW_PUSHING 71 -#define IMG_SP_DISK_RED 72 -#define IMG_SP_DISK_RED_COLLECTING 73 -#define IMG_SP_PORT1_RIGHT 74 -#define IMG_SP_PORT1_DOWN 75 -#define IMG_SP_PORT1_LEFT 76 -#define IMG_SP_PORT1_UP 77 -#define IMG_SP_PORT2_RIGHT 78 -#define IMG_SP_PORT2_DOWN 79 -#define IMG_SP_PORT2_LEFT 80 -#define IMG_SP_PORT2_UP 81 -#define IMG_SP_PORT_X 82 -#define IMG_SP_PORT_Y 83 -#define IMG_SP_PORT_XY 84 -#define IMG_SP_SNIKSNAK 85 -#define IMG_SP_SNIKSNAK_LEFT 86 -#define IMG_SP_SNIKSNAK_RIGHT 87 -#define IMG_SP_SNIKSNAK_UP 88 -#define IMG_SP_SNIKSNAK_DOWN 89 -#define IMG_SP_ELECTRON 90 -#define IMG_SP_ELECTRON_EDITOR 91 -#define IMG_SP_TERMINAL 92 -#define IMG_SP_TERMINAL_EDITOR 93 -#define IMG_SP_TERMINAL_ACTIVE 94 -#define IMG_SP_BUGGY_BASE 95 -#define IMG_SP_BUGGY_BASE_ACTIVATING 96 -#define IMG_SP_BUGGY_BASE_ACTIVE 97 -#define IMG_SP_HARD_BASE1 98 -#define IMG_SP_HARD_BASE2 99 -#define IMG_SP_HARD_BASE3 100 -#define IMG_SP_HARD_BASE4 101 -#define IMG_SP_HARD_BASE5 102 -#define IMG_SP_HARD_BASE6 103 -#define IMG_SP_EXPLOSION 104 -#define IMG_SP_EXPLOSION_INFOTRON 105 -#define IMG_SOKOBAN_OBJECT 106 -#define IMG_SOKOBAN_OBJECT_EDITOR 107 -#define IMG_SOKOBAN_FIELD_EMPTY 108 -#define IMG_SOKOBAN_FIELD_FULL 109 -#define IMG_EMPTY_SPACE 110 -#define IMG_SAND 111 -#define IMG_SAND_CRUMBLED 112 -#define IMG_WALL 113 -#define IMG_WALL_CRUMBLED 114 -#define IMG_STEELWALL 115 -#define IMG_ROCK 116 -#define IMG_ROCK_FALLING 117 -#define IMG_ROCK_MOVING_LEFT 118 -#define IMG_ROCK_MOVING_RIGHT 119 -#define IMG_EMERALD 120 -#define IMG_EMERALD_MOVING 121 -#define IMG_EMERALD_FALLING 122 -#define IMG_DIAMOND 123 -#define IMG_DIAMOND_MOVING 124 -#define IMG_DIAMOND_FALLING 125 -#define IMG_BOMB 126 -#define IMG_NUT 127 -#define IMG_NUT_FALLING 128 -#define IMG_NUT_MOVING_LEFT 129 -#define IMG_NUT_MOVING_RIGHT 130 -#define IMG_NUT_CRACKING 131 -#define IMG_DYNAMITE 132 -#define IMG_DYNAMITE_EDITOR 133 -#define IMG_DYNAMITE_ACTIVE 134 -#define IMG_DYNAMITE_ACTIVE_EDITOR 135 -#define IMG_WALL_EMERALD 136 -#define IMG_WALL_DIAMOND 137 -#define IMG_BUG_RIGHT 138 -#define IMG_BUG_UP 139 -#define IMG_BUG_LEFT 140 -#define IMG_BUG_DOWN 141 -#define IMG_SPACESHIP_RIGHT 142 -#define IMG_SPACESHIP_UP 143 -#define IMG_SPACESHIP_LEFT 144 -#define IMG_SPACESHIP_DOWN 145 -#define IMG_YAMYAM 146 -#define IMG_YAMYAM_MOVING 147 -#define IMG_ROBOT 148 -#define IMG_ROBOT_MOVING 149 -#define IMG_ROBOT_WHEEL 150 -#define IMG_ROBOT_WHEEL_ACTIVE 151 -#define IMG_MAGIC_WALL 152 -#define IMG_MAGIC_WALL_ACTIVE 153 -#define IMG_MAGIC_WALL_FILLING 154 -#define IMG_MAGIC_WALL_FULL 155 -#define IMG_MAGIC_WALL_EMPTYING 156 -#define IMG_MAGIC_WALL_DEAD 157 -#define IMG_QUICKSAND_EMPTY 158 -#define IMG_QUICKSAND_FILLING 159 -#define IMG_QUICKSAND_FULL 160 -#define IMG_QUICKSAND_FULL_EDITOR 161 -#define IMG_QUICKSAND_EMPTYING 162 -#define IMG_ACIDPOOL_TOPLEFT 163 -#define IMG_ACIDPOOL_TOPRIGHT 164 -#define IMG_ACIDPOOL_BOTTOMLEFT 165 -#define IMG_ACIDPOOL_BOTTOM 166 -#define IMG_ACIDPOOL_BOTTOMRIGHT 167 -#define IMG_ACID 168 -#define IMG_ACID_SPLASH_LEFT 169 -#define IMG_ACID_SPLASH_RIGHT 170 -#define IMG_AMOEBA_DROP 171 -#define IMG_AMOEBA_CREATING 172 -#define IMG_AMOEBA_SHRINKING 173 -#define IMG_AMOEBA_WET 174 -#define IMG_AMOEBA_WET_EDITOR 175 -#define IMG_AMOEBA_DRIPPING 176 -#define IMG_AMOEBA_DRY 177 -#define IMG_AMOEBA_FULL 178 -#define IMG_AMOEBA_FULL_EDITOR 179 -#define IMG_AMOEBA_DEAD 180 -#define IMG_AMOEBA_DEAD_EDITOR 181 -#define IMG_EM_KEY1 182 -#define IMG_EM_KEY2 183 -#define IMG_EM_KEY3 184 -#define IMG_EM_KEY4 185 -#define IMG_EM_GATE1 186 -#define IMG_EM_GATE2 187 -#define IMG_EM_GATE3 188 -#define IMG_EM_GATE4 189 -#define IMG_EM_GATE1_GRAY 190 -#define IMG_EM_GATE1_GRAY_EDITOR 191 -#define IMG_EM_GATE2_GRAY 192 -#define IMG_EM_GATE2_GRAY_EDITOR 193 -#define IMG_EM_GATE3_GRAY 194 -#define IMG_EM_GATE3_GRAY_EDITOR 195 -#define IMG_EM_GATE4_GRAY 196 -#define IMG_EM_GATE4_GRAY_EDITOR 197 -#define IMG_EXIT_CLOSED 198 -#define IMG_EXIT_OPENING 199 -#define IMG_EXIT_OPEN 200 -#define IMG_BALLOON 201 -#define IMG_BALLOON_MOVING 202 -#define IMG_BALLOON_SEND_LEFT 203 -#define IMG_BALLOON_SEND_RIGHT 204 -#define IMG_BALLOON_SEND_UP 205 -#define IMG_BALLOON_SEND_DOWN 206 -#define IMG_BALLOON_SEND_ANY_DIRECTION 207 -#define IMG_SPRING 208 -#define IMG_SPRING_MOVING 209 -#define IMG_EMC_STEELWALL1 210 -#define IMG_EMC_STEELWALL2 211 -#define IMG_EMC_STEELWALL3 212 -#define IMG_EMC_STEELWALL4 213 -#define IMG_EMC_WALL_PILLAR_UPPER 214 -#define IMG_EMC_WALL_PILLAR_MIDDLE 215 -#define IMG_EMC_WALL_PILLAR_LOWER 216 -#define IMG_EMC_WALL4 217 -#define IMG_EMC_WALL5 218 -#define IMG_EMC_WALL6 219 -#define IMG_EMC_WALL7 220 -#define IMG_EMC_WALL8 221 -#define IMG_INVISIBLE_STEELWALL 222 -#define IMG_INVISIBLE_STEELWALL_EDITOR 223 -#define IMG_INVISIBLE_STEELWALL_ACTIVE 224 -#define IMG_INVISIBLE_WALL 225 -#define IMG_INVISIBLE_WALL_EDITOR 226 -#define IMG_INVISIBLE_WALL_ACTIVE 227 -#define IMG_INVISIBLE_SAND 228 -#define IMG_INVISIBLE_SAND_EDITOR 229 -#define IMG_INVISIBLE_SAND_ACTIVE 230 -#define IMG_CONVEYOR_BELT1_MIDDLE 231 -#define IMG_CONVEYOR_BELT1_MIDDLE_ACTIVE 232 -#define IMG_CONVEYOR_BELT1_LEFT 233 -#define IMG_CONVEYOR_BELT1_LEFT_ACTIVE 234 -#define IMG_CONVEYOR_BELT1_RIGHT 235 -#define IMG_CONVEYOR_BELT1_RIGHT_ACTIVE 236 -#define IMG_CONVEYOR_BELT1_SWITCH_LEFT 237 -#define IMG_CONVEYOR_BELT1_SWITCH_MIDDLE 238 -#define IMG_CONVEYOR_BELT1_SWITCH_RIGHT 239 -#define IMG_CONVEYOR_BELT2_MIDDLE 240 -#define IMG_CONVEYOR_BELT2_MIDDLE_ACTIVE 241 -#define IMG_CONVEYOR_BELT2_LEFT 242 -#define IMG_CONVEYOR_BELT2_LEFT_ACTIVE 243 -#define IMG_CONVEYOR_BELT2_RIGHT 244 -#define IMG_CONVEYOR_BELT2_RIGHT_ACTIVE 245 -#define IMG_CONVEYOR_BELT2_SWITCH_LEFT 246 -#define IMG_CONVEYOR_BELT2_SWITCH_MIDDLE 247 -#define IMG_CONVEYOR_BELT2_SWITCH_RIGHT 248 -#define IMG_CONVEYOR_BELT3_MIDDLE 249 -#define IMG_CONVEYOR_BELT3_MIDDLE_ACTIVE 250 -#define IMG_CONVEYOR_BELT3_LEFT 251 -#define IMG_CONVEYOR_BELT3_LEFT_ACTIVE 252 -#define IMG_CONVEYOR_BELT3_RIGHT 253 -#define IMG_CONVEYOR_BELT3_RIGHT_ACTIVE 254 -#define IMG_CONVEYOR_BELT3_SWITCH_LEFT 255 -#define IMG_CONVEYOR_BELT3_SWITCH_MIDDLE 256 -#define IMG_CONVEYOR_BELT3_SWITCH_RIGHT 257 -#define IMG_CONVEYOR_BELT4_MIDDLE 258 -#define IMG_CONVEYOR_BELT4_MIDDLE_ACTIVE 259 -#define IMG_CONVEYOR_BELT4_LEFT 260 -#define IMG_CONVEYOR_BELT4_LEFT_ACTIVE 261 -#define IMG_CONVEYOR_BELT4_RIGHT 262 -#define IMG_CONVEYOR_BELT4_RIGHT_ACTIVE 263 -#define IMG_CONVEYOR_BELT4_SWITCH_LEFT 264 -#define IMG_CONVEYOR_BELT4_SWITCH_MIDDLE 265 -#define IMG_CONVEYOR_BELT4_SWITCH_RIGHT 266 -#define IMG_SWITCHGATE_SWITCH_UP 267 -#define IMG_SWITCHGATE_SWITCH_DOWN 268 -#define IMG_LIGHT_SWITCH 269 -#define IMG_LIGHT_SWITCH_ACTIVE 270 -#define IMG_TIMEGATE_SWITCH 271 -#define IMG_TIMEGATE_SWITCH_ACTIVE 272 -#define IMG_ENVELOPE 273 -#define IMG_SIGN_EXCLAMATION 274 -#define IMG_SIGN_STOP 275 -#define IMG_LANDMINE 276 -#define IMG_STEELWALL_SLANTED 277 -#define IMG_EXTRA_TIME 278 -#define IMG_SHIELD_NORMAL 279 -#define IMG_SHIELD_NORMAL_ACTIVE 280 -#define IMG_SHIELD_DEADLY 281 -#define IMG_SHIELD_DEADLY_ACTIVE 282 -#define IMG_SWITCHGATE_CLOSED 283 -#define IMG_SWITCHGATE_OPENING 284 -#define IMG_SWITCHGATE_OPEN 285 -#define IMG_SWITCHGATE_CLOSING 286 -#define IMG_TIMEGATE_CLOSED 287 -#define IMG_TIMEGATE_OPENING 288 -#define IMG_TIMEGATE_OPEN 289 -#define IMG_TIMEGATE_CLOSING 290 -#define IMG_PEARL 291 -#define IMG_PEARL_BREAKING 292 -#define IMG_CRYSTAL 293 -#define IMG_WALL_PEARL 294 -#define IMG_WALL_CRYSTAL 295 -#define IMG_TUBE_RIGHT_DOWN 296 -#define IMG_TUBE_HORIZONTAL_DOWN 297 -#define IMG_TUBE_LEFT_DOWN 298 -#define IMG_TUBE_HORIZONTAL 299 -#define IMG_TUBE_VERTICAL_RIGHT 300 -#define IMG_TUBE_ALL 301 -#define IMG_TUBE_VERTICAL_LEFT 302 -#define IMG_TUBE_VERTICAL 303 -#define IMG_TUBE_RIGHT_UP 304 -#define IMG_TUBE_HORIZONTAL_UP 305 -#define IMG_TUBE_LEFT_UP 306 -#define IMG_TRAP 307 -#define IMG_TRAP_ACTIVE 308 -#define IMG_DX_SUPABOMB 309 -#define IMG_KEY1 310 -#define IMG_KEY1_EDITOR 311 -#define IMG_KEY2 312 -#define IMG_KEY2_EDITOR 313 -#define IMG_KEY3 314 -#define IMG_KEY3_EDITOR 315 -#define IMG_KEY4 316 -#define IMG_KEY4_EDITOR 317 -#define IMG_GATE1 318 -#define IMG_GATE2 319 -#define IMG_GATE3 320 -#define IMG_GATE4 321 -#define IMG_GATE1_GRAY 322 -#define IMG_GATE1_GRAY_EDITOR 323 -#define IMG_GATE2_GRAY 324 -#define IMG_GATE2_GRAY_EDITOR 325 -#define IMG_GATE3_GRAY 326 -#define IMG_GATE3_GRAY_EDITOR 327 -#define IMG_GATE4_GRAY 328 -#define IMG_GATE4_GRAY_EDITOR 329 -#define IMG_GAMEOFLIFE 330 -#define IMG_BIOMAZE 331 -#define IMG_PACMAN_RIGHT 332 -#define IMG_PACMAN_UP 333 -#define IMG_PACMAN_LEFT 334 -#define IMG_PACMAN_DOWN 335 -#define IMG_LAMP 336 -#define IMG_LAMP_EDITOR 337 -#define IMG_LAMP_ACTIVE 338 -#define IMG_TIME_ORB_FULL 339 -#define IMG_TIME_ORB_EMPTY 340 -#define IMG_EMERALD_YELLOW 341 -#define IMG_EMERALD_YELLOW_MOVING 342 -#define IMG_EMERALD_YELLOW_FALLING 343 -#define IMG_EMERALD_RED 344 -#define IMG_EMERALD_RED_MOVING 345 -#define IMG_EMERALD_RED_FALLING 346 -#define IMG_EMERALD_PURPLE 347 -#define IMG_EMERALD_PURPLE_MOVING 348 -#define IMG_EMERALD_PURPLE_FALLING 349 -#define IMG_WALL_EMERALD_YELLOW 350 -#define IMG_WALL_EMERALD_RED 351 -#define IMG_WALL_EMERALD_PURPLE 352 -#define IMG_WALL_BD_DIAMOND 353 -#define IMG_WALL_GROWING 354 -#define IMG_WALL_GROWING_XY 355 -#define IMG_WALL_GROWING_XY_EDITOR 356 -#define IMG_WALL_GROWING_X 357 -#define IMG_WALL_GROWING_X_EDITOR 358 -#define IMG_WALL_GROWING_Y 359 -#define IMG_WALL_GROWING_Y_EDITOR 360 -#define IMG_WALL_GROWING_ACTIVE_LEFT 361 -#define IMG_WALL_GROWING_ACTIVE_RIGHT 362 -#define IMG_WALL_GROWING_ACTIVE_UP 363 -#define IMG_WALL_GROWING_ACTIVE_DOWN 364 -#define IMG_BLACK_ORB 365 -#define IMG_SPEED_PILL 366 -#define IMG_DARK_YAMYAM 367 -#define IMG_DYNABOMB_ACTIVE 368 -#define IMG_DYNABOMB_PLAYER1_ACTIVE 369 -#define IMG_DYNABOMB_PLAYER2_ACTIVE 370 -#define IMG_DYNABOMB_PLAYER3_ACTIVE 371 -#define IMG_DYNABOMB_PLAYER4_ACTIVE 372 -#define IMG_DYNABOMB_NR 373 -#define IMG_DYNABOMB_SZ 374 -#define IMG_DYNABOMB_XL 375 -#define IMG_PIG 376 -#define IMG_PIG_DOWN 377 -#define IMG_PIG_UP 378 -#define IMG_PIG_LEFT 379 -#define IMG_PIG_RIGHT 380 -#define IMG_PIG_MOVING_DOWN 381 -#define IMG_PIG_MOVING_UP 382 -#define IMG_PIG_MOVING_LEFT 383 -#define IMG_PIG_MOVING_RIGHT 384 -#define IMG_PIG_EATING_DOWN 385 -#define IMG_PIG_EATING_UP 386 -#define IMG_PIG_EATING_LEFT 387 -#define IMG_PIG_EATING_RIGHT 388 -#define IMG_DRAGON 389 -#define IMG_DRAGON_DOWN 390 -#define IMG_DRAGON_UP 391 -#define IMG_DRAGON_LEFT 392 -#define IMG_DRAGON_RIGHT 393 -#define IMG_DRAGON_MOVING_DOWN 394 -#define IMG_DRAGON_MOVING_UP 395 -#define IMG_DRAGON_MOVING_LEFT 396 -#define IMG_DRAGON_MOVING_RIGHT 397 -#define IMG_DRAGON_ATTACKING_DOWN 398 -#define IMG_DRAGON_ATTACKING_UP 399 -#define IMG_DRAGON_ATTACKING_LEFT 400 -#define IMG_DRAGON_ATTACKING_RIGHT 401 -#define IMG_MOLE 402 -#define IMG_MOLE_DOWN 403 -#define IMG_MOLE_UP 404 -#define IMG_MOLE_LEFT 405 -#define IMG_MOLE_RIGHT 406 -#define IMG_MOLE_MOVING_DOWN 407 -#define IMG_MOLE_MOVING_UP 408 -#define IMG_MOLE_MOVING_LEFT 409 -#define IMG_MOLE_MOVING_RIGHT 410 -#define IMG_MOLE_DIGGING_DOWN 411 -#define IMG_MOLE_DIGGING_UP 412 -#define IMG_MOLE_DIGGING_LEFT 413 -#define IMG_MOLE_DIGGING_RIGHT 414 -#define IMG_PENGUIN 415 -#define IMG_PENGUIN_EDITOR 416 -#define IMG_PENGUIN_DOWN 417 -#define IMG_PENGUIN_UP 418 -#define IMG_PENGUIN_LEFT 419 -#define IMG_PENGUIN_RIGHT 420 -#define IMG_PENGUIN_MOVING_DOWN 421 -#define IMG_PENGUIN_MOVING_UP 422 -#define IMG_PENGUIN_MOVING_LEFT 423 -#define IMG_PENGUIN_MOVING_RIGHT 424 -#define IMG_SATELLITE 425 -#define IMG_SATELLITE_MOVING 426 -#define IMG_FLAMES1_LEFT 427 -#define IMG_FLAMES2_LEFT 428 -#define IMG_FLAMES3_LEFT 429 -#define IMG_FLAMES1_RIGHT 430 -#define IMG_FLAMES2_RIGHT 431 -#define IMG_FLAMES3_RIGHT 432 -#define IMG_FLAMES1_UP 433 -#define IMG_FLAMES2_UP 434 -#define IMG_FLAMES3_UP 435 -#define IMG_FLAMES1_DOWN 436 -#define IMG_FLAMES2_DOWN 437 -#define IMG_FLAMES3_DOWN 438 -#define IMG_STONEBLOCK 439 -#define IMG_PLAYER1 440 -#define IMG_PLAYER1_EDITOR 441 -#define IMG_PLAYER1_DOWN 442 -#define IMG_PLAYER1_UP 443 -#define IMG_PLAYER1_LEFT 444 -#define IMG_PLAYER1_RIGHT 445 -#define IMG_PLAYER1_MOVING_DOWN 446 -#define IMG_PLAYER1_MOVING_UP 447 -#define IMG_PLAYER1_MOVING_LEFT 448 -#define IMG_PLAYER1_MOVING_RIGHT 449 -#define IMG_PLAYER1_DIGGING_DOWN 450 -#define IMG_PLAYER1_DIGGING_UP 451 -#define IMG_PLAYER1_DIGGING_LEFT 452 -#define IMG_PLAYER1_DIGGING_RIGHT 453 -#define IMG_PLAYER1_PUSHING_DOWN 454 -#define IMG_PLAYER1_PUSHING_UP 455 -#define IMG_PLAYER1_PUSHING_LEFT 456 -#define IMG_PLAYER1_PUSHING_RIGHT 457 -#define IMG_PLAYER1_SNAPPING_DOWN 458 -#define IMG_PLAYER1_SNAPPING_UP 459 -#define IMG_PLAYER1_SNAPPING_LEFT 460 -#define IMG_PLAYER1_SNAPPING_RIGHT 461 -#define IMG_PLAYER2 462 -#define IMG_PLAYER2_EDITOR 463 -#define IMG_PLAYER2_DOWN 464 -#define IMG_PLAYER2_UP 465 -#define IMG_PLAYER2_LEFT 466 -#define IMG_PLAYER2_RIGHT 467 -#define IMG_PLAYER2_MOVING_DOWN 468 -#define IMG_PLAYER2_MOVING_UP 469 -#define IMG_PLAYER2_MOVING_LEFT 470 -#define IMG_PLAYER2_MOVING_RIGHT 471 -#define IMG_PLAYER2_DIGGING_DOWN 472 -#define IMG_PLAYER2_DIGGING_UP 473 -#define IMG_PLAYER2_DIGGING_LEFT 474 -#define IMG_PLAYER2_DIGGING_RIGHT 475 -#define IMG_PLAYER2_PUSHING_DOWN 476 -#define IMG_PLAYER2_PUSHING_UP 477 -#define IMG_PLAYER2_PUSHING_LEFT 478 -#define IMG_PLAYER2_PUSHING_RIGHT 479 -#define IMG_PLAYER2_SNAPPING_DOWN 480 -#define IMG_PLAYER2_SNAPPING_UP 481 -#define IMG_PLAYER2_SNAPPING_LEFT 482 -#define IMG_PLAYER2_SNAPPING_RIGHT 483 -#define IMG_PLAYER3 484 -#define IMG_PLAYER3_EDITOR 485 -#define IMG_PLAYER3_DOWN 486 -#define IMG_PLAYER3_UP 487 -#define IMG_PLAYER3_LEFT 488 -#define IMG_PLAYER3_RIGHT 489 -#define IMG_PLAYER3_MOVING_DOWN 490 -#define IMG_PLAYER3_MOVING_UP 491 -#define IMG_PLAYER3_MOVING_LEFT 492 -#define IMG_PLAYER3_MOVING_RIGHT 493 -#define IMG_PLAYER3_DIGGING_DOWN 494 -#define IMG_PLAYER3_DIGGING_UP 495 -#define IMG_PLAYER3_DIGGING_LEFT 496 -#define IMG_PLAYER3_DIGGING_RIGHT 497 -#define IMG_PLAYER3_PUSHING_DOWN 498 -#define IMG_PLAYER3_PUSHING_UP 499 -#define IMG_PLAYER3_PUSHING_LEFT 500 -#define IMG_PLAYER3_PUSHING_RIGHT 501 -#define IMG_PLAYER3_SNAPPING_DOWN 502 -#define IMG_PLAYER3_SNAPPING_UP 503 -#define IMG_PLAYER3_SNAPPING_LEFT 504 -#define IMG_PLAYER3_SNAPPING_RIGHT 505 -#define IMG_PLAYER4 506 -#define IMG_PLAYER4_EDITOR 507 -#define IMG_PLAYER4_DOWN 508 -#define IMG_PLAYER4_UP 509 -#define IMG_PLAYER4_LEFT 510 -#define IMG_PLAYER4_RIGHT 511 -#define IMG_PLAYER4_MOVING_DOWN 512 -#define IMG_PLAYER4_MOVING_UP 513 -#define IMG_PLAYER4_MOVING_LEFT 514 -#define IMG_PLAYER4_MOVING_RIGHT 515 -#define IMG_PLAYER4_DIGGING_DOWN 516 -#define IMG_PLAYER4_DIGGING_UP 517 -#define IMG_PLAYER4_DIGGING_LEFT 518 -#define IMG_PLAYER4_DIGGING_RIGHT 519 -#define IMG_PLAYER4_PUSHING_DOWN 520 -#define IMG_PLAYER4_PUSHING_UP 521 -#define IMG_PLAYER4_PUSHING_LEFT 522 -#define IMG_PLAYER4_PUSHING_RIGHT 523 -#define IMG_PLAYER4_SNAPPING_DOWN 524 -#define IMG_PLAYER4_SNAPPING_UP 525 -#define IMG_PLAYER4_SNAPPING_LEFT 526 -#define IMG_PLAYER4_SNAPPING_RIGHT 527 -#define IMG_EXPLOSION 528 -#define IMG_TWINKLE_BLUE 529 -#define IMG_TWINKLE_WHITE 530 -#define IMG_STEELWALL_TOPLEFT 531 -#define IMG_STEELWALL_TOPRIGHT 532 -#define IMG_STEELWALL_BOTTOMLEFT 533 -#define IMG_STEELWALL_BOTTOMRIGHT 534 -#define IMG_STEELWALL_HORIZONTAL 535 -#define IMG_STEELWALL_VERTICAL 536 -#define IMG_STEELWALL_TOPLEFT_EDITOR 537 -#define IMG_STEELWALL_TOPRIGHT_EDITOR 538 -#define IMG_STEELWALL_BOTTOMLEFT_EDITOR 539 -#define IMG_STEELWALL_BOTTOMRIGHT_EDITOR 540 -#define IMG_STEELWALL_HORIZONTAL_EDITOR 541 -#define IMG_STEELWALL_VERTICAL_EDITOR 542 -#define IMG_INVISIBLE_STEELWALL_TOPLEFT 543 -#define IMG_INVISIBLE_STEELWALL_TOPRIGHT 544 -#define IMG_INVISIBLE_STEELWALL_BOTTOMLEFT 545 -#define IMG_INVISIBLE_STEELWALL_BOTTOMRIGHT 546 -#define IMG_INVISIBLE_STEELWALL_HORIZONTAL 547 -#define IMG_INVISIBLE_STEELWALL_VERTICAL 548 -#define IMG_INVISIBLE_STEELWALL_TOPLEFT_EDITOR 549 -#define IMG_INVISIBLE_STEELWALL_TOPRIGHT_EDITOR 550 -#define IMG_INVISIBLE_STEELWALL_BOTTOMLEFT_EDITOR 551 -#define IMG_INVISIBLE_STEELWALL_BOTTOMRIGHT_EDITOR 552 -#define IMG_INVISIBLE_STEELWALL_HORIZONTAL_EDITOR 553 -#define IMG_INVISIBLE_STEELWALL_VERTICAL_EDITOR 554 -#define IMG_ARROW_LEFT 555 -#define IMG_ARROW_RIGHT 556 -#define IMG_ARROW_UP 557 -#define IMG_ARROW_DOWN 558 -#define IMG_CHAR_SPACE 559 -#define IMG_CHAR_EXCLAM 560 -#define IMG_CHAR_QUOTEDBL 561 -#define IMG_CHAR_NUMBERSIGN 562 -#define IMG_CHAR_DOLLAR 563 -#define IMG_CHAR_PROCENT 564 -#define IMG_CHAR_AMPERSAND 565 -#define IMG_CHAR_APOSTROPHE 566 -#define IMG_CHAR_PARENLEFT 567 -#define IMG_CHAR_PARENRIGHT 568 -#define IMG_CHAR_ASTERISK 569 -#define IMG_CHAR_PLUS 570 -#define IMG_CHAR_COMMA 571 -#define IMG_CHAR_MINUS 572 -#define IMG_CHAR_PERIOD 573 -#define IMG_CHAR_SLASH 574 -#define IMG_CHAR_0 575 -#define IMG_CHAR_1 576 -#define IMG_CHAR_2 577 -#define IMG_CHAR_3 578 -#define IMG_CHAR_4 579 -#define IMG_CHAR_5 580 -#define IMG_CHAR_6 581 -#define IMG_CHAR_7 582 -#define IMG_CHAR_8 583 -#define IMG_CHAR_9 584 -#define IMG_CHAR_COLON 585 -#define IMG_CHAR_SEMICOLON 586 -#define IMG_CHAR_LESS 587 -#define IMG_CHAR_EQUAL 588 -#define IMG_CHAR_GREATER 589 -#define IMG_CHAR_QUESTION 590 -#define IMG_CHAR_AT 591 -#define IMG_CHAR_A 592 -#define IMG_CHAR_B 593 -#define IMG_CHAR_C 594 -#define IMG_CHAR_D 595 -#define IMG_CHAR_E 596 -#define IMG_CHAR_F 597 -#define IMG_CHAR_G 598 -#define IMG_CHAR_H 599 -#define IMG_CHAR_I 600 -#define IMG_CHAR_J 601 -#define IMG_CHAR_K 602 -#define IMG_CHAR_L 603 -#define IMG_CHAR_M 604 -#define IMG_CHAR_N 605 -#define IMG_CHAR_O 606 -#define IMG_CHAR_P 607 -#define IMG_CHAR_Q 608 -#define IMG_CHAR_R 609 -#define IMG_CHAR_S 610 -#define IMG_CHAR_T 611 -#define IMG_CHAR_U 612 -#define IMG_CHAR_V 613 -#define IMG_CHAR_W 614 -#define IMG_CHAR_X 615 -#define IMG_CHAR_Y 616 -#define IMG_CHAR_Z 617 -#define IMG_CHAR_AE 618 -#define IMG_CHAR_OE 619 -#define IMG_CHAR_UE 620 -#define IMG_CHAR_COPYRIGHT 621 -#define IMG_CHAR_UNDERSCORE 622 -#define IMG_CHAR_EMPTY 623 -#define IMG_CHAR_DEGREE 624 -#define IMG_CHAR_TM 625 -#define IMG_CHAR_CURSOR 626 -#define IMG_CUSTOM_1 627 -#define IMG_CUSTOM_2 628 -#define IMG_CUSTOM_3 629 -#define IMG_CUSTOM_4 630 -#define IMG_CUSTOM_5 631 -#define IMG_CUSTOM_6 632 -#define IMG_CUSTOM_7 633 -#define IMG_CUSTOM_8 634 -#define IMG_CUSTOM_9 635 -#define IMG_CUSTOM_10 636 -#define IMG_CUSTOM_11 637 -#define IMG_CUSTOM_12 638 -#define IMG_CUSTOM_13 639 -#define IMG_CUSTOM_14 640 -#define IMG_CUSTOM_15 641 -#define IMG_CUSTOM_16 642 -#define IMG_CUSTOM_17 643 -#define IMG_CUSTOM_18 644 -#define IMG_CUSTOM_19 645 -#define IMG_CUSTOM_20 646 -#define IMG_CUSTOM_21 647 -#define IMG_CUSTOM_22 648 -#define IMG_CUSTOM_23 649 -#define IMG_CUSTOM_24 650 -#define IMG_CUSTOM_25 651 -#define IMG_CUSTOM_26 652 -#define IMG_CUSTOM_27 653 -#define IMG_CUSTOM_28 654 -#define IMG_CUSTOM_29 655 -#define IMG_CUSTOM_30 656 -#define IMG_CUSTOM_31 657 -#define IMG_CUSTOM_32 658 -#define IMG_CUSTOM_33 659 -#define IMG_CUSTOM_34 660 -#define IMG_CUSTOM_35 661 -#define IMG_CUSTOM_36 662 -#define IMG_CUSTOM_37 663 -#define IMG_CUSTOM_38 664 -#define IMG_CUSTOM_39 665 -#define IMG_CUSTOM_40 666 -#define IMG_CUSTOM_41 667 -#define IMG_CUSTOM_42 668 -#define IMG_CUSTOM_43 669 -#define IMG_CUSTOM_44 670 -#define IMG_CUSTOM_45 671 -#define IMG_CUSTOM_46 672 -#define IMG_CUSTOM_47 673 -#define IMG_CUSTOM_48 674 -#define IMG_CUSTOM_49 675 -#define IMG_CUSTOM_50 676 -#define IMG_CUSTOM_51 677 -#define IMG_CUSTOM_52 678 -#define IMG_CUSTOM_53 679 -#define IMG_CUSTOM_54 680 -#define IMG_CUSTOM_55 681 -#define IMG_CUSTOM_56 682 -#define IMG_CUSTOM_57 683 -#define IMG_CUSTOM_58 684 -#define IMG_CUSTOM_59 685 -#define IMG_CUSTOM_60 686 -#define IMG_CUSTOM_61 687 -#define IMG_CUSTOM_62 688 -#define IMG_CUSTOM_63 689 -#define IMG_CUSTOM_64 690 -#define IMG_CUSTOM_65 691 -#define IMG_CUSTOM_66 692 -#define IMG_CUSTOM_67 693 -#define IMG_CUSTOM_68 694 -#define IMG_CUSTOM_69 695 -#define IMG_CUSTOM_70 696 -#define IMG_CUSTOM_71 697 -#define IMG_CUSTOM_72 698 -#define IMG_CUSTOM_73 699 -#define IMG_CUSTOM_74 700 -#define IMG_CUSTOM_75 701 -#define IMG_CUSTOM_76 702 -#define IMG_CUSTOM_77 703 -#define IMG_CUSTOM_78 704 -#define IMG_CUSTOM_79 705 -#define IMG_CUSTOM_80 706 -#define IMG_CUSTOM_81 707 -#define IMG_CUSTOM_82 708 -#define IMG_CUSTOM_83 709 -#define IMG_CUSTOM_84 710 -#define IMG_CUSTOM_85 711 -#define IMG_CUSTOM_86 712 -#define IMG_CUSTOM_87 713 -#define IMG_CUSTOM_88 714 -#define IMG_CUSTOM_89 715 -#define IMG_CUSTOM_90 716 -#define IMG_CUSTOM_91 717 -#define IMG_CUSTOM_92 718 -#define IMG_CUSTOM_93 719 -#define IMG_CUSTOM_94 720 -#define IMG_CUSTOM_95 721 -#define IMG_CUSTOM_96 722 -#define IMG_CUSTOM_97 723 -#define IMG_CUSTOM_98 724 -#define IMG_CUSTOM_99 725 -#define IMG_CUSTOM_100 726 -#define IMG_CUSTOM_101 727 -#define IMG_CUSTOM_102 728 -#define IMG_CUSTOM_103 729 -#define IMG_CUSTOM_104 730 -#define IMG_CUSTOM_105 731 -#define IMG_CUSTOM_106 732 -#define IMG_CUSTOM_107 733 -#define IMG_CUSTOM_108 734 -#define IMG_CUSTOM_109 735 -#define IMG_CUSTOM_110 736 -#define IMG_CUSTOM_111 737 -#define IMG_CUSTOM_112 738 -#define IMG_CUSTOM_113 739 -#define IMG_CUSTOM_114 740 -#define IMG_CUSTOM_115 741 -#define IMG_CUSTOM_116 742 -#define IMG_CUSTOM_117 743 -#define IMG_CUSTOM_118 744 -#define IMG_CUSTOM_119 745 -#define IMG_CUSTOM_120 746 -#define IMG_CUSTOM_121 747 -#define IMG_CUSTOM_122 748 -#define IMG_CUSTOM_123 749 -#define IMG_CUSTOM_124 750 -#define IMG_CUSTOM_125 751 -#define IMG_CUSTOM_126 752 -#define IMG_CUSTOM_127 753 -#define IMG_CUSTOM_128 754 -#define IMG_TOON_1 755 -#define IMG_TOON_2 756 -#define IMG_TOON_3 757 -#define IMG_TOON_4 758 -#define IMG_TOON_5 759 -#define IMG_TOON_6 760 -#define IMG_TOON_7 761 -#define IMG_TOON_8 762 -#define IMG_TOON_9 763 -#define IMG_TOON_10 764 -#define IMG_TOON_11 765 -#define IMG_TOON_12 766 -#define IMG_TOON_13 767 -#define IMG_TOON_14 768 -#define IMG_TOON_15 769 -#define IMG_TOON_16 770 -#define IMG_TOON_17 771 -#define IMG_TOON_18 772 -#define IMG_TOON_19 773 -#define IMG_TOON_20 774 -#define IMG_MENU_CALIBRATE_RED 775 -#define IMG_MENU_CALIBRATE_BLUE 776 -#define IMG_MENU_CALIBRATE_YELLOW 777 -#define IMG_MENU_BUTTON 778 -#define IMG_MENU_BUTTON_ACTIVE 779 -#define IMG_MENU_BUTTON_LEFT 780 -#define IMG_MENU_BUTTON_RIGHT 781 -#define IMG_MENU_BUTTON_UP 782 -#define IMG_MENU_BUTTON_DOWN 783 -#define IMG_MENU_BUTTON_LEFT_ACTIVE 784 -#define IMG_MENU_BUTTON_RIGHT_ACTIVE 785 -#define IMG_MENU_BUTTON_UP_ACTIVE 786 -#define IMG_MENU_BUTTON_DOWN_ACTIVE 787 -#define IMG_MENU_SCROLLBAR 788 -#define IMG_MENU_SCROLLBAR_ACTIVE 789 -#define IMG_FONT_INITIAL_1 790 -#define IMG_FONT_INITIAL_2 791 -#define IMG_FONT_INITIAL_3 792 -#define IMG_FONT_INITIAL_4 793 -#define IMG_FONT_BIG_1 794 -#define IMG_FONT_BIG_2 795 -#define IMG_FONT_BIG_3 796 -#define IMG_FONT_BIG_4 797 -#define IMG_FONT_MEDIUM_1 798 -#define IMG_FONT_MEDIUM_2 799 -#define IMG_FONT_MEDIUM_3 800 -#define IMG_FONT_MEDIUM_4 801 -#define IMG_FONT_SMALL_1 802 -#define IMG_FONT_SMALL_2 803 -#define IMG_FONT_SMALL_3 804 -#define IMG_FONT_SMALL_4 805 -#define IMG_FONT_TAPE 806 -#define IMG_FONT_GAME 807 -#define IMG_FONT_NARROW 808 -#define IMG_GLOBAL_BORDER 809 -#define IMG_GLOBAL_DOOR 810 -#define IMG_BACKGROUND 811 -#define IMG_BACKGROUND_MAIN 812 -#define IMG_BACKGROUND_LEVELS 813 -#define IMG_BACKGROUND_SCORES 814 -#define IMG_BACKGROUND_EDITOR 815 -#define IMG_BACKGROUND_INFO 816 -#define IMG_BACKGROUND_SETUP 817 -#define IMG_BACKGROUND_DOOR 818 -#define IMG_INFO_FONT_EM_1 819 -#define IMG_INFO_FONT_EM_2 820 -#define IMG_INFO_FONT_EM_3 821 -#define IMG_INFO_FONT_EM_4 822 -#define IMG_INFO_FONT_EM_5 823 +#define IMG_SP_MURPHY_MOVING_LEFT 37 +#define IMG_SP_MURPHY_MOVING_RIGHT 38 +#define IMG_SP_MURPHY_DIGGING_LEFT 39 +#define IMG_SP_MURPHY_DIGGING_RIGHT 40 +#define IMG_SP_MURPHY_PUSHING_LEFT 41 +#define IMG_SP_MURPHY_PUSHING_RIGHT 42 +#define IMG_SP_MURPHY_SNAPPING_LEFT 43 +#define IMG_SP_MURPHY_SNAPPING_RIGHT 44 +#define IMG_SP_MURPHY_SNAPPING_UP 45 +#define IMG_SP_MURPHY_SNAPPING_DOWN 46 +#define IMG_SP_MURPHY_CLONE 47 +#define IMG_SP_INFOTRON 48 +#define IMG_SP_INFOTRON_EDITOR 49 +#define IMG_SP_INFOTRON_FALLING 50 +#define IMG_SP_CHIP_SINGLE 51 +#define IMG_SP_CHIP_LEFT 52 +#define IMG_SP_CHIP_RIGHT 53 +#define IMG_SP_CHIP_UPPER 54 +#define IMG_SP_CHIP_LOWER 55 +#define IMG_SP_HARD_GRAY 56 +#define IMG_SP_HARD_GREEN 57 +#define IMG_SP_HARD_BLUE 58 +#define IMG_SP_HARD_RED 59 +#define IMG_SP_HARD_YELLOW 60 +#define IMG_SP_EXIT_CLOSED 61 +#define IMG_SP_EXIT_OPEN 62 +#define IMG_SP_DISK_ORANGE 63 +#define IMG_SP_DISK_ORANGE_FALLING 64 +#define IMG_SP_DISK_ORANGE_PUSHING 65 +#define IMG_SP_DISK_YELLOW 66 +#define IMG_SP_DISK_YELLOW_PUSHING 67 +#define IMG_SP_DISK_RED 68 +#define IMG_SP_DISK_RED_COLLECTING 69 +#define IMG_SP_PORT1_RIGHT 70 +#define IMG_SP_PORT1_DOWN 71 +#define IMG_SP_PORT1_LEFT 72 +#define IMG_SP_PORT1_UP 73 +#define IMG_SP_PORT2_RIGHT 74 +#define IMG_SP_PORT2_DOWN 75 +#define IMG_SP_PORT2_LEFT 76 +#define IMG_SP_PORT2_UP 77 +#define IMG_SP_PORT_X 78 +#define IMG_SP_PORT_Y 79 +#define IMG_SP_PORT_XY 80 +#define IMG_SP_SNIKSNAK 81 +#define IMG_SP_SNIKSNAK_LEFT 82 +#define IMG_SP_SNIKSNAK_RIGHT 83 +#define IMG_SP_SNIKSNAK_UP 84 +#define IMG_SP_SNIKSNAK_DOWN 85 +#define IMG_SP_ELECTRON 86 +#define IMG_SP_ELECTRON_EDITOR 87 +#define IMG_SP_TERMINAL 88 +#define IMG_SP_TERMINAL_EDITOR 89 +#define IMG_SP_TERMINAL_ACTIVE 90 +#define IMG_SP_BUGGY_BASE 91 +#define IMG_SP_BUGGY_BASE_ACTIVATING 92 +#define IMG_SP_BUGGY_BASE_ACTIVE 93 +#define IMG_SP_HARD_BASE1 94 +#define IMG_SP_HARD_BASE2 95 +#define IMG_SP_HARD_BASE3 96 +#define IMG_SP_HARD_BASE4 97 +#define IMG_SP_HARD_BASE5 98 +#define IMG_SP_HARD_BASE6 99 +#define IMG_SP_EXPLOSION 100 +#define IMG_SP_EXPLOSION_INFOTRON 101 +#define IMG_SOKOBAN_OBJECT 102 +#define IMG_SOKOBAN_OBJECT_EDITOR 103 +#define IMG_SOKOBAN_FIELD_EMPTY 104 +#define IMG_SOKOBAN_FIELD_FULL 105 +#define IMG_EMPTY_SPACE 106 +#define IMG_SAND 107 +#define IMG_SAND_CRUMBLED 108 +#define IMG_WALL 109 +#define IMG_WALL_CRUMBLED 110 +#define IMG_STEELWALL 111 +#define IMG_ROCK 112 +#define IMG_ROCK_FALLING 113 +#define IMG_ROCK_MOVING_LEFT 114 +#define IMG_ROCK_MOVING_RIGHT 115 +#define IMG_EMERALD 116 +#define IMG_EMERALD_MOVING 117 +#define IMG_EMERALD_FALLING 118 +#define IMG_DIAMOND 119 +#define IMG_DIAMOND_MOVING 120 +#define IMG_DIAMOND_FALLING 121 +#define IMG_BOMB 122 +#define IMG_NUT 123 +#define IMG_NUT_FALLING 124 +#define IMG_NUT_MOVING_LEFT 125 +#define IMG_NUT_MOVING_RIGHT 126 +#define IMG_NUT_CRACKING 127 +#define IMG_DYNAMITE 128 +#define IMG_DYNAMITE_EDITOR 129 +#define IMG_DYNAMITE_ACTIVE 130 +#define IMG_DYNAMITE_ACTIVE_EDITOR 131 +#define IMG_WALL_EMERALD 132 +#define IMG_WALL_DIAMOND 133 +#define IMG_BUG_RIGHT 134 +#define IMG_BUG_UP 135 +#define IMG_BUG_LEFT 136 +#define IMG_BUG_DOWN 137 +#define IMG_SPACESHIP_RIGHT 138 +#define IMG_SPACESHIP_UP 139 +#define IMG_SPACESHIP_LEFT 140 +#define IMG_SPACESHIP_DOWN 141 +#define IMG_YAMYAM 142 +#define IMG_YAMYAM_MOVING 143 +#define IMG_ROBOT 144 +#define IMG_ROBOT_MOVING 145 +#define IMG_ROBOT_WHEEL 146 +#define IMG_ROBOT_WHEEL_ACTIVE 147 +#define IMG_MAGIC_WALL 148 +#define IMG_MAGIC_WALL_ACTIVE 149 +#define IMG_MAGIC_WALL_FILLING 150 +#define IMG_MAGIC_WALL_FULL 151 +#define IMG_MAGIC_WALL_EMPTYING 152 +#define IMG_MAGIC_WALL_DEAD 153 +#define IMG_QUICKSAND_EMPTY 154 +#define IMG_QUICKSAND_FILLING 155 +#define IMG_QUICKSAND_FULL 156 +#define IMG_QUICKSAND_FULL_EDITOR 157 +#define IMG_QUICKSAND_EMPTYING 158 +#define IMG_ACIDPOOL_TOPLEFT 159 +#define IMG_ACIDPOOL_TOPRIGHT 160 +#define IMG_ACIDPOOL_BOTTOMLEFT 161 +#define IMG_ACIDPOOL_BOTTOM 162 +#define IMG_ACIDPOOL_BOTTOMRIGHT 163 +#define IMG_ACID 164 +#define IMG_ACID_SPLASH_LEFT 165 +#define IMG_ACID_SPLASH_RIGHT 166 +#define IMG_AMOEBA_DROP 167 +#define IMG_AMOEBA_CREATING 168 +#define IMG_AMOEBA_SHRINKING 169 +#define IMG_AMOEBA_WET 170 +#define IMG_AMOEBA_WET_EDITOR 171 +#define IMG_AMOEBA_DRIPPING 172 +#define IMG_AMOEBA_DRY 173 +#define IMG_AMOEBA_FULL 174 +#define IMG_AMOEBA_FULL_EDITOR 175 +#define IMG_AMOEBA_DEAD 176 +#define IMG_AMOEBA_DEAD_EDITOR 177 +#define IMG_EM_KEY1 178 +#define IMG_EM_KEY2 179 +#define IMG_EM_KEY3 180 +#define IMG_EM_KEY4 181 +#define IMG_EM_GATE1 182 +#define IMG_EM_GATE2 183 +#define IMG_EM_GATE3 184 +#define IMG_EM_GATE4 185 +#define IMG_EM_GATE1_GRAY 186 +#define IMG_EM_GATE1_GRAY_EDITOR 187 +#define IMG_EM_GATE2_GRAY 188 +#define IMG_EM_GATE2_GRAY_EDITOR 189 +#define IMG_EM_GATE3_GRAY 190 +#define IMG_EM_GATE3_GRAY_EDITOR 191 +#define IMG_EM_GATE4_GRAY 192 +#define IMG_EM_GATE4_GRAY_EDITOR 193 +#define IMG_EXIT_CLOSED 194 +#define IMG_EXIT_OPENING 195 +#define IMG_EXIT_OPEN 196 +#define IMG_BALLOON 197 +#define IMG_BALLOON_MOVING 198 +#define IMG_BALLOON_SEND_LEFT 199 +#define IMG_BALLOON_SEND_RIGHT 200 +#define IMG_BALLOON_SEND_UP 201 +#define IMG_BALLOON_SEND_DOWN 202 +#define IMG_BALLOON_SEND_ANY_DIRECTION 203 +#define IMG_SPRING 204 +#define IMG_SPRING_MOVING 205 +#define IMG_EMC_STEELWALL1 206 +#define IMG_EMC_STEELWALL2 207 +#define IMG_EMC_STEELWALL3 208 +#define IMG_EMC_STEELWALL4 209 +#define IMG_EMC_WALL_PILLAR_UPPER 210 +#define IMG_EMC_WALL_PILLAR_MIDDLE 211 +#define IMG_EMC_WALL_PILLAR_LOWER 212 +#define IMG_EMC_WALL4 213 +#define IMG_EMC_WALL5 214 +#define IMG_EMC_WALL6 215 +#define IMG_EMC_WALL7 216 +#define IMG_EMC_WALL8 217 +#define IMG_INVISIBLE_STEELWALL 218 +#define IMG_INVISIBLE_STEELWALL_EDITOR 219 +#define IMG_INVISIBLE_STEELWALL_ACTIVE 220 +#define IMG_INVISIBLE_WALL 221 +#define IMG_INVISIBLE_WALL_EDITOR 222 +#define IMG_INVISIBLE_WALL_ACTIVE 223 +#define IMG_INVISIBLE_SAND 224 +#define IMG_INVISIBLE_SAND_EDITOR 225 +#define IMG_INVISIBLE_SAND_ACTIVE 226 +#define IMG_CONVEYOR_BELT1_MIDDLE 227 +#define IMG_CONVEYOR_BELT1_MIDDLE_ACTIVE 228 +#define IMG_CONVEYOR_BELT1_LEFT 229 +#define IMG_CONVEYOR_BELT1_LEFT_ACTIVE 230 +#define IMG_CONVEYOR_BELT1_RIGHT 231 +#define IMG_CONVEYOR_BELT1_RIGHT_ACTIVE 232 +#define IMG_CONVEYOR_BELT1_SWITCH_LEFT 233 +#define IMG_CONVEYOR_BELT1_SWITCH_MIDDLE 234 +#define IMG_CONVEYOR_BELT1_SWITCH_RIGHT 235 +#define IMG_CONVEYOR_BELT2_MIDDLE 236 +#define IMG_CONVEYOR_BELT2_MIDDLE_ACTIVE 237 +#define IMG_CONVEYOR_BELT2_LEFT 238 +#define IMG_CONVEYOR_BELT2_LEFT_ACTIVE 239 +#define IMG_CONVEYOR_BELT2_RIGHT 240 +#define IMG_CONVEYOR_BELT2_RIGHT_ACTIVE 241 +#define IMG_CONVEYOR_BELT2_SWITCH_LEFT 242 +#define IMG_CONVEYOR_BELT2_SWITCH_MIDDLE 243 +#define IMG_CONVEYOR_BELT2_SWITCH_RIGHT 244 +#define IMG_CONVEYOR_BELT3_MIDDLE 245 +#define IMG_CONVEYOR_BELT3_MIDDLE_ACTIVE 246 +#define IMG_CONVEYOR_BELT3_LEFT 247 +#define IMG_CONVEYOR_BELT3_LEFT_ACTIVE 248 +#define IMG_CONVEYOR_BELT3_RIGHT 249 +#define IMG_CONVEYOR_BELT3_RIGHT_ACTIVE 250 +#define IMG_CONVEYOR_BELT3_SWITCH_LEFT 251 +#define IMG_CONVEYOR_BELT3_SWITCH_MIDDLE 252 +#define IMG_CONVEYOR_BELT3_SWITCH_RIGHT 253 +#define IMG_CONVEYOR_BELT4_MIDDLE 254 +#define IMG_CONVEYOR_BELT4_MIDDLE_ACTIVE 255 +#define IMG_CONVEYOR_BELT4_LEFT 256 +#define IMG_CONVEYOR_BELT4_LEFT_ACTIVE 257 +#define IMG_CONVEYOR_BELT4_RIGHT 258 +#define IMG_CONVEYOR_BELT4_RIGHT_ACTIVE 259 +#define IMG_CONVEYOR_BELT4_SWITCH_LEFT 260 +#define IMG_CONVEYOR_BELT4_SWITCH_MIDDLE 261 +#define IMG_CONVEYOR_BELT4_SWITCH_RIGHT 262 +#define IMG_SWITCHGATE_SWITCH_UP 263 +#define IMG_SWITCHGATE_SWITCH_DOWN 264 +#define IMG_LIGHT_SWITCH 265 +#define IMG_LIGHT_SWITCH_ACTIVE 266 +#define IMG_TIMEGATE_SWITCH 267 +#define IMG_TIMEGATE_SWITCH_ACTIVE 268 +#define IMG_ENVELOPE 269 +#define IMG_SIGN_EXCLAMATION 270 +#define IMG_SIGN_STOP 271 +#define IMG_LANDMINE 272 +#define IMG_STEELWALL_SLANTED 273 +#define IMG_EXTRA_TIME 274 +#define IMG_SHIELD_NORMAL 275 +#define IMG_SHIELD_NORMAL_ACTIVE 276 +#define IMG_SHIELD_DEADLY 277 +#define IMG_SHIELD_DEADLY_ACTIVE 278 +#define IMG_SWITCHGATE_CLOSED 279 +#define IMG_SWITCHGATE_OPENING 280 +#define IMG_SWITCHGATE_OPEN 281 +#define IMG_SWITCHGATE_CLOSING 282 +#define IMG_TIMEGATE_CLOSED 283 +#define IMG_TIMEGATE_OPENING 284 +#define IMG_TIMEGATE_OPEN 285 +#define IMG_TIMEGATE_CLOSING 286 +#define IMG_PEARL 287 +#define IMG_PEARL_BREAKING 288 +#define IMG_CRYSTAL 289 +#define IMG_WALL_PEARL 290 +#define IMG_WALL_CRYSTAL 291 +#define IMG_TUBE_RIGHT_DOWN 292 +#define IMG_TUBE_HORIZONTAL_DOWN 293 +#define IMG_TUBE_LEFT_DOWN 294 +#define IMG_TUBE_HORIZONTAL 295 +#define IMG_TUBE_VERTICAL_RIGHT 296 +#define IMG_TUBE_ALL 297 +#define IMG_TUBE_VERTICAL_LEFT 298 +#define IMG_TUBE_VERTICAL 299 +#define IMG_TUBE_RIGHT_UP 300 +#define IMG_TUBE_HORIZONTAL_UP 301 +#define IMG_TUBE_LEFT_UP 302 +#define IMG_TRAP 303 +#define IMG_TRAP_ACTIVE 304 +#define IMG_DX_SUPABOMB 305 +#define IMG_KEY1 306 +#define IMG_KEY1_EDITOR 307 +#define IMG_KEY2 308 +#define IMG_KEY2_EDITOR 309 +#define IMG_KEY3 310 +#define IMG_KEY3_EDITOR 311 +#define IMG_KEY4 312 +#define IMG_KEY4_EDITOR 313 +#define IMG_GATE1 314 +#define IMG_GATE2 315 +#define IMG_GATE3 316 +#define IMG_GATE4 317 +#define IMG_GATE1_GRAY 318 +#define IMG_GATE1_GRAY_EDITOR 319 +#define IMG_GATE2_GRAY 320 +#define IMG_GATE2_GRAY_EDITOR 321 +#define IMG_GATE3_GRAY 322 +#define IMG_GATE3_GRAY_EDITOR 323 +#define IMG_GATE4_GRAY 324 +#define IMG_GATE4_GRAY_EDITOR 325 +#define IMG_GAMEOFLIFE 326 +#define IMG_BIOMAZE 327 +#define IMG_PACMAN_RIGHT 328 +#define IMG_PACMAN_UP 329 +#define IMG_PACMAN_LEFT 330 +#define IMG_PACMAN_DOWN 331 +#define IMG_LAMP 332 +#define IMG_LAMP_EDITOR 333 +#define IMG_LAMP_ACTIVE 334 +#define IMG_TIME_ORB_FULL 335 +#define IMG_TIME_ORB_EMPTY 336 +#define IMG_EMERALD_YELLOW 337 +#define IMG_EMERALD_YELLOW_MOVING 338 +#define IMG_EMERALD_YELLOW_FALLING 339 +#define IMG_EMERALD_RED 340 +#define IMG_EMERALD_RED_MOVING 341 +#define IMG_EMERALD_RED_FALLING 342 +#define IMG_EMERALD_PURPLE 343 +#define IMG_EMERALD_PURPLE_MOVING 344 +#define IMG_EMERALD_PURPLE_FALLING 345 +#define IMG_WALL_EMERALD_YELLOW 346 +#define IMG_WALL_EMERALD_RED 347 +#define IMG_WALL_EMERALD_PURPLE 348 +#define IMG_WALL_BD_DIAMOND 349 +#define IMG_WALL_GROWING 350 +#define IMG_WALL_GROWING_XY 351 +#define IMG_WALL_GROWING_XY_EDITOR 352 +#define IMG_WALL_GROWING_X 353 +#define IMG_WALL_GROWING_X_EDITOR 354 +#define IMG_WALL_GROWING_Y 355 +#define IMG_WALL_GROWING_Y_EDITOR 356 +#define IMG_WALL_GROWING_ACTIVE_LEFT 357 +#define IMG_WALL_GROWING_ACTIVE_RIGHT 358 +#define IMG_WALL_GROWING_ACTIVE_UP 359 +#define IMG_WALL_GROWING_ACTIVE_DOWN 360 +#define IMG_BLACK_ORB 361 +#define IMG_SPEED_PILL 362 +#define IMG_DARK_YAMYAM 363 +#define IMG_DYNABOMB_ACTIVE 364 +#define IMG_DYNABOMB_PLAYER1_ACTIVE 365 +#define IMG_DYNABOMB_PLAYER2_ACTIVE 366 +#define IMG_DYNABOMB_PLAYER3_ACTIVE 367 +#define IMG_DYNABOMB_PLAYER4_ACTIVE 368 +#define IMG_DYNABOMB_NR 369 +#define IMG_DYNABOMB_SZ 370 +#define IMG_DYNABOMB_XL 371 +#define IMG_PIG 372 +#define IMG_PIG_DOWN 373 +#define IMG_PIG_UP 374 +#define IMG_PIG_LEFT 375 +#define IMG_PIG_RIGHT 376 +#define IMG_PIG_MOVING_DOWN 377 +#define IMG_PIG_MOVING_UP 378 +#define IMG_PIG_MOVING_LEFT 379 +#define IMG_PIG_MOVING_RIGHT 380 +#define IMG_PIG_EATING_DOWN 381 +#define IMG_PIG_EATING_UP 382 +#define IMG_PIG_EATING_LEFT 383 +#define IMG_PIG_EATING_RIGHT 384 +#define IMG_DRAGON 385 +#define IMG_DRAGON_DOWN 386 +#define IMG_DRAGON_UP 387 +#define IMG_DRAGON_LEFT 388 +#define IMG_DRAGON_RIGHT 389 +#define IMG_DRAGON_MOVING_DOWN 390 +#define IMG_DRAGON_MOVING_UP 391 +#define IMG_DRAGON_MOVING_LEFT 392 +#define IMG_DRAGON_MOVING_RIGHT 393 +#define IMG_DRAGON_ATTACKING_DOWN 394 +#define IMG_DRAGON_ATTACKING_UP 395 +#define IMG_DRAGON_ATTACKING_LEFT 396 +#define IMG_DRAGON_ATTACKING_RIGHT 397 +#define IMG_MOLE 398 +#define IMG_MOLE_DOWN 399 +#define IMG_MOLE_UP 400 +#define IMG_MOLE_LEFT 401 +#define IMG_MOLE_RIGHT 402 +#define IMG_MOLE_MOVING_DOWN 403 +#define IMG_MOLE_MOVING_UP 404 +#define IMG_MOLE_MOVING_LEFT 405 +#define IMG_MOLE_MOVING_RIGHT 406 +#define IMG_MOLE_DIGGING_DOWN 407 +#define IMG_MOLE_DIGGING_UP 408 +#define IMG_MOLE_DIGGING_LEFT 409 +#define IMG_MOLE_DIGGING_RIGHT 410 +#define IMG_PENGUIN 411 +#define IMG_PENGUIN_EDITOR 412 +#define IMG_PENGUIN_DOWN 413 +#define IMG_PENGUIN_UP 414 +#define IMG_PENGUIN_LEFT 415 +#define IMG_PENGUIN_RIGHT 416 +#define IMG_PENGUIN_MOVING_DOWN 417 +#define IMG_PENGUIN_MOVING_UP 418 +#define IMG_PENGUIN_MOVING_LEFT 419 +#define IMG_PENGUIN_MOVING_RIGHT 420 +#define IMG_SATELLITE 421 +#define IMG_SATELLITE_MOVING 422 +#define IMG_FLAMES1_LEFT 423 +#define IMG_FLAMES2_LEFT 424 +#define IMG_FLAMES3_LEFT 425 +#define IMG_FLAMES1_RIGHT 426 +#define IMG_FLAMES2_RIGHT 427 +#define IMG_FLAMES3_RIGHT 428 +#define IMG_FLAMES1_UP 429 +#define IMG_FLAMES2_UP 430 +#define IMG_FLAMES3_UP 431 +#define IMG_FLAMES1_DOWN 432 +#define IMG_FLAMES2_DOWN 433 +#define IMG_FLAMES3_DOWN 434 +#define IMG_STONEBLOCK 435 +#define IMG_PLAYER1 436 +#define IMG_PLAYER1_EDITOR 437 +#define IMG_PLAYER1_DOWN 438 +#define IMG_PLAYER1_UP 439 +#define IMG_PLAYER1_LEFT 440 +#define IMG_PLAYER1_RIGHT 441 +#define IMG_PLAYER1_MOVING_DOWN 442 +#define IMG_PLAYER1_MOVING_UP 443 +#define IMG_PLAYER1_MOVING_LEFT 444 +#define IMG_PLAYER1_MOVING_RIGHT 445 +#define IMG_PLAYER1_DIGGING_DOWN 446 +#define IMG_PLAYER1_DIGGING_UP 447 +#define IMG_PLAYER1_DIGGING_LEFT 448 +#define IMG_PLAYER1_DIGGING_RIGHT 449 +#define IMG_PLAYER1_PUSHING_DOWN 450 +#define IMG_PLAYER1_PUSHING_UP 451 +#define IMG_PLAYER1_PUSHING_LEFT 452 +#define IMG_PLAYER1_PUSHING_RIGHT 453 +#define IMG_PLAYER1_SNAPPING_DOWN 454 +#define IMG_PLAYER1_SNAPPING_UP 455 +#define IMG_PLAYER1_SNAPPING_LEFT 456 +#define IMG_PLAYER1_SNAPPING_RIGHT 457 +#define IMG_PLAYER2 458 +#define IMG_PLAYER2_EDITOR 459 +#define IMG_PLAYER2_DOWN 460 +#define IMG_PLAYER2_UP 461 +#define IMG_PLAYER2_LEFT 462 +#define IMG_PLAYER2_RIGHT 463 +#define IMG_PLAYER2_MOVING_DOWN 464 +#define IMG_PLAYER2_MOVING_UP 465 +#define IMG_PLAYER2_MOVING_LEFT 466 +#define IMG_PLAYER2_MOVING_RIGHT 467 +#define IMG_PLAYER2_DIGGING_DOWN 468 +#define IMG_PLAYER2_DIGGING_UP 469 +#define IMG_PLAYER2_DIGGING_LEFT 470 +#define IMG_PLAYER2_DIGGING_RIGHT 471 +#define IMG_PLAYER2_PUSHING_DOWN 472 +#define IMG_PLAYER2_PUSHING_UP 473 +#define IMG_PLAYER2_PUSHING_LEFT 474 +#define IMG_PLAYER2_PUSHING_RIGHT 475 +#define IMG_PLAYER2_SNAPPING_DOWN 476 +#define IMG_PLAYER2_SNAPPING_UP 477 +#define IMG_PLAYER2_SNAPPING_LEFT 478 +#define IMG_PLAYER2_SNAPPING_RIGHT 479 +#define IMG_PLAYER3 480 +#define IMG_PLAYER3_EDITOR 481 +#define IMG_PLAYER3_DOWN 482 +#define IMG_PLAYER3_UP 483 +#define IMG_PLAYER3_LEFT 484 +#define IMG_PLAYER3_RIGHT 485 +#define IMG_PLAYER3_MOVING_DOWN 486 +#define IMG_PLAYER3_MOVING_UP 487 +#define IMG_PLAYER3_MOVING_LEFT 488 +#define IMG_PLAYER3_MOVING_RIGHT 489 +#define IMG_PLAYER3_DIGGING_DOWN 490 +#define IMG_PLAYER3_DIGGING_UP 491 +#define IMG_PLAYER3_DIGGING_LEFT 492 +#define IMG_PLAYER3_DIGGING_RIGHT 493 +#define IMG_PLAYER3_PUSHING_DOWN 494 +#define IMG_PLAYER3_PUSHING_UP 495 +#define IMG_PLAYER3_PUSHING_LEFT 496 +#define IMG_PLAYER3_PUSHING_RIGHT 497 +#define IMG_PLAYER3_SNAPPING_DOWN 498 +#define IMG_PLAYER3_SNAPPING_UP 499 +#define IMG_PLAYER3_SNAPPING_LEFT 500 +#define IMG_PLAYER3_SNAPPING_RIGHT 501 +#define IMG_PLAYER4 502 +#define IMG_PLAYER4_EDITOR 503 +#define IMG_PLAYER4_DOWN 504 +#define IMG_PLAYER4_UP 505 +#define IMG_PLAYER4_LEFT 506 +#define IMG_PLAYER4_RIGHT 507 +#define IMG_PLAYER4_MOVING_DOWN 508 +#define IMG_PLAYER4_MOVING_UP 509 +#define IMG_PLAYER4_MOVING_LEFT 510 +#define IMG_PLAYER4_MOVING_RIGHT 511 +#define IMG_PLAYER4_DIGGING_DOWN 512 +#define IMG_PLAYER4_DIGGING_UP 513 +#define IMG_PLAYER4_DIGGING_LEFT 514 +#define IMG_PLAYER4_DIGGING_RIGHT 515 +#define IMG_PLAYER4_PUSHING_DOWN 516 +#define IMG_PLAYER4_PUSHING_UP 517 +#define IMG_PLAYER4_PUSHING_LEFT 518 +#define IMG_PLAYER4_PUSHING_RIGHT 519 +#define IMG_PLAYER4_SNAPPING_DOWN 520 +#define IMG_PLAYER4_SNAPPING_UP 521 +#define IMG_PLAYER4_SNAPPING_LEFT 522 +#define IMG_PLAYER4_SNAPPING_RIGHT 523 +#define IMG_EXPLOSION 524 +#define IMG_TWINKLE_BLUE 525 +#define IMG_TWINKLE_WHITE 526 +#define IMG_STEELWALL_TOPLEFT 527 +#define IMG_STEELWALL_TOPRIGHT 528 +#define IMG_STEELWALL_BOTTOMLEFT 529 +#define IMG_STEELWALL_BOTTOMRIGHT 530 +#define IMG_STEELWALL_HORIZONTAL 531 +#define IMG_STEELWALL_VERTICAL 532 +#define IMG_STEELWALL_TOPLEFT_EDITOR 533 +#define IMG_STEELWALL_TOPRIGHT_EDITOR 534 +#define IMG_STEELWALL_BOTTOMLEFT_EDITOR 535 +#define IMG_STEELWALL_BOTTOMRIGHT_EDITOR 536 +#define IMG_STEELWALL_HORIZONTAL_EDITOR 537 +#define IMG_STEELWALL_VERTICAL_EDITOR 538 +#define IMG_INVISIBLE_STEELWALL_TOPLEFT 539 +#define IMG_INVISIBLE_STEELWALL_TOPRIGHT 540 +#define IMG_INVISIBLE_STEELWALL_BOTTOMLEFT 541 +#define IMG_INVISIBLE_STEELWALL_BOTTOMRIGHT 542 +#define IMG_INVISIBLE_STEELWALL_HORIZONTAL 543 +#define IMG_INVISIBLE_STEELWALL_VERTICAL 544 +#define IMG_INVISIBLE_STEELWALL_TOPLEFT_EDITOR 545 +#define IMG_INVISIBLE_STEELWALL_TOPRIGHT_EDITOR 546 +#define IMG_INVISIBLE_STEELWALL_BOTTOMLEFT_EDITOR 547 +#define IMG_INVISIBLE_STEELWALL_BOTTOMRIGHT_EDITOR 548 +#define IMG_INVISIBLE_STEELWALL_HORIZONTAL_EDITOR 549 +#define IMG_INVISIBLE_STEELWALL_VERTICAL_EDITOR 550 +#define IMG_ARROW_LEFT 551 +#define IMG_ARROW_RIGHT 552 +#define IMG_ARROW_UP 553 +#define IMG_ARROW_DOWN 554 +#define IMG_CHAR_SPACE 555 +#define IMG_CHAR_EXCLAM 556 +#define IMG_CHAR_QUOTEDBL 557 +#define IMG_CHAR_NUMBERSIGN 558 +#define IMG_CHAR_DOLLAR 559 +#define IMG_CHAR_PROCENT 560 +#define IMG_CHAR_AMPERSAND 561 +#define IMG_CHAR_APOSTROPHE 562 +#define IMG_CHAR_PARENLEFT 563 +#define IMG_CHAR_PARENRIGHT 564 +#define IMG_CHAR_ASTERISK 565 +#define IMG_CHAR_PLUS 566 +#define IMG_CHAR_COMMA 567 +#define IMG_CHAR_MINUS 568 +#define IMG_CHAR_PERIOD 569 +#define IMG_CHAR_SLASH 570 +#define IMG_CHAR_0 571 +#define IMG_CHAR_1 572 +#define IMG_CHAR_2 573 +#define IMG_CHAR_3 574 +#define IMG_CHAR_4 575 +#define IMG_CHAR_5 576 +#define IMG_CHAR_6 577 +#define IMG_CHAR_7 578 +#define IMG_CHAR_8 579 +#define IMG_CHAR_9 580 +#define IMG_CHAR_COLON 581 +#define IMG_CHAR_SEMICOLON 582 +#define IMG_CHAR_LESS 583 +#define IMG_CHAR_EQUAL 584 +#define IMG_CHAR_GREATER 585 +#define IMG_CHAR_QUESTION 586 +#define IMG_CHAR_AT 587 +#define IMG_CHAR_A 588 +#define IMG_CHAR_B 589 +#define IMG_CHAR_C 590 +#define IMG_CHAR_D 591 +#define IMG_CHAR_E 592 +#define IMG_CHAR_F 593 +#define IMG_CHAR_G 594 +#define IMG_CHAR_H 595 +#define IMG_CHAR_I 596 +#define IMG_CHAR_J 597 +#define IMG_CHAR_K 598 +#define IMG_CHAR_L 599 +#define IMG_CHAR_M 600 +#define IMG_CHAR_N 601 +#define IMG_CHAR_O 602 +#define IMG_CHAR_P 603 +#define IMG_CHAR_Q 604 +#define IMG_CHAR_R 605 +#define IMG_CHAR_S 606 +#define IMG_CHAR_T 607 +#define IMG_CHAR_U 608 +#define IMG_CHAR_V 609 +#define IMG_CHAR_W 610 +#define IMG_CHAR_X 611 +#define IMG_CHAR_Y 612 +#define IMG_CHAR_Z 613 +#define IMG_CHAR_AE 614 +#define IMG_CHAR_OE 615 +#define IMG_CHAR_UE 616 +#define IMG_CHAR_COPYRIGHT 617 +#define IMG_CHAR_UNDERSCORE 618 +#define IMG_CHAR_EMPTY 619 +#define IMG_CHAR_DEGREE 620 +#define IMG_CHAR_TM 621 +#define IMG_CHAR_CURSOR 622 +#define IMG_CUSTOM_1 623 +#define IMG_CUSTOM_2 624 +#define IMG_CUSTOM_3 625 +#define IMG_CUSTOM_4 626 +#define IMG_CUSTOM_5 627 +#define IMG_CUSTOM_6 628 +#define IMG_CUSTOM_7 629 +#define IMG_CUSTOM_8 630 +#define IMG_CUSTOM_9 631 +#define IMG_CUSTOM_10 632 +#define IMG_CUSTOM_11 633 +#define IMG_CUSTOM_12 634 +#define IMG_CUSTOM_13 635 +#define IMG_CUSTOM_14 636 +#define IMG_CUSTOM_15 637 +#define IMG_CUSTOM_16 638 +#define IMG_CUSTOM_17 639 +#define IMG_CUSTOM_18 640 +#define IMG_CUSTOM_19 641 +#define IMG_CUSTOM_20 642 +#define IMG_CUSTOM_21 643 +#define IMG_CUSTOM_22 644 +#define IMG_CUSTOM_23 645 +#define IMG_CUSTOM_24 646 +#define IMG_CUSTOM_25 647 +#define IMG_CUSTOM_26 648 +#define IMG_CUSTOM_27 649 +#define IMG_CUSTOM_28 650 +#define IMG_CUSTOM_29 651 +#define IMG_CUSTOM_30 652 +#define IMG_CUSTOM_31 653 +#define IMG_CUSTOM_32 654 +#define IMG_CUSTOM_33 655 +#define IMG_CUSTOM_34 656 +#define IMG_CUSTOM_35 657 +#define IMG_CUSTOM_36 658 +#define IMG_CUSTOM_37 659 +#define IMG_CUSTOM_38 660 +#define IMG_CUSTOM_39 661 +#define IMG_CUSTOM_40 662 +#define IMG_CUSTOM_41 663 +#define IMG_CUSTOM_42 664 +#define IMG_CUSTOM_43 665 +#define IMG_CUSTOM_44 666 +#define IMG_CUSTOM_45 667 +#define IMG_CUSTOM_46 668 +#define IMG_CUSTOM_47 669 +#define IMG_CUSTOM_48 670 +#define IMG_CUSTOM_49 671 +#define IMG_CUSTOM_50 672 +#define IMG_CUSTOM_51 673 +#define IMG_CUSTOM_52 674 +#define IMG_CUSTOM_53 675 +#define IMG_CUSTOM_54 676 +#define IMG_CUSTOM_55 677 +#define IMG_CUSTOM_56 678 +#define IMG_CUSTOM_57 679 +#define IMG_CUSTOM_58 680 +#define IMG_CUSTOM_59 681 +#define IMG_CUSTOM_60 682 +#define IMG_CUSTOM_61 683 +#define IMG_CUSTOM_62 684 +#define IMG_CUSTOM_63 685 +#define IMG_CUSTOM_64 686 +#define IMG_CUSTOM_65 687 +#define IMG_CUSTOM_66 688 +#define IMG_CUSTOM_67 689 +#define IMG_CUSTOM_68 690 +#define IMG_CUSTOM_69 691 +#define IMG_CUSTOM_70 692 +#define IMG_CUSTOM_71 693 +#define IMG_CUSTOM_72 694 +#define IMG_CUSTOM_73 695 +#define IMG_CUSTOM_74 696 +#define IMG_CUSTOM_75 697 +#define IMG_CUSTOM_76 698 +#define IMG_CUSTOM_77 699 +#define IMG_CUSTOM_78 700 +#define IMG_CUSTOM_79 701 +#define IMG_CUSTOM_80 702 +#define IMG_CUSTOM_81 703 +#define IMG_CUSTOM_82 704 +#define IMG_CUSTOM_83 705 +#define IMG_CUSTOM_84 706 +#define IMG_CUSTOM_85 707 +#define IMG_CUSTOM_86 708 +#define IMG_CUSTOM_87 709 +#define IMG_CUSTOM_88 710 +#define IMG_CUSTOM_89 711 +#define IMG_CUSTOM_90 712 +#define IMG_CUSTOM_91 713 +#define IMG_CUSTOM_92 714 +#define IMG_CUSTOM_93 715 +#define IMG_CUSTOM_94 716 +#define IMG_CUSTOM_95 717 +#define IMG_CUSTOM_96 718 +#define IMG_CUSTOM_97 719 +#define IMG_CUSTOM_98 720 +#define IMG_CUSTOM_99 721 +#define IMG_CUSTOM_100 722 +#define IMG_CUSTOM_101 723 +#define IMG_CUSTOM_102 724 +#define IMG_CUSTOM_103 725 +#define IMG_CUSTOM_104 726 +#define IMG_CUSTOM_105 727 +#define IMG_CUSTOM_106 728 +#define IMG_CUSTOM_107 729 +#define IMG_CUSTOM_108 730 +#define IMG_CUSTOM_109 731 +#define IMG_CUSTOM_110 732 +#define IMG_CUSTOM_111 733 +#define IMG_CUSTOM_112 734 +#define IMG_CUSTOM_113 735 +#define IMG_CUSTOM_114 736 +#define IMG_CUSTOM_115 737 +#define IMG_CUSTOM_116 738 +#define IMG_CUSTOM_117 739 +#define IMG_CUSTOM_118 740 +#define IMG_CUSTOM_119 741 +#define IMG_CUSTOM_120 742 +#define IMG_CUSTOM_121 743 +#define IMG_CUSTOM_122 744 +#define IMG_CUSTOM_123 745 +#define IMG_CUSTOM_124 746 +#define IMG_CUSTOM_125 747 +#define IMG_CUSTOM_126 748 +#define IMG_CUSTOM_127 749 +#define IMG_CUSTOM_128 750 +#define IMG_TOON_1 751 +#define IMG_TOON_2 752 +#define IMG_TOON_3 753 +#define IMG_TOON_4 754 +#define IMG_TOON_5 755 +#define IMG_TOON_6 756 +#define IMG_TOON_7 757 +#define IMG_TOON_8 758 +#define IMG_TOON_9 759 +#define IMG_TOON_10 760 +#define IMG_TOON_11 761 +#define IMG_TOON_12 762 +#define IMG_TOON_13 763 +#define IMG_TOON_14 764 +#define IMG_TOON_15 765 +#define IMG_TOON_16 766 +#define IMG_TOON_17 767 +#define IMG_TOON_18 768 +#define IMG_TOON_19 769 +#define IMG_TOON_20 770 +#define IMG_MENU_CALIBRATE_RED 771 +#define IMG_MENU_CALIBRATE_BLUE 772 +#define IMG_MENU_CALIBRATE_YELLOW 773 +#define IMG_MENU_BUTTON 774 +#define IMG_MENU_BUTTON_ACTIVE 775 +#define IMG_MENU_BUTTON_LEFT 776 +#define IMG_MENU_BUTTON_RIGHT 777 +#define IMG_MENU_BUTTON_UP 778 +#define IMG_MENU_BUTTON_DOWN 779 +#define IMG_MENU_BUTTON_LEFT_ACTIVE 780 +#define IMG_MENU_BUTTON_RIGHT_ACTIVE 781 +#define IMG_MENU_BUTTON_UP_ACTIVE 782 +#define IMG_MENU_BUTTON_DOWN_ACTIVE 783 +#define IMG_MENU_SCROLLBAR 784 +#define IMG_MENU_SCROLLBAR_ACTIVE 785 +#define IMG_FONT_INITIAL_1 786 +#define IMG_FONT_INITIAL_2 787 +#define IMG_FONT_INITIAL_3 788 +#define IMG_FONT_INITIAL_4 789 +#define IMG_FONT_BIG_1 790 +#define IMG_FONT_BIG_2 791 +#define IMG_FONT_BIG_3 792 +#define IMG_FONT_BIG_4 793 +#define IMG_FONT_MEDIUM_1 794 +#define IMG_FONT_MEDIUM_2 795 +#define IMG_FONT_MEDIUM_3 796 +#define IMG_FONT_MEDIUM_4 797 +#define IMG_FONT_SMALL_1 798 +#define IMG_FONT_SMALL_2 799 +#define IMG_FONT_SMALL_3 800 +#define IMG_FONT_SMALL_4 801 +#define IMG_FONT_TAPE 802 +#define IMG_FONT_GAME 803 +#define IMG_FONT_NARROW 804 +#define IMG_GLOBAL_BORDER 805 +#define IMG_GLOBAL_DOOR 806 +#define IMG_BACKGROUND 807 +#define IMG_BACKGROUND_MAIN 808 +#define IMG_BACKGROUND_LEVELS 809 +#define IMG_BACKGROUND_SCORES 810 +#define IMG_BACKGROUND_EDITOR 811 +#define IMG_BACKGROUND_INFO 812 +#define IMG_BACKGROUND_SETUP 813 +#define IMG_BACKGROUND_DOOR 814 +#define IMG_INFO_FONT_EM_1 815 +#define IMG_INFO_FONT_EM_2 816 +#define IMG_INFO_FONT_EM_3 817 +#define IMG_INFO_FONT_EM_4 818 +#define IMG_INFO_FONT_EM_5 819 -#define NUM_IMAGE_FILES 824 +#define NUM_IMAGE_FILES 820 #endif /* CONF_GFX_H */ diff --git a/src/conftime.h b/src/conftime.h index 4f715e14..7cbb3018 100644 --- a/src/conftime.h +++ b/src/conftime.h @@ -1 +1 @@ -#define COMPILE_DATE_STRING "[2003-02-20 01:47]" +#define COMPILE_DATE_STRING "[2003-02-22 18:44]" diff --git a/src/game.c b/src/game.c index 629b323f..9ff9bf2e 100644 --- a/src/game.c +++ b/src/game.c @@ -101,10 +101,8 @@ #define NUM_GAME_BUTTONS 6 + /* forward declaration for internal use */ -#if 0 -static void ResetGfxAnimation(int, int); -#endif static void InitBeltMovement(void); static void CloseAllOpenTimegates(void); @@ -651,8 +649,6 @@ void InitGame() player->actual_frame_counter = 0; - player->frame_reset_delay = 0; - player->last_move_dir = MV_NO_MOVING; player->is_moving = FALSE; @@ -1152,10 +1148,6 @@ void GameWon() StopSound(SND_GAME_LEVELTIME_BONUS); } -#if 0 - FadeSounds(); -#endif - /* Hero disappears */ DrawLevelField(ExitX, ExitY); BackToFront(); @@ -1266,6 +1258,15 @@ int NewHiScore() return position; } +static void InitPlayerGfxAnimation(struct PlayerInfo *player, int action) +{ + if (player->GfxAction != action) + { + player->GfxAction = action; + player->Frame = 0; + } +} + static void ResetRandomAnimationValue(int x, int y) { GfxRandom[x][y] = INIT_GFX_RANDOM(); @@ -1273,26 +1274,8 @@ static void ResetRandomAnimationValue(int x, int y) static void ResetGfxAnimation(int x, int y) { -#if 0 -#if 1 - int element = Feld[x][y]; - int graphic = el2img(element); - - /* reset random value not until one full delay cycle was reached */ - if (ANIM_MODE(graphic) == ANIM_RANDOM && - GfxFrame[x][y] > ANIM_DELAY(graphic)) -#endif - ResetRandomAnimationValue(x, y); -#endif - GfxFrame[x][y] = 0; GfxAction[x][y] = ACTION_DEFAULT; - -#if 0 - if (Feld[x][y] == EL_ROCK) - printf("ResetGfxAnimation: EL_ROCK [%d, %d]\n", - JustStopped[x][y], MovDir[x][y]); -#endif } void InitMovingField(int x, int y, int direction) @@ -1816,35 +1799,6 @@ void SplashAcid(int x, int y) !CAN_FALL(MovingOrBlocked2Element(x+1, y-1)))) Feld[x+1][y] = EL_ACID_SPLASH_RIGHT; } - -#if 0 - else /* go on */ - { - int graphic = (element == EL_ACID_SPLASH_LEFT ? - IMG_ACID_SPLASH_LEFT : - IMG_ACID_SPLASH_RIGHT); - - if (!MovDelay[x][y]) /* initialize animation counter */ - MovDelay[x][y] = 9; - - if (MovDelay[x][y]) /* continue animation */ - { - MovDelay[x][y]--; - if (MovDelay[x][y]/2 && IN_SCR_FIELD(SCREENX(x), SCREENY(y))) - { - int frame = getGraphicAnimationFrame(graphic, 8 - MovDelay[x][y]); - - DrawGraphic(SCREENX(x), SCREENY(y), graphic, frame); - } - - if (!MovDelay[x][y]) - { - Feld[x][y] = EL_EMPTY; - DrawLevelField(x, y); - } - } - } -#endif } static void InitBeltMovement() @@ -2171,16 +2125,11 @@ void Impact(int x, int y) return; } -#if 1 if (lastline || object_hit) { -#if 0 - MovDir[x][y] = 0; -#endif ResetGfxAnimation(x, y); DrawLevelField(x, y); } -#endif if ((element == EL_BOMB || element == EL_SP_DISK_ORANGE || @@ -2339,13 +2288,6 @@ void Impact(int x, int y) return; } -#if 0 - printf("::: -> %d,%d [%d]\n", element, ACTION_IMPACT, - element_info[element].sound[ACTION_IMPACT]); - - PlaySound(177); -#endif - /* play sound of object that hits the ground */ if (lastline || object_hit) PlaySoundLevelElementAction(x, y, element, ACTION_IMPACT); @@ -3048,15 +2990,8 @@ void StartMoving(int x, int y) element != EL_DARK_YAMYAM && element != EL_PACMAN) { -#if 0 - if (element == EL_SPRING) - printf("1--> %d\n", MovDir[x][y]); -#endif TurnRound(x, y); -#if 0 - if (element == EL_SPRING) - printf("2--> %d\n", MovDir[x][y]); -#endif + if (MovDelay[x][y] && (element == EL_BUG || element == EL_SPACESHIP || element == EL_SP_SNIKSNAK || @@ -3074,29 +3009,8 @@ void StartMoving(int x, int y) element == EL_YAMYAM || element == EL_DARK_YAMYAM) { -#if 1 DrawLevelElementAnimationIfNeeded(x, y, element); -#else - if (IN_SCR_FIELD(SCREENX(x), SCREENY(y))) - { - int graphic = el2img(element); - int frame = getGraphicAnimationFrame(graphic, MovDelay[x][y] % 8); - - DrawGraphic(SCREENX(x), SCREENY(y), graphic, frame); - } -#endif - -#if 1 PlaySoundLevelAction(x, y, ACTION_WAITING); -#else - if (MovDelay[x][y] % 4 == 3) - { - if (element == EL_YAMYAM) - PlaySoundLevel(x, y, SND_YAMYAM_WAITING); - else if (element == EL_DARK_YAMYAM) - PlaySoundLevel(x, y, SND_DARK_YAMYAM_WAITING); - } -#endif } else if (element == EL_SP_ELECTRON) DrawLevelElementAnimationIfNeeded(x, y, element); @@ -3496,16 +3410,10 @@ void ContinueMoving(int x, int y) MovPos[x][y] = MovDir[x][y] = MovDelay[x][y] = 0; MovDelay[newx][newy] = 0; -#if 0 - /* all done in "InitMovingField()" */ - GfxAction[newx][newy] = GfxAction[x][y]; /* keep action one frame */ - GfxRandom[newx][newy] = GfxRandom[x][y]; /* keep same random value */ -#endif - /* copy animation control values to new field */ GfxFrame[newx][newy] = GfxFrame[x][y]; - GfxAction[newx][newy] = GfxAction[x][y]; - GfxRandom[newx][newy] = GfxRandom[x][y]; + GfxAction[newx][newy] = GfxAction[x][y]; /* keep action one frame */ + GfxRandom[newx][newy] = GfxRandom[x][y]; /* keep same random value */ ResetGfxAnimation(x, y); /* reset animation values for old field */ @@ -3546,15 +3454,6 @@ void ContinueMoving(int x, int y) } else /* still moving on */ { -#if 0 - if (GfxAction[x][y] == ACTION_DEFAULT) - { - printf("reset GfxAction...\n"); - - GfxAction[x][y] = ACTION_MOVING; - } -#endif - DrawLevelField(x, y); } } @@ -4104,47 +4003,37 @@ void EdelsteinFunkeln(int x, int y) return; if (Feld[x][y] == EL_BD_DIAMOND) -#if 0 - DrawLevelElementAnimation(x, y, el2img(Feld[x][y])); -#else return; -#endif - else - { - if (MovDelay[x][y] == 0) /* next animation frame */ - MovDelay[x][y] = 11 * !SimpleRND(500); - if (MovDelay[x][y] != 0) /* wait some time before next frame */ - { - MovDelay[x][y]--; + if (MovDelay[x][y] == 0) /* next animation frame */ + MovDelay[x][y] = 11 * !SimpleRND(500); - if (setup.direct_draw && MovDelay[x][y]) - SetDrawtoField(DRAW_BUFFERED); + if (MovDelay[x][y] != 0) /* wait some time before next frame */ + { + MovDelay[x][y]--; -#if 0 - DrawGraphic(SCREENX(x), SCREENY(y), el2img(Feld[x][y]), 0); -#else - DrawLevelElementAnimation(x, y, Feld[x][y]); -#endif + if (setup.direct_draw && MovDelay[x][y]) + SetDrawtoField(DRAW_BUFFERED); - if (MovDelay[x][y] != 0) - { - int frame = getGraphicAnimationFrame(IMG_TWINKLE_WHITE, - 10 - MovDelay[x][y]); + DrawLevelElementAnimation(x, y, Feld[x][y]); - DrawGraphicThruMask(SCREENX(x), SCREENY(y), IMG_TWINKLE_WHITE, frame); + if (MovDelay[x][y] != 0) + { + int frame = getGraphicAnimationFrame(IMG_TWINKLE_WHITE, + 10 - MovDelay[x][y]); - if (setup.direct_draw) - { - int dest_x, dest_y; + DrawGraphicThruMask(SCREENX(x), SCREENY(y), IMG_TWINKLE_WHITE, frame); - dest_x = FX + SCREENX(x) * TILEX; - dest_y = FY + SCREENY(y) * TILEY; + if (setup.direct_draw) + { + int dest_x, dest_y; - BlitBitmap(drawto_field, window, - dest_x, dest_y, TILEX, TILEY, dest_x, dest_y); - SetDrawtoField(DRAW_DIRECT); - } + dest_x = FX + SCREENX(x) * TILEX; + dest_y = FY + SCREENY(y) * TILEY; + + BlitBitmap(drawto_field, window, + dest_x, dest_y, TILEX, TILEY, dest_x, dest_y); + SetDrawtoField(DRAW_DIRECT); } } } @@ -4449,9 +4338,6 @@ static void PlayerActions(struct PlayerInfo *player, byte player_action) { static byte stored_player_action[MAX_PLAYERS]; static int num_stored_actions = 0; -#if 0 - static boolean save_tape_entry = FALSE; -#endif boolean moved = FALSE, snapped = FALSE, bombed = FALSE; int left = player_action & JOY_LEFT; int right = player_action & JOY_RIGHT; @@ -4470,11 +4356,6 @@ static void PlayerActions(struct PlayerInfo *player, byte player_action) if (player_action) { -#if 0 - save_tape_entry = TRUE; -#endif - player->frame_reset_delay = 0; - if (button1) snapped = SnapField(player, dx, dy); else @@ -4493,20 +4374,7 @@ static void PlayerActions(struct PlayerInfo *player, byte player_action) } } -#if 0 - if (tape.recording && (moved || snapped || bombed)) - { - if (bombed && !moved) - player_action &= JOY_BUTTON; - - stored_player_action[player->index_nr] = player_action; - save_tape_entry = TRUE; - } - else if (tape.playing && snapped) - SnapField(player, 0, 0); /* stop snapping */ -#else stored_player_action[player->index_nr] = player_action; -#endif } else { @@ -4516,74 +4384,17 @@ static void PlayerActions(struct PlayerInfo *player, byte player_action) SnapField(player, 0, 0); CheckGravityMovement(player); -#if 1 + InitPlayerGfxAnimation(player, ACTION_DEFAULT); + if (player->MovPos == 0) /* needed for tape.playing */ player->is_moving = FALSE; -#endif -#if 0 - if (player->MovPos == 0) /* needed for tape.playing */ - player->last_move_dir = MV_NO_MOVING; - - /* !!! CHECK THIS AGAIN !!! - (Seems to be needed for some EL_ROBOT stuff, but breaks - tapes when walking through pipes!) - */ - - /* it seems that "player->last_move_dir" is misused as some sort of - "player->is_just_moving_in_this_moment", which is needed for the - robot stuff (robots don't kill players when they are moving) - */ -#endif - - /* if the player does not move for some time, reset animation to start */ - if (++player->frame_reset_delay > player->move_delay_value) - player->Frame = 0; } -#if 0 - if (tape.recording && num_stored_actions >= MAX_PLAYERS && save_tape_entry) - { - TapeRecordAction(stored_player_action); - num_stored_actions = 0; - save_tape_entry = FALSE; - } -#else if (tape.recording && num_stored_actions >= MAX_PLAYERS) { TapeRecordAction(stored_player_action); num_stored_actions = 0; } -#endif - -#if 0 - if (tape.playing && !tape.pausing && !player_action && - tape.counter < tape.length) - { - int jx = player->jx, jy = player->jy; - int next_joy = - tape.pos[tape.counter].action[player->index_nr] & (JOY_LEFT|JOY_RIGHT); - - if ((next_joy == JOY_LEFT || next_joy == JOY_RIGHT) && - (player->MovDir != JOY_UP && player->MovDir != JOY_DOWN)) - { - int dx = (next_joy == JOY_LEFT ? -1 : +1); - - if (IN_LEV_FIELD(jx+dx, jy) && IS_PUSHABLE(Feld[jx+dx][jy])) - { - int el = Feld[jx+dx][jy]; - int push_delay = (IS_SB_ELEMENT(el) || el == EL_SATELLITE ? 2 : - (el == EL_BALLOON || el == EL_SPRING) ? 0 : 10); - - if (tape.delay_played + push_delay >= tape.pos[tape.counter].delay) - { - player->MovDir = next_joy; - player->Frame = FrameCounter % 4; - player->Pushing = TRUE; - } - } - } - } -#endif } void GameActions() @@ -4674,30 +4485,12 @@ void GameActions() ScrollScreen(NULL, SCROLL_GO_ON); - - -#ifdef DEBUG -#if 0 - if (TimeFrames == 0 && local_player->active) - { - extern unsigned int last_RND(); - - printf("DEBUG: %03d last RND was %d \t [state checksum is %d]\n", - TimePlayed, last_RND(), getStateCheckSum(TimePlayed)); - } -#endif -#endif - -#ifdef DEBUG -#if 0 - if (GameFrameDelay >= 500) - printf("FrameCounter == %d\n", FrameCounter); -#endif -#endif - FrameCounter++; TimeFrames++; + for (i=0; iPushing) - player->Frame = 0; - else #if 0 - player->Frame = (player->Frame + 1) % 4; +#if 1 + InitPlayerGfxAnimation(player, ACTION_DEFAULT); #else - player->Frame += 1 * 0; + if (!(moved & MF_MOVING) && !player->Pushing) + player->Frame = 0; +#endif #endif if (moved & MF_MOVING) @@ -5417,8 +5210,6 @@ void ScrollFigure(struct PlayerInfo *player, int mode) { player->actual_frame_counter = FrameCounter; player->GfxPos = move_stepsize * (player->MovPos / move_stepsize); - if (player->Frame) - player->Frame += 1; if (Feld[last_jx][last_jy] == EL_EMPTY) Feld[last_jx][last_jy] = EL_PLAYER_IS_LEAVING; @@ -5431,7 +5222,6 @@ void ScrollFigure(struct PlayerInfo *player, int mode) player->MovPos += (player->MovPos > 0 ? -1 : 1) * move_stepsize; player->GfxPos = move_stepsize * (player->MovPos / move_stepsize); - player->Frame += 1; if (Feld[last_jx][last_jy] == EL_PLAYER_IS_LEAVING) Feld[last_jx][last_jy] = EL_EMPTY; diff --git a/src/main.h b/src/main.h index 7664426e..b81abcb1 100644 --- a/src/main.h +++ b/src/main.h @@ -915,8 +915,6 @@ struct PlayerInfo unsigned long push_delay; unsigned long push_delay_value; - int frame_reset_delay; - unsigned long actual_frame_counter; int score; diff --git a/src/tools.c b/src/tools.c index 6cf2d9e6..4f9d50fb 100644 --- a/src/tools.c +++ b/src/tools.c @@ -560,7 +560,9 @@ void DrawPlayer(struct PlayerInfo *player) if (element == EL_EXPLOSION) return; - /* draw things in the field the player is leaving, if needed */ + /* ----------------------------------------------------------------------- */ + /* draw things in the field the player is leaving, if needed */ + /* ----------------------------------------------------------------------- */ if (player_is_moving) { @@ -598,7 +600,9 @@ void DrawPlayer(struct PlayerInfo *player) if (setup.direct_draw) SetDrawtoField(DRAW_BUFFERED); - /* draw things behind the player, if needed */ + /* ----------------------------------------------------------------------- */ + /* draw things behind the player, if needed */ + /* ----------------------------------------------------------------------- */ if (Store[jx][jy]) DrawLevelElement(jx, jy, Store[jx][jy]); @@ -607,96 +611,32 @@ void DrawPlayer(struct PlayerInfo *player) else DrawLevelElement(jx, jy, EL_EMPTY); - /* draw player himself */ + /* ----------------------------------------------------------------------- */ + /* draw player himself */ + /* ----------------------------------------------------------------------- */ + + player->GfxAction = (player->Pushing ? ACTION_PUSHING : + player->is_digging ? ACTION_DIGGING : + player->is_moving ? ACTION_MOVING : + player->snapped ? ACTION_SNAPPING : ACTION_DEFAULT); if (player->use_murphy_graphic) { - static int last_dir = MV_LEFT; - int action = (player->programmed_action ? player->programmed_action : - player->action); - boolean action_moving = - (player_is_moving || - ((action & (MV_LEFT | MV_RIGHT | MV_UP | MV_DOWN)) && - !(action & ~(MV_LEFT | MV_RIGHT | MV_UP | MV_DOWN)))); - - graphic = IMG_SP_MURPHY; + static int last_horizontal_dir = MV_LEFT; + int direction; - if (player->Pushing) - { - if (player->MovDir == MV_LEFT) - graphic = IMG_SP_MURPHY_PUSHING_LEFT; - else if (player->MovDir == MV_RIGHT) - graphic = IMG_SP_MURPHY_PUSHING_RIGHT; - else if (player->MovDir & (MV_UP | MV_DOWN) && last_dir == MV_LEFT) - graphic = IMG_SP_MURPHY_PUSHING_LEFT; - else if (player->MovDir & (MV_UP | MV_DOWN) && last_dir == MV_RIGHT) - graphic = IMG_SP_MURPHY_PUSHING_RIGHT; - } - else if (player->snapped) - { - if (player->MovDir == MV_LEFT) - graphic = IMG_SP_MURPHY_SNAPPING_LEFT; - else if (player->MovDir == MV_RIGHT) - graphic = IMG_SP_MURPHY_SNAPPING_RIGHT; - else if (player->MovDir == MV_UP) - graphic = IMG_SP_MURPHY_SNAPPING_UP; - else if (player->MovDir == MV_DOWN) - graphic = IMG_SP_MURPHY_SNAPPING_DOWN; - } - else if (action_moving) - { - if (player->MovDir == MV_LEFT) - graphic = IMG_SP_MURPHY_MOVING_LEFT; - else if (player->MovDir == MV_RIGHT) - graphic = IMG_SP_MURPHY_MOVING_RIGHT; - else if (player->MovDir & (MV_UP | MV_DOWN) && last_dir == MV_LEFT) - graphic = IMG_SP_MURPHY_MOVING_LEFT; - else if (player->MovDir & (MV_UP | MV_DOWN) && last_dir == MV_RIGHT) - graphic = IMG_SP_MURPHY_MOVING_RIGHT; - else - graphic = IMG_SP_MURPHY_MOVING_LEFT; + if (player->MovDir == MV_LEFT || player->MovDir == MV_RIGHT) + last_horizontal_dir = player->MovDir; - frame = getGraphicAnimationFrame(graphic, -1); - } + direction = (player->snapped ? player->MovDir : last_horizontal_dir); - if (player->MovDir == MV_LEFT || player->MovDir == MV_RIGHT) - last_dir = player->MovDir; + graphic = el_act_dir2img(EL_SP_MURPHY, player->GfxAction, direction); } else - { - if (player->MovDir == MV_LEFT) - graphic = (player->Pushing ? IMG_PLAYER1_PUSHING_LEFT : - player->is_digging ? IMG_PLAYER1_DIGGING_LEFT : - player->is_moving ? IMG_PLAYER1_MOVING_LEFT : - player->snapped ? IMG_PLAYER1_SNAPPING_LEFT : - IMG_PLAYER1_LEFT); - else if (player->MovDir == MV_RIGHT) - graphic = (player->Pushing ? IMG_PLAYER1_PUSHING_RIGHT : - player->is_digging ? IMG_PLAYER1_DIGGING_RIGHT : - player->is_moving ? IMG_PLAYER1_MOVING_RIGHT : - player->snapped ? IMG_PLAYER1_SNAPPING_RIGHT : - IMG_PLAYER1_RIGHT); - else if (player->MovDir == MV_UP) - graphic = (player->Pushing ? IMG_PLAYER1_PUSHING_UP : - player->is_digging ? IMG_PLAYER1_DIGGING_UP : - player->is_moving ? IMG_PLAYER1_MOVING_UP : - player->snapped ? IMG_PLAYER1_SNAPPING_UP : - IMG_PLAYER1_UP); - else /* MV_DOWN || MV_NO_MOVING */ - graphic = (player->Pushing ? IMG_PLAYER1_PUSHING_DOWN : - player->is_digging ? IMG_PLAYER1_DIGGING_DOWN : - player->is_moving ? IMG_PLAYER1_MOVING_DOWN : - player->snapped ? IMG_PLAYER1_SNAPPING_DOWN : - IMG_PLAYER1_DOWN); - - graphic = PLAYER_NR_GFX(graphic, player->index_nr); + graphic = el_act_dir2img(player->element_nr, player->GfxAction, + player->MovDir); -#if 0 - frame = player->Frame; -#else - frame = getGraphicAnimationFrame(graphic, player->Frame); -#endif - } + frame = getGraphicAnimationFrame(graphic, player->Frame); if (player->GfxPos) { @@ -709,11 +649,6 @@ void DrawPlayer(struct PlayerInfo *player) if (!setup.soft_scrolling && ScreenMovPos) sxx = syy = 0; -#if 0 - if (player->Frame) - printf("-> %d\n", player->Frame); -#endif - DrawGraphicShiftedThruMask(sx, sy, sxx, syy, graphic, frame, NO_CUTTING); if (SHIELD_ON(player)) @@ -725,11 +660,11 @@ void DrawPlayer(struct PlayerInfo *player) DrawGraphicShiftedThruMask(sx, sy, sxx, syy, graphic, frame, NO_CUTTING); } -#if 0 - if (player->Pushing && player->GfxPos) -#else + /* ----------------------------------------------------------------------- */ + /* draw things the player is pushing, if needed */ + /* ----------------------------------------------------------------------- */ + if (player->Pushing && player_is_moving) -#endif { int px = SCREENX(next_jx), py = SCREENY(next_jy); @@ -742,35 +677,12 @@ void DrawPlayer(struct PlayerInfo *player) { int element = Feld[next_jx][next_jy]; int graphic = el2img(element); -#if 1 int frame = 0; -#endif if ((sxx || syy) && IS_PUSHABLE(element)) { graphic = el_act_dir2img(element, ACTION_MOVING, player->MovDir); -#if 1 - frame = getGraphicAnimationFrame(graphic, player->GfxPos); - frame = getGraphicAnimationFrame(graphic, player->Frame); -#endif - -#if 0 - printf("-> %d [%d]\n", player->Frame, player->GfxPos); -#endif - -#if 0 - /* !!! FIX !!! */ - if (player->MovDir == MV_LEFT) - frame = 3 - frame; -#endif - -#if 0 - frame = (player->GfxPos / (TILEX / 4)); - - if (player->MovDir == MV_RIGHT) - frame = (frame + 4) % 4; -#endif } DrawGraphicShifted(px, py, sxx, syy, graphic, frame, @@ -778,32 +690,14 @@ void DrawPlayer(struct PlayerInfo *player) } } - /* draw things in front of player (active dynamite or dynabombs) */ + /* ----------------------------------------------------------------------- */ + /* draw things in front of player (active dynamite or dynabombs) */ + /* ----------------------------------------------------------------------- */ if (IS_ACTIVE_BOMB(element)) { graphic = el2img(element); - -#if 0 - if (element == EL_DYNAMITE_ACTIVE) - { - if ((frame = (96 - MovDelay[jx][jy]) / 12) > 6) - frame = 6; - } - else - { - if ((frame = ((96 - MovDelay[jx][jy]) / 6) % 8) > 3) - frame = 7 - frame; - } -#else - -#if 0 - frame = getGraphicAnimationFrame(graphic, 96 - MovDelay[jx][jy]); -#else frame = getGraphicAnimationFrame(graphic, GfxFrame[jx][jy]); -#endif - -#endif if (game.emulation == EMU_SUPAPLEX) DrawGraphic(sx, sy, IMG_SP_DISK_RED, frame); @@ -825,7 +719,10 @@ void DrawPlayer(struct PlayerInfo *player) DrawGraphicThruMask(SCREENX(last_jx), SCREENY(last_jy), graphic, frame); } - /* draw elements that stay over the player */ + /* ----------------------------------------------------------------------- */ + /* draw elements that stay over the player */ + /* ----------------------------------------------------------------------- */ + /* handle the field the player is leaving ... */ if (player_is_moving && IS_OVER_PLAYER(last_element)) DrawLevelField(last_jx, last_jy); -- 2.34.1