From 6435b79b71c4033de78ab3e611ee63f6a2147874 Mon Sep 17 00:00:00 2001 From: Holger Schemel Date: Thu, 13 Mar 2003 00:29:36 +0100 Subject: [PATCH] rnd-20030313-1-src --- Makefile | 4 +- src/conf_e2g.c | 64 ++++ src/conf_gfx.c | 144 ++++++++ src/conf_gfx.h | 794 ++++++++++++++++++++++--------------------- src/conf_snd.c | 12 +- src/conf_snd.h | 8 +- src/conftime.h | 2 +- src/game.c | 19 +- src/init.c | 6 +- src/libgame/misc.c | 84 +++-- src/libgame/misc.h | 11 + src/libgame/random.c | 83 +++-- src/libgame/random.h | 4 +- src/main.h | 4 +- src/screens.c | 16 +- src/tools.c | 13 +- 16 files changed, 768 insertions(+), 500 deletions(-) diff --git a/Makefile b/Makefile index a5b3d976..ea7b1525 100644 --- a/Makefile +++ b/Makefile @@ -49,8 +49,8 @@ CROSS_PATH_WIN32=/usr/local/cross-tools/i386-mingw32msvc SRC_DIR = src MAKE_CMD = $(MAKE) -C $(SRC_DIR) -DEFAULT_TARGET = x11 -# DEFAULT_TARGET = sdl +# DEFAULT_TARGET = x11 +DEFAULT_TARGET = sdl all: @$(MAKE_CMD) TARGET=$(DEFAULT_TARGET) diff --git a/src/conf_e2g.c b/src/conf_e2g.c index 90cd8775..73e1a725 100644 --- a/src/conf_e2g.c +++ b/src/conf_e2g.c @@ -1904,6 +1904,22 @@ element_to_graphic[] = EL_PLAYER_1, ACTION_DIGGING, MV_BIT_RIGHT, IMG_PLAYER_1_DIGGING_RIGHT }, + { + EL_PLAYER_1, ACTION_COLLECTING, MV_BIT_DOWN, + IMG_PLAYER_1_COLLECTING_DOWN + }, + { + EL_PLAYER_1, ACTION_COLLECTING, MV_BIT_UP, + IMG_PLAYER_1_COLLECTING_UP + }, + { + EL_PLAYER_1, ACTION_COLLECTING, MV_BIT_LEFT, + IMG_PLAYER_1_COLLECTING_LEFT + }, + { + EL_PLAYER_1, ACTION_COLLECTING, MV_BIT_RIGHT, + IMG_PLAYER_1_COLLECTING_RIGHT + }, { EL_PLAYER_1, ACTION_PUSHING, MV_BIT_DOWN, IMG_PLAYER_1_PUSHING_DOWN @@ -1988,6 +2004,22 @@ element_to_graphic[] = EL_PLAYER_2, ACTION_DIGGING, MV_BIT_RIGHT, IMG_PLAYER_2_DIGGING_RIGHT }, + { + EL_PLAYER_2, ACTION_COLLECTING, MV_BIT_DOWN, + IMG_PLAYER_2_COLLECTING_DOWN + }, + { + EL_PLAYER_2, ACTION_COLLECTING, MV_BIT_UP, + IMG_PLAYER_2_COLLECTING_UP + }, + { + EL_PLAYER_2, ACTION_COLLECTING, MV_BIT_LEFT, + IMG_PLAYER_2_COLLECTING_LEFT + }, + { + EL_PLAYER_2, ACTION_COLLECTING, MV_BIT_RIGHT, + IMG_PLAYER_2_COLLECTING_RIGHT + }, { EL_PLAYER_2, ACTION_PUSHING, MV_BIT_DOWN, IMG_PLAYER_2_PUSHING_DOWN @@ -2072,6 +2104,22 @@ element_to_graphic[] = EL_PLAYER_3, ACTION_DIGGING, MV_BIT_RIGHT, IMG_PLAYER_3_DIGGING_RIGHT }, + { + EL_PLAYER_3, ACTION_COLLECTING, MV_BIT_DOWN, + IMG_PLAYER_3_COLLECTING_DOWN + }, + { + EL_PLAYER_3, ACTION_COLLECTING, MV_BIT_UP, + IMG_PLAYER_3_COLLECTING_UP + }, + { + EL_PLAYER_3, ACTION_COLLECTING, MV_BIT_LEFT, + IMG_PLAYER_3_COLLECTING_LEFT + }, + { + EL_PLAYER_3, ACTION_COLLECTING, MV_BIT_RIGHT, + IMG_PLAYER_3_COLLECTING_RIGHT + }, { EL_PLAYER_3, ACTION_PUSHING, MV_BIT_DOWN, IMG_PLAYER_3_PUSHING_DOWN @@ -2156,6 +2204,22 @@ element_to_graphic[] = EL_PLAYER_4, ACTION_DIGGING, MV_BIT_RIGHT, IMG_PLAYER_4_DIGGING_RIGHT }, + { + EL_PLAYER_4, ACTION_COLLECTING, MV_BIT_DOWN, + IMG_PLAYER_4_COLLECTING_DOWN + }, + { + EL_PLAYER_4, ACTION_COLLECTING, MV_BIT_UP, + IMG_PLAYER_4_COLLECTING_UP + }, + { + EL_PLAYER_4, ACTION_COLLECTING, MV_BIT_LEFT, + IMG_PLAYER_4_COLLECTING_LEFT + }, + { + EL_PLAYER_4, ACTION_COLLECTING, MV_BIT_RIGHT, + IMG_PLAYER_4_COLLECTING_RIGHT + }, { EL_PLAYER_4, ACTION_PUSHING, MV_BIT_DOWN, IMG_PLAYER_4_PUSHING_DOWN diff --git a/src/conf_gfx.c b/src/conf_gfx.c index be598547..a898cd15 100644 --- a/src/conf_gfx.c +++ b/src/conf_gfx.c @@ -2222,6 +2222,30 @@ struct ConfigInfo image_config[] = { "player_1.digging.right.frames", "4" }, { "player_1.digging.right.start_frame", "1" }, { "player_1.digging.right.delay", "4" }, + { "player_1.collecting.down", "RocksHeroes.pcx" }, + { "player_1.collecting.down.xpos", "0" }, + { "player_1.collecting.down.ypos", "0" }, + { "player_1.collecting.down.frames", "4" }, + { "player_1.collecting.down.start_frame", "1" }, + { "player_1.collecting.down.delay", "4" }, + { "player_1.collecting.up", "RocksHeroes.pcx" }, + { "player_1.collecting.up.xpos", "4" }, + { "player_1.collecting.up.ypos", "0" }, + { "player_1.collecting.up.frames", "4" }, + { "player_1.collecting.up.start_frame", "1" }, + { "player_1.collecting.up.delay", "4" }, + { "player_1.collecting.left", "RocksHeroes.pcx" }, + { "player_1.collecting.left.xpos", "0" }, + { "player_1.collecting.left.ypos", "1" }, + { "player_1.collecting.left.frames", "4" }, + { "player_1.collecting.left.start_frame", "1" }, + { "player_1.collecting.left.delay", "4" }, + { "player_1.collecting.right", "RocksHeroes.pcx" }, + { "player_1.collecting.right.xpos", "4" }, + { "player_1.collecting.right.ypos", "1" }, + { "player_1.collecting.right.frames", "4" }, + { "player_1.collecting.right.start_frame", "1" }, + { "player_1.collecting.right.delay", "4" }, { "player_1.pushing.down", "RocksHeroes.pcx" }, { "player_1.pushing.down.xpos", "0" }, { "player_1.pushing.down.ypos", "0" }, @@ -2286,34 +2310,74 @@ struct ConfigInfo image_config[] = { "player_2.moving.down.xpos", "0" }, { "player_2.moving.down.ypos", "3" }, { "player_2.moving.down.frames", "4" }, + { "player_2.moving.down.start_frame", "1" }, + { "player_2.moving.down.delay", "4" }, { "player_2.moving.up", "RocksHeroes.pcx" }, { "player_2.moving.up.xpos", "4" }, { "player_2.moving.up.ypos", "3" }, { "player_2.moving.up.frames", "4" }, + { "player_2.moving.up.start_frame", "1" }, + { "player_2.moving.up.delay", "4" }, { "player_2.moving.left", "RocksHeroes.pcx" }, { "player_2.moving.left.xpos", "0" }, { "player_2.moving.left.ypos", "4" }, { "player_2.moving.left.frames", "4" }, + { "player_2.moving.left.start_frame", "1" }, + { "player_2.moving.left.delay", "4" }, { "player_2.moving.right", "RocksHeroes.pcx" }, { "player_2.moving.right.xpos", "4" }, { "player_2.moving.right.ypos", "4" }, { "player_2.moving.right.frames", "4" }, + { "player_2.moving.right.start_frame", "1" }, + { "player_2.moving.right.delay", "4" }, { "player_2.digging.down", "RocksHeroes.pcx" }, { "player_2.digging.down.xpos", "0" }, { "player_2.digging.down.ypos", "3" }, { "player_2.digging.down.frames", "4" }, + { "player_2.digging.down.start_frame", "1" }, + { "player_2.digging.down.delay", "4" }, { "player_2.digging.up", "RocksHeroes.pcx" }, { "player_2.digging.up.xpos", "4" }, { "player_2.digging.up.ypos", "3" }, { "player_2.digging.up.frames", "4" }, + { "player_2.digging.up.start_frame", "1" }, + { "player_2.digging.up.delay", "4" }, { "player_2.digging.left", "RocksHeroes.pcx" }, { "player_2.digging.left.xpos", "0" }, { "player_2.digging.left.ypos", "4" }, { "player_2.digging.left.frames", "4" }, + { "player_2.digging.left.start_frame", "1" }, + { "player_2.digging.left.delay", "4" }, { "player_2.digging.right", "RocksHeroes.pcx" }, { "player_2.digging.right.xpos", "4" }, { "player_2.digging.right.ypos", "4" }, { "player_2.digging.right.frames", "4" }, + { "player_2.digging.right.start_frame", "1" }, + { "player_2.digging.right.delay", "4" }, + { "player_2.collecting.down", "RocksHeroes.pcx" }, + { "player_2.collecting.down.xpos", "0" }, + { "player_2.collecting.down.ypos", "3" }, + { "player_2.collecting.down.frames", "4" }, + { "player_2.collecting.down.start_frame", "1" }, + { "player_2.collecting.down.delay", "4" }, + { "player_2.collecting.up", "RocksHeroes.pcx" }, + { "player_2.collecting.up.xpos", "4" }, + { "player_2.collecting.up.ypos", "3" }, + { "player_2.collecting.up.frames", "4" }, + { "player_2.collecting.up.start_frame", "1" }, + { "player_2.collecting.up.delay", "4" }, + { "player_2.collecting.left", "RocksHeroes.pcx" }, + { "player_2.collecting.left.xpos", "0" }, + { "player_2.collecting.left.ypos", "4" }, + { "player_2.collecting.left.frames", "4" }, + { "player_2.collecting.left.start_frame", "1" }, + { "player_2.collecting.left.delay", "4" }, + { "player_2.collecting.right", "RocksHeroes.pcx" }, + { "player_2.collecting.right.xpos", "4" }, + { "player_2.collecting.right.ypos", "4" }, + { "player_2.collecting.right.frames", "4" }, + { "player_2.collecting.right.start_frame", "1" }, + { "player_2.collecting.right.delay", "4" }, { "player_2.pushing.down", "RocksHeroes.pcx" }, { "player_2.pushing.down.xpos", "0" }, { "player_2.pushing.down.ypos", "3" }, @@ -2378,34 +2442,74 @@ struct ConfigInfo image_config[] = { "player_3.moving.down.xpos", "0" }, { "player_3.moving.down.ypos", "6" }, { "player_3.moving.down.frames", "4" }, + { "player_3.moving.down.start_frame", "1" }, + { "player_3.moving.down.delay", "4" }, { "player_3.moving.up", "RocksHeroes.pcx" }, { "player_3.moving.up.xpos", "4" }, { "player_3.moving.up.ypos", "6" }, { "player_3.moving.up.frames", "4" }, + { "player_3.moving.up.start_frame", "1" }, + { "player_3.moving.up.delay", "4" }, { "player_3.moving.left", "RocksHeroes.pcx" }, { "player_3.moving.left.xpos", "0" }, { "player_3.moving.left.ypos", "7" }, { "player_3.moving.left.frames", "4" }, + { "player_3.moving.left.start_frame", "1" }, + { "player_3.moving.left.delay", "4" }, { "player_3.moving.right", "RocksHeroes.pcx" }, { "player_3.moving.right.xpos", "4" }, { "player_3.moving.right.ypos", "7" }, { "player_3.moving.right.frames", "4" }, + { "player_3.moving.right.start_frame", "1" }, + { "player_3.moving.right.delay", "4" }, { "player_3.digging.down", "RocksHeroes.pcx" }, { "player_3.digging.down.xpos", "0" }, { "player_3.digging.down.ypos", "6" }, { "player_3.digging.down.frames", "4" }, + { "player_3.digging.down.start_frame", "1" }, + { "player_3.digging.down.delay", "4" }, { "player_3.digging.up", "RocksHeroes.pcx" }, { "player_3.digging.up.xpos", "4" }, { "player_3.digging.up.ypos", "6" }, { "player_3.digging.up.frames", "4" }, + { "player_3.digging.up.start_frame", "1" }, + { "player_3.digging.up.delay", "4" }, { "player_3.digging.left", "RocksHeroes.pcx" }, { "player_3.digging.left.xpos", "0" }, { "player_3.digging.left.ypos", "7" }, { "player_3.digging.left.frames", "4" }, + { "player_3.digging.left.start_frame", "1" }, + { "player_3.digging.left.delay", "4" }, { "player_3.digging.right", "RocksHeroes.pcx" }, { "player_3.digging.right.xpos", "4" }, { "player_3.digging.right.ypos", "7" }, { "player_3.digging.right.frames", "4" }, + { "player_3.digging.right.start_frame", "1" }, + { "player_3.digging.right.delay", "4" }, + { "player_3.collecting.down", "RocksHeroes.pcx" }, + { "player_3.collecting.down.xpos", "0" }, + { "player_3.collecting.down.ypos", "6" }, + { "player_3.collecting.down.frames", "4" }, + { "player_3.collecting.down.start_frame", "1" }, + { "player_3.collecting.down.delay", "4" }, + { "player_3.collecting.up", "RocksHeroes.pcx" }, + { "player_3.collecting.up.xpos", "4" }, + { "player_3.collecting.up.ypos", "6" }, + { "player_3.collecting.up.frames", "4" }, + { "player_3.collecting.up.start_frame", "1" }, + { "player_3.collecting.up.delay", "4" }, + { "player_3.collecting.left", "RocksHeroes.pcx" }, + { "player_3.collecting.left.xpos", "0" }, + { "player_3.collecting.left.ypos", "7" }, + { "player_3.collecting.left.frames", "4" }, + { "player_3.collecting.left.start_frame", "1" }, + { "player_3.collecting.left.delay", "4" }, + { "player_3.collecting.right", "RocksHeroes.pcx" }, + { "player_3.collecting.right.xpos", "4" }, + { "player_3.collecting.right.ypos", "7" }, + { "player_3.collecting.right.frames", "4" }, + { "player_3.collecting.right.start_frame", "1" }, + { "player_3.collecting.right.delay", "4" }, { "player_3.pushing.down", "RocksHeroes.pcx" }, { "player_3.pushing.down.xpos", "0" }, { "player_3.pushing.down.ypos", "6" }, @@ -2470,34 +2574,74 @@ struct ConfigInfo image_config[] = { "player_4.moving.down.xpos", "0" }, { "player_4.moving.down.ypos", "9" }, { "player_4.moving.down.frames", "4" }, + { "player_4.moving.down.start_frame", "1" }, + { "player_4.moving.down.delay", "4" }, { "player_4.moving.up", "RocksHeroes.pcx" }, { "player_4.moving.up.xpos", "4" }, { "player_4.moving.up.ypos", "9" }, { "player_4.moving.up.frames", "4" }, + { "player_4.moving.up.start_frame", "1" }, + { "player_4.moving.up.delay", "4" }, { "player_4.moving.left", "RocksHeroes.pcx" }, { "player_4.moving.left.xpos", "0" }, { "player_4.moving.left.ypos", "10" }, { "player_4.moving.left.frames", "4" }, + { "player_4.moving.left.start_frame", "1" }, + { "player_4.moving.left.delay", "4" }, { "player_4.moving.right", "RocksHeroes.pcx" }, { "player_4.moving.right.xpos", "4" }, { "player_4.moving.right.ypos", "10" }, { "player_4.moving.right.frames", "4" }, + { "player_4.moving.right.start_frame", "1" }, + { "player_4.moving.right.delay", "4" }, { "player_4.digging.down", "RocksHeroes.pcx" }, { "player_4.digging.down.xpos", "0" }, { "player_4.digging.down.ypos", "9" }, { "player_4.digging.down.frames", "4" }, + { "player_4.digging.down.start_frame", "1" }, + { "player_4.digging.down.delay", "4" }, { "player_4.digging.up", "RocksHeroes.pcx" }, { "player_4.digging.up.xpos", "4" }, { "player_4.digging.up.ypos", "9" }, { "player_4.digging.up.frames", "4" }, + { "player_4.digging.up.start_frame", "1" }, + { "player_4.digging.up.delay", "4" }, { "player_4.digging.left", "RocksHeroes.pcx" }, { "player_4.digging.left.xpos", "0" }, { "player_4.digging.left.ypos", "10" }, { "player_4.digging.left.frames", "4" }, + { "player_4.digging.left.start_frame", "1" }, + { "player_4.digging.left.delay", "4" }, { "player_4.digging.right", "RocksHeroes.pcx" }, { "player_4.digging.right.xpos", "4" }, { "player_4.digging.right.ypos", "10" }, { "player_4.digging.right.frames", "4" }, + { "player_4.digging.right.start_frame", "1" }, + { "player_4.digging.right.delay", "4" }, + { "player_4.collecting.down", "RocksHeroes.pcx" }, + { "player_4.collecting.down.xpos", "0" }, + { "player_4.collecting.down.ypos", "9" }, + { "player_4.collecting.down.frames", "4" }, + { "player_4.collecting.down.start_frame", "1" }, + { "player_4.collecting.down.delay", "4" }, + { "player_4.collecting.up", "RocksHeroes.pcx" }, + { "player_4.collecting.up.xpos", "4" }, + { "player_4.collecting.up.ypos", "9" }, + { "player_4.collecting.up.frames", "4" }, + { "player_4.collecting.up.start_frame", "1" }, + { "player_4.collecting.up.delay", "4" }, + { "player_4.collecting.left", "RocksHeroes.pcx" }, + { "player_4.collecting.left.xpos", "0" }, + { "player_4.collecting.left.ypos", "10" }, + { "player_4.collecting.left.frames", "4" }, + { "player_4.collecting.left.start_frame", "1" }, + { "player_4.collecting.left.delay", "4" }, + { "player_4.collecting.right", "RocksHeroes.pcx" }, + { "player_4.collecting.right.xpos", "4" }, + { "player_4.collecting.right.ypos", "10" }, + { "player_4.collecting.right.frames", "4" }, + { "player_4.collecting.right.start_frame", "1" }, + { "player_4.collecting.right.delay", "4" }, { "player_4.pushing.down", "RocksHeroes.pcx" }, { "player_4.pushing.down.xpos", "0" }, { "player_4.pushing.down.ypos", "9" }, diff --git a/src/conf_gfx.h b/src/conf_gfx.h index 87886239..f5885250 100644 --- a/src/conf_gfx.h +++ b/src/conf_gfx.h @@ -472,395 +472,411 @@ #define IMG_PLAYER_1_DIGGING_UP 451 #define IMG_PLAYER_1_DIGGING_LEFT 452 #define IMG_PLAYER_1_DIGGING_RIGHT 453 -#define IMG_PLAYER_1_PUSHING_DOWN 454 -#define IMG_PLAYER_1_PUSHING_UP 455 -#define IMG_PLAYER_1_PUSHING_LEFT 456 -#define IMG_PLAYER_1_PUSHING_RIGHT 457 -#define IMG_PLAYER_1_SNAPPING_DOWN 458 -#define IMG_PLAYER_1_SNAPPING_UP 459 -#define IMG_PLAYER_1_SNAPPING_LEFT 460 -#define IMG_PLAYER_1_SNAPPING_RIGHT 461 -#define IMG_PLAYER_2 462 -#define IMG_PLAYER_2_EDITOR 463 -#define IMG_PLAYER_2_DOWN 464 -#define IMG_PLAYER_2_UP 465 -#define IMG_PLAYER_2_LEFT 466 -#define IMG_PLAYER_2_RIGHT 467 -#define IMG_PLAYER_2_MOVING_DOWN 468 -#define IMG_PLAYER_2_MOVING_UP 469 -#define IMG_PLAYER_2_MOVING_LEFT 470 -#define IMG_PLAYER_2_MOVING_RIGHT 471 -#define IMG_PLAYER_2_DIGGING_DOWN 472 -#define IMG_PLAYER_2_DIGGING_UP 473 -#define IMG_PLAYER_2_DIGGING_LEFT 474 -#define IMG_PLAYER_2_DIGGING_RIGHT 475 -#define IMG_PLAYER_2_PUSHING_DOWN 476 -#define IMG_PLAYER_2_PUSHING_UP 477 -#define IMG_PLAYER_2_PUSHING_LEFT 478 -#define IMG_PLAYER_2_PUSHING_RIGHT 479 -#define IMG_PLAYER_2_SNAPPING_DOWN 480 -#define IMG_PLAYER_2_SNAPPING_UP 481 -#define IMG_PLAYER_2_SNAPPING_LEFT 482 -#define IMG_PLAYER_2_SNAPPING_RIGHT 483 -#define IMG_PLAYER_3 484 -#define IMG_PLAYER_3_EDITOR 485 -#define IMG_PLAYER_3_DOWN 486 -#define IMG_PLAYER_3_UP 487 -#define IMG_PLAYER_3_LEFT 488 -#define IMG_PLAYER_3_RIGHT 489 -#define IMG_PLAYER_3_MOVING_DOWN 490 -#define IMG_PLAYER_3_MOVING_UP 491 -#define IMG_PLAYER_3_MOVING_LEFT 492 -#define IMG_PLAYER_3_MOVING_RIGHT 493 -#define IMG_PLAYER_3_DIGGING_DOWN 494 -#define IMG_PLAYER_3_DIGGING_UP 495 -#define IMG_PLAYER_3_DIGGING_LEFT 496 -#define IMG_PLAYER_3_DIGGING_RIGHT 497 -#define IMG_PLAYER_3_PUSHING_DOWN 498 -#define IMG_PLAYER_3_PUSHING_UP 499 -#define IMG_PLAYER_3_PUSHING_LEFT 500 -#define IMG_PLAYER_3_PUSHING_RIGHT 501 -#define IMG_PLAYER_3_SNAPPING_DOWN 502 -#define IMG_PLAYER_3_SNAPPING_UP 503 -#define IMG_PLAYER_3_SNAPPING_LEFT 504 -#define IMG_PLAYER_3_SNAPPING_RIGHT 505 -#define IMG_PLAYER_4 506 -#define IMG_PLAYER_4_EDITOR 507 -#define IMG_PLAYER_4_DOWN 508 -#define IMG_PLAYER_4_UP 509 -#define IMG_PLAYER_4_LEFT 510 -#define IMG_PLAYER_4_RIGHT 511 -#define IMG_PLAYER_4_MOVING_DOWN 512 -#define IMG_PLAYER_4_MOVING_UP 513 -#define IMG_PLAYER_4_MOVING_LEFT 514 -#define IMG_PLAYER_4_MOVING_RIGHT 515 -#define IMG_PLAYER_4_DIGGING_DOWN 516 -#define IMG_PLAYER_4_DIGGING_UP 517 -#define IMG_PLAYER_4_DIGGING_LEFT 518 -#define IMG_PLAYER_4_DIGGING_RIGHT 519 -#define IMG_PLAYER_4_PUSHING_DOWN 520 -#define IMG_PLAYER_4_PUSHING_UP 521 -#define IMG_PLAYER_4_PUSHING_LEFT 522 -#define IMG_PLAYER_4_PUSHING_RIGHT 523 -#define IMG_PLAYER_4_SNAPPING_DOWN 524 -#define IMG_PLAYER_4_SNAPPING_UP 525 -#define IMG_PLAYER_4_SNAPPING_LEFT 526 -#define IMG_PLAYER_4_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_TITLE_1 794 -#define IMG_FONT_TITLE_1_LEVELS 795 -#define IMG_FONT_TITLE_2 796 -#define IMG_FONT_MENU_1 797 -#define IMG_FONT_MENU_2 798 -#define IMG_FONT_TEXT_1 799 -#define IMG_FONT_TEXT_1_LEVELS 800 -#define IMG_FONT_TEXT_1_SCORES 801 -#define IMG_FONT_TEXT_1_PREVIEW 802 -#define IMG_FONT_TEXT_2 803 -#define IMG_FONT_TEXT_2_LEVELS 804 -#define IMG_FONT_TEXT_2_SCORES 805 -#define IMG_FONT_TEXT_2_PREVIEW 806 -#define IMG_FONT_TEXT_3 807 -#define IMG_FONT_TEXT_3_LEVELS 808 -#define IMG_FONT_TEXT_3_SCORES 809 -#define IMG_FONT_TEXT_3_PREVIEW 810 -#define IMG_FONT_TEXT_4 811 -#define IMG_FONT_TEXT_4_LEVELS 812 -#define IMG_FONT_TEXT_4_SCORES 813 -#define IMG_FONT_INPUT 814 -#define IMG_FONT_INPUT_MAIN 815 -#define IMG_FONT_INPUT_ACTIVE 816 -#define IMG_FONT_INPUT_ACTIVE_MAIN 817 -#define IMG_FONT_INPUT_ACTIVE_SETUP 818 -#define IMG_FONT_OPTION_OFF 819 -#define IMG_FONT_OPTION_ON 820 -#define IMG_FONT_VALUE_1 821 -#define IMG_FONT_VALUE_2 822 -#define IMG_FONT_VALUE_OLD 823 -#define IMG_FONT_LEVEL_NUMBER 824 -#define IMG_FONT_TAPE_RECORDER 825 -#define IMG_GLOBAL_BORDER 826 -#define IMG_GLOBAL_DOOR 827 -#define IMG_EDITOR_ELEMENT_BORDER 828 -#define IMG_BACKGROUND 829 -#define IMG_BACKGROUND_MAIN 830 -#define IMG_BACKGROUND_LEVELS 831 -#define IMG_BACKGROUND_SCORES 832 -#define IMG_BACKGROUND_EDITOR 833 -#define IMG_BACKGROUND_INFO 834 -#define IMG_BACKGROUND_SETUP 835 -#define IMG_BACKGROUND_DOOR 836 -#define IMG_INFO_FONT_EM_1 837 -#define IMG_INFO_FONT_EM_2 838 -#define IMG_INFO_FONT_EM_3 839 -#define IMG_INFO_FONT_EM_4 840 -#define IMG_INFO_FONT_EM_5 841 +#define IMG_PLAYER_1_COLLECTING_DOWN 454 +#define IMG_PLAYER_1_COLLECTING_UP 455 +#define IMG_PLAYER_1_COLLECTING_LEFT 456 +#define IMG_PLAYER_1_COLLECTING_RIGHT 457 +#define IMG_PLAYER_1_PUSHING_DOWN 458 +#define IMG_PLAYER_1_PUSHING_UP 459 +#define IMG_PLAYER_1_PUSHING_LEFT 460 +#define IMG_PLAYER_1_PUSHING_RIGHT 461 +#define IMG_PLAYER_1_SNAPPING_DOWN 462 +#define IMG_PLAYER_1_SNAPPING_UP 463 +#define IMG_PLAYER_1_SNAPPING_LEFT 464 +#define IMG_PLAYER_1_SNAPPING_RIGHT 465 +#define IMG_PLAYER_2 466 +#define IMG_PLAYER_2_EDITOR 467 +#define IMG_PLAYER_2_DOWN 468 +#define IMG_PLAYER_2_UP 469 +#define IMG_PLAYER_2_LEFT 470 +#define IMG_PLAYER_2_RIGHT 471 +#define IMG_PLAYER_2_MOVING_DOWN 472 +#define IMG_PLAYER_2_MOVING_UP 473 +#define IMG_PLAYER_2_MOVING_LEFT 474 +#define IMG_PLAYER_2_MOVING_RIGHT 475 +#define IMG_PLAYER_2_DIGGING_DOWN 476 +#define IMG_PLAYER_2_DIGGING_UP 477 +#define IMG_PLAYER_2_DIGGING_LEFT 478 +#define IMG_PLAYER_2_DIGGING_RIGHT 479 +#define IMG_PLAYER_2_COLLECTING_DOWN 480 +#define IMG_PLAYER_2_COLLECTING_UP 481 +#define IMG_PLAYER_2_COLLECTING_LEFT 482 +#define IMG_PLAYER_2_COLLECTING_RIGHT 483 +#define IMG_PLAYER_2_PUSHING_DOWN 484 +#define IMG_PLAYER_2_PUSHING_UP 485 +#define IMG_PLAYER_2_PUSHING_LEFT 486 +#define IMG_PLAYER_2_PUSHING_RIGHT 487 +#define IMG_PLAYER_2_SNAPPING_DOWN 488 +#define IMG_PLAYER_2_SNAPPING_UP 489 +#define IMG_PLAYER_2_SNAPPING_LEFT 490 +#define IMG_PLAYER_2_SNAPPING_RIGHT 491 +#define IMG_PLAYER_3 492 +#define IMG_PLAYER_3_EDITOR 493 +#define IMG_PLAYER_3_DOWN 494 +#define IMG_PLAYER_3_UP 495 +#define IMG_PLAYER_3_LEFT 496 +#define IMG_PLAYER_3_RIGHT 497 +#define IMG_PLAYER_3_MOVING_DOWN 498 +#define IMG_PLAYER_3_MOVING_UP 499 +#define IMG_PLAYER_3_MOVING_LEFT 500 +#define IMG_PLAYER_3_MOVING_RIGHT 501 +#define IMG_PLAYER_3_DIGGING_DOWN 502 +#define IMG_PLAYER_3_DIGGING_UP 503 +#define IMG_PLAYER_3_DIGGING_LEFT 504 +#define IMG_PLAYER_3_DIGGING_RIGHT 505 +#define IMG_PLAYER_3_COLLECTING_DOWN 506 +#define IMG_PLAYER_3_COLLECTING_UP 507 +#define IMG_PLAYER_3_COLLECTING_LEFT 508 +#define IMG_PLAYER_3_COLLECTING_RIGHT 509 +#define IMG_PLAYER_3_PUSHING_DOWN 510 +#define IMG_PLAYER_3_PUSHING_UP 511 +#define IMG_PLAYER_3_PUSHING_LEFT 512 +#define IMG_PLAYER_3_PUSHING_RIGHT 513 +#define IMG_PLAYER_3_SNAPPING_DOWN 514 +#define IMG_PLAYER_3_SNAPPING_UP 515 +#define IMG_PLAYER_3_SNAPPING_LEFT 516 +#define IMG_PLAYER_3_SNAPPING_RIGHT 517 +#define IMG_PLAYER_4 518 +#define IMG_PLAYER_4_EDITOR 519 +#define IMG_PLAYER_4_DOWN 520 +#define IMG_PLAYER_4_UP 521 +#define IMG_PLAYER_4_LEFT 522 +#define IMG_PLAYER_4_RIGHT 523 +#define IMG_PLAYER_4_MOVING_DOWN 524 +#define IMG_PLAYER_4_MOVING_UP 525 +#define IMG_PLAYER_4_MOVING_LEFT 526 +#define IMG_PLAYER_4_MOVING_RIGHT 527 +#define IMG_PLAYER_4_DIGGING_DOWN 528 +#define IMG_PLAYER_4_DIGGING_UP 529 +#define IMG_PLAYER_4_DIGGING_LEFT 530 +#define IMG_PLAYER_4_DIGGING_RIGHT 531 +#define IMG_PLAYER_4_COLLECTING_DOWN 532 +#define IMG_PLAYER_4_COLLECTING_UP 533 +#define IMG_PLAYER_4_COLLECTING_LEFT 534 +#define IMG_PLAYER_4_COLLECTING_RIGHT 535 +#define IMG_PLAYER_4_PUSHING_DOWN 536 +#define IMG_PLAYER_4_PUSHING_UP 537 +#define IMG_PLAYER_4_PUSHING_LEFT 538 +#define IMG_PLAYER_4_PUSHING_RIGHT 539 +#define IMG_PLAYER_4_SNAPPING_DOWN 540 +#define IMG_PLAYER_4_SNAPPING_UP 541 +#define IMG_PLAYER_4_SNAPPING_LEFT 542 +#define IMG_PLAYER_4_SNAPPING_RIGHT 543 +#define IMG_EXPLOSION 544 +#define IMG_TWINKLE_BLUE 545 +#define IMG_TWINKLE_WHITE 546 +#define IMG_STEELWALL_TOPLEFT 547 +#define IMG_STEELWALL_TOPRIGHT 548 +#define IMG_STEELWALL_BOTTOMLEFT 549 +#define IMG_STEELWALL_BOTTOMRIGHT 550 +#define IMG_STEELWALL_HORIZONTAL 551 +#define IMG_STEELWALL_VERTICAL 552 +#define IMG_STEELWALL_TOPLEFT_EDITOR 553 +#define IMG_STEELWALL_TOPRIGHT_EDITOR 554 +#define IMG_STEELWALL_BOTTOMLEFT_EDITOR 555 +#define IMG_STEELWALL_BOTTOMRIGHT_EDITOR 556 +#define IMG_STEELWALL_HORIZONTAL_EDITOR 557 +#define IMG_STEELWALL_VERTICAL_EDITOR 558 +#define IMG_INVISIBLE_STEELWALL_TOPLEFT 559 +#define IMG_INVISIBLE_STEELWALL_TOPRIGHT 560 +#define IMG_INVISIBLE_STEELWALL_BOTTOMLEFT 561 +#define IMG_INVISIBLE_STEELWALL_BOTTOMRIGHT 562 +#define IMG_INVISIBLE_STEELWALL_HORIZONTAL 563 +#define IMG_INVISIBLE_STEELWALL_VERTICAL 564 +#define IMG_INVISIBLE_STEELWALL_TOPLEFT_EDITOR 565 +#define IMG_INVISIBLE_STEELWALL_TOPRIGHT_EDITOR 566 +#define IMG_INVISIBLE_STEELWALL_BOTTOMLEFT_EDITOR 567 +#define IMG_INVISIBLE_STEELWALL_BOTTOMRIGHT_EDITOR 568 +#define IMG_INVISIBLE_STEELWALL_HORIZONTAL_EDITOR 569 +#define IMG_INVISIBLE_STEELWALL_VERTICAL_EDITOR 570 +#define IMG_ARROW_LEFT 571 +#define IMG_ARROW_RIGHT 572 +#define IMG_ARROW_UP 573 +#define IMG_ARROW_DOWN 574 +#define IMG_CHAR_SPACE 575 +#define IMG_CHAR_EXCLAM 576 +#define IMG_CHAR_QUOTEDBL 577 +#define IMG_CHAR_NUMBERSIGN 578 +#define IMG_CHAR_DOLLAR 579 +#define IMG_CHAR_PROCENT 580 +#define IMG_CHAR_AMPERSAND 581 +#define IMG_CHAR_APOSTROPHE 582 +#define IMG_CHAR_PARENLEFT 583 +#define IMG_CHAR_PARENRIGHT 584 +#define IMG_CHAR_ASTERISK 585 +#define IMG_CHAR_PLUS 586 +#define IMG_CHAR_COMMA 587 +#define IMG_CHAR_MINUS 588 +#define IMG_CHAR_PERIOD 589 +#define IMG_CHAR_SLASH 590 +#define IMG_CHAR_0 591 +#define IMG_CHAR_1 592 +#define IMG_CHAR_2 593 +#define IMG_CHAR_3 594 +#define IMG_CHAR_4 595 +#define IMG_CHAR_5 596 +#define IMG_CHAR_6 597 +#define IMG_CHAR_7 598 +#define IMG_CHAR_8 599 +#define IMG_CHAR_9 600 +#define IMG_CHAR_COLON 601 +#define IMG_CHAR_SEMICOLON 602 +#define IMG_CHAR_LESS 603 +#define IMG_CHAR_EQUAL 604 +#define IMG_CHAR_GREATER 605 +#define IMG_CHAR_QUESTION 606 +#define IMG_CHAR_AT 607 +#define IMG_CHAR_A 608 +#define IMG_CHAR_B 609 +#define IMG_CHAR_C 610 +#define IMG_CHAR_D 611 +#define IMG_CHAR_E 612 +#define IMG_CHAR_F 613 +#define IMG_CHAR_G 614 +#define IMG_CHAR_H 615 +#define IMG_CHAR_I 616 +#define IMG_CHAR_J 617 +#define IMG_CHAR_K 618 +#define IMG_CHAR_L 619 +#define IMG_CHAR_M 620 +#define IMG_CHAR_N 621 +#define IMG_CHAR_O 622 +#define IMG_CHAR_P 623 +#define IMG_CHAR_Q 624 +#define IMG_CHAR_R 625 +#define IMG_CHAR_S 626 +#define IMG_CHAR_T 627 +#define IMG_CHAR_U 628 +#define IMG_CHAR_V 629 +#define IMG_CHAR_W 630 +#define IMG_CHAR_X 631 +#define IMG_CHAR_Y 632 +#define IMG_CHAR_Z 633 +#define IMG_CHAR_AE 634 +#define IMG_CHAR_OE 635 +#define IMG_CHAR_UE 636 +#define IMG_CHAR_COPYRIGHT 637 +#define IMG_CHAR_UNDERSCORE 638 +#define IMG_CHAR_EMPTY 639 +#define IMG_CHAR_DEGREE 640 +#define IMG_CHAR_TM 641 +#define IMG_CHAR_CURSOR 642 +#define IMG_CUSTOM_1 643 +#define IMG_CUSTOM_2 644 +#define IMG_CUSTOM_3 645 +#define IMG_CUSTOM_4 646 +#define IMG_CUSTOM_5 647 +#define IMG_CUSTOM_6 648 +#define IMG_CUSTOM_7 649 +#define IMG_CUSTOM_8 650 +#define IMG_CUSTOM_9 651 +#define IMG_CUSTOM_10 652 +#define IMG_CUSTOM_11 653 +#define IMG_CUSTOM_12 654 +#define IMG_CUSTOM_13 655 +#define IMG_CUSTOM_14 656 +#define IMG_CUSTOM_15 657 +#define IMG_CUSTOM_16 658 +#define IMG_CUSTOM_17 659 +#define IMG_CUSTOM_18 660 +#define IMG_CUSTOM_19 661 +#define IMG_CUSTOM_20 662 +#define IMG_CUSTOM_21 663 +#define IMG_CUSTOM_22 664 +#define IMG_CUSTOM_23 665 +#define IMG_CUSTOM_24 666 +#define IMG_CUSTOM_25 667 +#define IMG_CUSTOM_26 668 +#define IMG_CUSTOM_27 669 +#define IMG_CUSTOM_28 670 +#define IMG_CUSTOM_29 671 +#define IMG_CUSTOM_30 672 +#define IMG_CUSTOM_31 673 +#define IMG_CUSTOM_32 674 +#define IMG_CUSTOM_33 675 +#define IMG_CUSTOM_34 676 +#define IMG_CUSTOM_35 677 +#define IMG_CUSTOM_36 678 +#define IMG_CUSTOM_37 679 +#define IMG_CUSTOM_38 680 +#define IMG_CUSTOM_39 681 +#define IMG_CUSTOM_40 682 +#define IMG_CUSTOM_41 683 +#define IMG_CUSTOM_42 684 +#define IMG_CUSTOM_43 685 +#define IMG_CUSTOM_44 686 +#define IMG_CUSTOM_45 687 +#define IMG_CUSTOM_46 688 +#define IMG_CUSTOM_47 689 +#define IMG_CUSTOM_48 690 +#define IMG_CUSTOM_49 691 +#define IMG_CUSTOM_50 692 +#define IMG_CUSTOM_51 693 +#define IMG_CUSTOM_52 694 +#define IMG_CUSTOM_53 695 +#define IMG_CUSTOM_54 696 +#define IMG_CUSTOM_55 697 +#define IMG_CUSTOM_56 698 +#define IMG_CUSTOM_57 699 +#define IMG_CUSTOM_58 700 +#define IMG_CUSTOM_59 701 +#define IMG_CUSTOM_60 702 +#define IMG_CUSTOM_61 703 +#define IMG_CUSTOM_62 704 +#define IMG_CUSTOM_63 705 +#define IMG_CUSTOM_64 706 +#define IMG_CUSTOM_65 707 +#define IMG_CUSTOM_66 708 +#define IMG_CUSTOM_67 709 +#define IMG_CUSTOM_68 710 +#define IMG_CUSTOM_69 711 +#define IMG_CUSTOM_70 712 +#define IMG_CUSTOM_71 713 +#define IMG_CUSTOM_72 714 +#define IMG_CUSTOM_73 715 +#define IMG_CUSTOM_74 716 +#define IMG_CUSTOM_75 717 +#define IMG_CUSTOM_76 718 +#define IMG_CUSTOM_77 719 +#define IMG_CUSTOM_78 720 +#define IMG_CUSTOM_79 721 +#define IMG_CUSTOM_80 722 +#define IMG_CUSTOM_81 723 +#define IMG_CUSTOM_82 724 +#define IMG_CUSTOM_83 725 +#define IMG_CUSTOM_84 726 +#define IMG_CUSTOM_85 727 +#define IMG_CUSTOM_86 728 +#define IMG_CUSTOM_87 729 +#define IMG_CUSTOM_88 730 +#define IMG_CUSTOM_89 731 +#define IMG_CUSTOM_90 732 +#define IMG_CUSTOM_91 733 +#define IMG_CUSTOM_92 734 +#define IMG_CUSTOM_93 735 +#define IMG_CUSTOM_94 736 +#define IMG_CUSTOM_95 737 +#define IMG_CUSTOM_96 738 +#define IMG_CUSTOM_97 739 +#define IMG_CUSTOM_98 740 +#define IMG_CUSTOM_99 741 +#define IMG_CUSTOM_100 742 +#define IMG_CUSTOM_101 743 +#define IMG_CUSTOM_102 744 +#define IMG_CUSTOM_103 745 +#define IMG_CUSTOM_104 746 +#define IMG_CUSTOM_105 747 +#define IMG_CUSTOM_106 748 +#define IMG_CUSTOM_107 749 +#define IMG_CUSTOM_108 750 +#define IMG_CUSTOM_109 751 +#define IMG_CUSTOM_110 752 +#define IMG_CUSTOM_111 753 +#define IMG_CUSTOM_112 754 +#define IMG_CUSTOM_113 755 +#define IMG_CUSTOM_114 756 +#define IMG_CUSTOM_115 757 +#define IMG_CUSTOM_116 758 +#define IMG_CUSTOM_117 759 +#define IMG_CUSTOM_118 760 +#define IMG_CUSTOM_119 761 +#define IMG_CUSTOM_120 762 +#define IMG_CUSTOM_121 763 +#define IMG_CUSTOM_122 764 +#define IMG_CUSTOM_123 765 +#define IMG_CUSTOM_124 766 +#define IMG_CUSTOM_125 767 +#define IMG_CUSTOM_126 768 +#define IMG_CUSTOM_127 769 +#define IMG_CUSTOM_128 770 +#define IMG_TOON_1 771 +#define IMG_TOON_2 772 +#define IMG_TOON_3 773 +#define IMG_TOON_4 774 +#define IMG_TOON_5 775 +#define IMG_TOON_6 776 +#define IMG_TOON_7 777 +#define IMG_TOON_8 778 +#define IMG_TOON_9 779 +#define IMG_TOON_10 780 +#define IMG_TOON_11 781 +#define IMG_TOON_12 782 +#define IMG_TOON_13 783 +#define IMG_TOON_14 784 +#define IMG_TOON_15 785 +#define IMG_TOON_16 786 +#define IMG_TOON_17 787 +#define IMG_TOON_18 788 +#define IMG_TOON_19 789 +#define IMG_TOON_20 790 +#define IMG_MENU_CALIBRATE_RED 791 +#define IMG_MENU_CALIBRATE_BLUE 792 +#define IMG_MENU_CALIBRATE_YELLOW 793 +#define IMG_MENU_BUTTON 794 +#define IMG_MENU_BUTTON_ACTIVE 795 +#define IMG_MENU_BUTTON_LEFT 796 +#define IMG_MENU_BUTTON_RIGHT 797 +#define IMG_MENU_BUTTON_UP 798 +#define IMG_MENU_BUTTON_DOWN 799 +#define IMG_MENU_BUTTON_LEFT_ACTIVE 800 +#define IMG_MENU_BUTTON_RIGHT_ACTIVE 801 +#define IMG_MENU_BUTTON_UP_ACTIVE 802 +#define IMG_MENU_BUTTON_DOWN_ACTIVE 803 +#define IMG_MENU_SCROLLBAR 804 +#define IMG_MENU_SCROLLBAR_ACTIVE 805 +#define IMG_FONT_INITIAL_1 806 +#define IMG_FONT_INITIAL_2 807 +#define IMG_FONT_INITIAL_3 808 +#define IMG_FONT_INITIAL_4 809 +#define IMG_FONT_TITLE_1 810 +#define IMG_FONT_TITLE_1_LEVELS 811 +#define IMG_FONT_TITLE_2 812 +#define IMG_FONT_MENU_1 813 +#define IMG_FONT_MENU_2 814 +#define IMG_FONT_TEXT_1 815 +#define IMG_FONT_TEXT_1_LEVELS 816 +#define IMG_FONT_TEXT_1_SCORES 817 +#define IMG_FONT_TEXT_1_PREVIEW 818 +#define IMG_FONT_TEXT_2 819 +#define IMG_FONT_TEXT_2_LEVELS 820 +#define IMG_FONT_TEXT_2_SCORES 821 +#define IMG_FONT_TEXT_2_PREVIEW 822 +#define IMG_FONT_TEXT_3 823 +#define IMG_FONT_TEXT_3_LEVELS 824 +#define IMG_FONT_TEXT_3_SCORES 825 +#define IMG_FONT_TEXT_3_PREVIEW 826 +#define IMG_FONT_TEXT_4 827 +#define IMG_FONT_TEXT_4_LEVELS 828 +#define IMG_FONT_TEXT_4_SCORES 829 +#define IMG_FONT_INPUT 830 +#define IMG_FONT_INPUT_MAIN 831 +#define IMG_FONT_INPUT_ACTIVE 832 +#define IMG_FONT_INPUT_ACTIVE_MAIN 833 +#define IMG_FONT_INPUT_ACTIVE_SETUP 834 +#define IMG_FONT_OPTION_OFF 835 +#define IMG_FONT_OPTION_ON 836 +#define IMG_FONT_VALUE_1 837 +#define IMG_FONT_VALUE_2 838 +#define IMG_FONT_VALUE_OLD 839 +#define IMG_FONT_LEVEL_NUMBER 840 +#define IMG_FONT_TAPE_RECORDER 841 +#define IMG_GLOBAL_BORDER 842 +#define IMG_GLOBAL_DOOR 843 +#define IMG_EDITOR_ELEMENT_BORDER 844 +#define IMG_BACKGROUND 845 +#define IMG_BACKGROUND_MAIN 846 +#define IMG_BACKGROUND_LEVELS 847 +#define IMG_BACKGROUND_SCORES 848 +#define IMG_BACKGROUND_EDITOR 849 +#define IMG_BACKGROUND_INFO 850 +#define IMG_BACKGROUND_SETUP 851 +#define IMG_BACKGROUND_DOOR 852 +#define IMG_INFO_FONT_EM_1 853 +#define IMG_INFO_FONT_EM_2 854 +#define IMG_INFO_FONT_EM_3 855 +#define IMG_INFO_FONT_EM_4 856 +#define IMG_INFO_FONT_EM_5 857 -#define NUM_IMAGE_FILES 842 +#define NUM_IMAGE_FILES 858 #endif /* CONF_GFX_H */ diff --git a/src/conf_snd.c b/src/conf_snd.c index dc002cc7..7c61a715 100644 --- a/src/conf_snd.c +++ b/src/conf_snd.c @@ -217,14 +217,14 @@ struct ConfigInfo sound_config[] = { "game.sokoban_solving", "buing.wav" }, /* sounds for other non-game actions */ - { "menu.door_opening", "oeffnen.wav" }, - { "menu.door_closing", "oeffnen.wav" }, + { "door.opening", "oeffnen.wav" }, + { "door.closing", "oeffnen.wav" }, - { "menu.hall_of_fame", "halloffame.wav" }, - { "menu.hall_of_fame.mode_loop", "false" }, + { "background.SCORES", "halloffame.wav" }, + { "background.SCORES.mode_loop", "false" }, - { "menu.info_screen", "rhythmloop.wav" }, - { "menu.info_screen.mode_loop", "true" }, + { "background.INFO", "rhythmloop.wav" }, + { "background.INFO.mode_loop", "true" }, #if 0 { "[not used]", "antigrav.wav" }, diff --git a/src/conf_snd.h b/src/conf_snd.h index f869225d..91438f12 100644 --- a/src/conf_snd.h +++ b/src/conf_snd.h @@ -182,10 +182,10 @@ #define SND_GAME_LOSING 161 #define SND_GAME_WINNING 162 #define SND_GAME_SOKOBAN_SOLVING 163 -#define SND_MENU_DOOR_OPENING 164 -#define SND_MENU_DOOR_CLOSING 165 -#define SND_MENU_HALL_OF_FAME 166 -#define SND_MENU_INFO_SCREEN 167 +#define SND_DOOR_OPENING 164 +#define SND_DOOR_CLOSING 165 +#define SND_BACKGROUND_SCORES 166 +#define SND_BACKGROUND_INFO 167 #define NUM_SOUND_FILES 168 diff --git a/src/conftime.h b/src/conftime.h index 2024351e..49644471 100644 --- a/src/conftime.h +++ b/src/conftime.h @@ -1 +1 @@ -#define COMPILE_DATE_STRING "[2003-03-12 00:07]" +#define COMPILE_DATE_STRING "[2003-03-13 00:27]" diff --git a/src/game.c b/src/game.c index a9d0e269..4b726a43 100644 --- a/src/game.c +++ b/src/game.c @@ -658,6 +658,8 @@ void InitGame() player->is_moving = FALSE; player->is_waiting = FALSE; + player->is_digging = FALSE; + player->is_collecting = FALSE; player->move_delay = game.initial_move_delay; player->move_delay_value = game.initial_move_delay_value; @@ -5664,7 +5666,10 @@ int DigField(struct PlayerInfo *player, int element; if (player->MovPos == 0) + { player->is_digging = FALSE; + player->is_collecting = FALSE; + } if (player->MovPos == 0) player->Pushing = FALSE; @@ -6368,8 +6373,13 @@ int DigField(struct PlayerInfo *player, player->push_delay = 0; - if (Feld[x][y] != element) /* really digged something */ - player->is_digging = TRUE; + if (Feld[x][y] != element) /* really digged/collected something */ + { + if (GfxElement[x][y] == EL_SAND) + player->is_digging = TRUE; + else + player->is_collecting = TRUE; + } return MF_MOVING; } @@ -6393,7 +6403,10 @@ boolean SnapField(struct PlayerInfo *player, int dx, int dy) player->snapped = FALSE; if (player->MovPos == 0) + { player->is_digging = FALSE; + player->is_collecting = FALSE; + } return FALSE; } @@ -6411,6 +6424,8 @@ boolean SnapField(struct PlayerInfo *player, int dx, int dy) player->snapped = TRUE; player->is_digging = FALSE; + player->is_collecting = FALSE; + DrawLevelField(x, y); BackToFront(); diff --git a/src/init.c b/src/init.c index 62109f00..46f27d80 100644 --- a/src/init.c +++ b/src/init.c @@ -2462,7 +2462,7 @@ static void InitArtworkConfig() special_id_suffix, ignore_image_tokens); InitSoundList(sound_config, NUM_SOUND_FILES, sound_config_suffix, sound_id_prefix, action_id_suffix, dummy, - dummy, ignore_sound_tokens); + special_id_suffix, ignore_sound_tokens); } static void InitMixer() @@ -2785,8 +2785,10 @@ void OpenAll() InitCounter(); - InitJoysticks(); InitRND(NEW_RANDOMIZE); + InitSimpleRND(NEW_RANDOMIZE); + + InitJoysticks(); InitVideoDisplay(); InitVideoBuffer(&backbuffer, &window, WIN_XSIZE, WIN_YSIZE, DEFAULT_DEPTH, diff --git a/src/libgame/misc.c b/src/libgame/misc.c index e5cdfe26..d94b37d5 100644 --- a/src/libgame/misc.c +++ b/src/libgame/misc.c @@ -261,74 +261,66 @@ void WaitUntilDelayReached(unsigned long *counter_var, unsigned long delay) /* random generator functions */ /* ------------------------------------------------------------------------- */ +#if 0 unsigned int SimpleRND(unsigned int max) { -#if defined(TARGET_SDL) - static unsigned long root = 654321; - unsigned long current_ms; + return (random_linux_libc(RND_FREE) % max); +} - current_ms = SDL_GetTicks(); - root = root * 4253261 + current_ms; - return (root % max); -#else - static unsigned long root = 654321; - struct timeval current_time; +unsigned int InitSimpleRND(long seed) +{ + if (seed == NEW_RANDOMIZE) + { + struct timeval current_time; - gettimeofday(¤t_time, NULL); - root = root * 4253261 + current_time.tv_sec + current_time.tv_usec; - return (root % max); -#endif -} + gettimeofday(¤t_time, NULL); + seed = (long)current_time.tv_usec; + } -#ifdef DEBUG -static unsigned int last_RND_value = 0; + srandom_linux_libc(RND_FREE, (unsigned int) seed); -unsigned int last_RND() -{ - return last_RND_value; + return (unsigned int) seed; } -#endif unsigned int RND(unsigned int max) { -#ifdef DEBUG - return (last_RND_value = random_linux_libc() % max); -#else - return (random_linux_libc() % max); -#endif + return (random_linux_libc(RND_GAME) % max); } unsigned int InitRND(long seed) { -#if defined(TARGET_SDL) - unsigned long current_ms; - if (seed == NEW_RANDOMIZE) { - current_ms = SDL_GetTicks(); - srandom_linux_libc((unsigned int) current_ms); - return (unsigned int) current_ms; - } - else - { - srandom_linux_libc((unsigned int) seed); - return (unsigned int) seed; + struct timeval current_time; + + gettimeofday(¤t_time, NULL); + seed = (long)current_time.tv_usec; } -#else - struct timeval current_time; + srandom_linux_libc(RND_GAME, (unsigned int) seed); + + return (unsigned int) seed; +} +#endif + +unsigned int init_random_number(int nr, long seed) +{ if (seed == NEW_RANDOMIZE) { + struct timeval current_time; + gettimeofday(¤t_time, NULL); - srandom_linux_libc((unsigned int) current_time.tv_usec); - return (unsigned int) current_time.tv_usec; - } - else - { - srandom_linux_libc((unsigned int) seed); - return (unsigned int) seed; + seed = (long)current_time.tv_usec; } -#endif + + srandom_linux_libc(nr, (unsigned int) seed); + + return (unsigned int) seed; +} + +unsigned int get_random_number(int nr, unsigned int max) +{ + return (random_linux_libc(nr) % max); } diff --git a/src/libgame/misc.h b/src/libgame/misc.h index 18565c72..6b05533a 100644 --- a/src/libgame/misc.h +++ b/src/libgame/misc.h @@ -27,6 +27,11 @@ /* values for InitRND() */ #define NEW_RANDOMIZE -1 +#define InitRND(seed) init_random_number(0, seed) +#define InitSimpleRND(seed) init_random_number(1, seed) +#define RND(max) get_random_number(0, max) +#define SimpleRND(max) get_random_number(1, max) + /* values for Error() */ #define ERR_RETURN 0 #define ERR_RETURN_LINE (1 << 0) @@ -65,9 +70,15 @@ boolean FrameReached(unsigned long *, unsigned long); boolean DelayReached(unsigned long *, unsigned long); void WaitUntilDelayReached(unsigned long *, unsigned long); +#if 0 unsigned int SimpleRND(unsigned int); +unsigned int InitSimpleRND(long); unsigned int RND(unsigned int); unsigned int InitRND(long); +#endif + +unsigned int init_random_number(int, long); +unsigned int get_random_number(int, unsigned int); char *getLoginName(void); char *getRealName(void); diff --git a/src/libgame/random.c b/src/libgame/random.c index 08626fca..1bf4ce31 100644 --- a/src/libgame/random.c +++ b/src/libgame/random.c @@ -129,7 +129,7 @@ position of the rear pointer is just (MAX_TYPES * (rptr - state)) + TYPE_3 == TYPE_3. */ -static long int randtbl[DEG_3 + 1] = +static long int randtbl_0[DEG_3 + 1] = { TYPE_3, -851904987, -43806228, -2029755270, 1390239686, -1912102820, @@ -139,6 +139,17 @@ static long int randtbl[DEG_3 + 1] = -607508183, -205999574, -1696891592, 1492211999, -1528267240, -952028296, -189082757, 362343714, 1424981831, 2039449641, }; +static long int randtbl_1[DEG_3 + 1] = +{ + TYPE_3, + -851904987, -43806228, -2029755270, 1390239686, -1912102820, + -485608943, 1969813258, -1590463333, -1944053249, 455935928, 508023712, + -1714531963, 1800685987, -2015299881, 654595283, -1149023258, + -1470005550, -1143256056, -1325577603, -1568001885, 1275120390, + -607508183, -205999574, -1696891592, 1492211999, -1528267240, + -952028296, -189082757, 362343714, 1424981831, 2039449641, +}; + /* FPTR and RPTR are two pointers into the state info, a front and a rear pointer. These two pointers are always rand_sep places aparts, as they @@ -150,8 +161,8 @@ static long int randtbl[DEG_3 + 1] = in the initialization of randtbl) because the state table pointer is set to point to randtbl[1] (as explained below).) */ -static long int *fptr = &randtbl[SEP_3 + 1]; -static long int *rptr = &randtbl[1]; +static long int *fptr[2] = { &randtbl_0[SEP_3 + 1], &randtbl_1[SEP_3 + 1] }; +static long int *rptr[2] = { &randtbl_0[1], &randtbl_1[1] }; @@ -165,13 +176,17 @@ static long int *rptr = &randtbl[1]; indexing every time to find the address of the last element to see if the front and rear pointers have wrapped. */ -static long int *state = &randtbl[1]; +static long int *state[2] = { &randtbl_0[1], &randtbl_1[1] }; -static int rand_type = TYPE_3; -static int rand_deg = DEG_3; -static int rand_sep = SEP_3; +static int rand_type[2] = { TYPE_3, TYPE_3 }; +static int rand_deg[2] = { DEG_3, DEG_3 }; +static int rand_sep[2] = { SEP_3, SEP_3 }; -static long int *end_ptr = &randtbl[sizeof(randtbl) / sizeof(randtbl[0])]; +static long int *end_ptr[2] = +{ + &randtbl_0[sizeof(randtbl_0) / sizeof(randtbl_0[0])], + &randtbl_1[sizeof(randtbl_1) / sizeof(randtbl_1[0])] +}; /* Initialize the random number generator based on the given seed. If the type is the trivial no-state-information type, just remember the seed. @@ -182,18 +197,22 @@ static long int *end_ptr = &randtbl[sizeof(randtbl) / sizeof(randtbl[0])]; introduced by the L.C.R.N.G. Note that the initialization of randtbl[] for default usage relies on values produced by this routine. */ -void srandom_linux_libc(unsigned int x) +void srandom_linux_libc(int nr, unsigned int x) { - state[0] = x; - if (rand_type != TYPE_0) + state[nr][0] = x; + + if (rand_type[nr] != TYPE_0) { register long int i; - for (i = 1; i < rand_deg; ++i) - state[i] = (1103515145 * state[i - 1]) + 12345; - fptr = &state[rand_sep]; - rptr = &state[0]; - for (i = 0; i < 10 * rand_deg; ++i) - (void) random_linux_libc(); + + for (i = 1; i < rand_deg[nr]; ++i) + state[nr][i] = (1103515145 * state[nr][i - 1]) + 12345; + + fptr[nr] = &state[nr][rand_sep[nr]]; + rptr[nr] = &state[nr][0]; + + for (i = 0; i < 10 * rand_deg[nr]; ++i) + random_linux_libc(nr); } } @@ -208,31 +227,35 @@ void srandom_linux_libc(unsigned int x) rear pointers can't wrap on the same call by not testing the rear pointer if the front one has wrapped. Returns a 31-bit random number. */ -long int random_linux_libc() +long int random_linux_libc(int nr) { - if (rand_type == TYPE_0) + if (rand_type[nr] == TYPE_0) { - state[0] = ((state[0] * 1103515245) + 12345) & LONG_MAX; - return state[0]; + state[nr][0] = ((state[nr][0] * 1103515245) + 12345) & LONG_MAX; + return state[nr][0]; } else { long int i; - *fptr += *rptr; + + *fptr[nr] += *rptr[nr]; + /* Chucking least random bit. */ - i = (*fptr >> 1) & LONG_MAX; - ++fptr; - if (fptr >= end_ptr) + i = (*fptr[nr] >> 1) & LONG_MAX; + fptr[nr]++; + + if (fptr[nr] >= end_ptr[nr]) { - fptr = state; - ++rptr; + fptr[nr] = state[nr]; + rptr[nr]++; } else { - ++rptr; - if (rptr >= end_ptr) - rptr = state; + rptr[nr]++; + if (rptr[nr] >= end_ptr[nr]) + rptr[nr] = state[nr]; } + return i; } } diff --git a/src/libgame/random.h b/src/libgame/random.h index 540bc667..ed01196d 100644 --- a/src/libgame/random.h +++ b/src/libgame/random.h @@ -14,7 +14,7 @@ #ifndef RANDOM_H #define RANDOM_H -void srandom_linux_libc(unsigned int); -long int random_linux_libc(void); +void srandom_linux_libc(int, unsigned int); +long int random_linux_libc(int); #endif diff --git a/src/main.h b/src/main.h index 5cb0c225..4275ba7e 100644 --- a/src/main.h +++ b/src/main.h @@ -935,9 +935,9 @@ struct PlayerInfo int last_move_dir; boolean is_moving; - - boolean is_digging; boolean is_waiting; + boolean is_digging; + boolean is_collecting; unsigned long move_delay; int move_delay_value; diff --git a/src/screens.c b/src/screens.c index 285aa2cf..18fe8f12 100644 --- a/src/screens.c +++ b/src/screens.c @@ -1156,9 +1156,9 @@ void DrawHelpScreen() InitAnimation(); #if 0 - PlaySoundLoop(SND_MENU_INFO_SCREEN); + PlaySoundLoop(SND_BACKGROUND_INFO); #else - PlaySound_Menu_Start(SND_MENU_INFO_SCREEN); + PlaySound_Menu_Start(SND_BACKGROUND_INFO); #endif } @@ -1220,9 +1220,9 @@ void HandleHelpScreen(int button) must therefore periodically be reactivated with the current sound engine !!! */ #if 0 - PlaySoundLoop(SND_MENU_INFO_SCREEN); + PlaySoundLoop(SND_BACKGROUND_INFO); #else - PlaySound_Menu_Continue(SND_MENU_INFO_SCREEN); + PlaySound_Menu_Continue(SND_BACKGROUND_INFO); #endif DoAnimation(); @@ -1638,9 +1638,9 @@ void DrawHallOfFame(int highlight_position) HandleHallOfFame(highlight_position,0, 0,0, MB_MENU_INITIALIZE); #if 0 - PlaySound(SND_MENU_HALL_OF_FAME); + PlaySound(SND_BACKGROUND_SCORES); #else - PlaySound_Menu_Start(SND_MENU_HALL_OF_FAME); + PlaySound_Menu_Start(SND_BACKGROUND_SCORES); #endif } @@ -1715,7 +1715,7 @@ void HandleHallOfFame(int mx, int my, int dx, int dy, int button) if (button_released) { - FadeSound(SND_MENU_HALL_OF_FAME); + FadeSound(SND_BACKGROUND_SCORES); game_status = MAINMENU; DrawMainMenu(); } @@ -1726,7 +1726,7 @@ void HandleHallOfFame(int mx, int my, int dx, int dy, int button) { DoAnimation(); #if 1 - PlaySound_Menu_Continue(SND_MENU_HALL_OF_FAME); + PlaySound_Menu_Continue(SND_BACKGROUND_SCORES); #endif } } diff --git a/src/tools.c b/src/tools.c index 7a4f1014..4a97ee8e 100644 --- a/src/tools.c +++ b/src/tools.c @@ -562,6 +562,7 @@ void DrawPlayer(struct PlayerInfo *player) current_action = (player->Pushing ? ACTION_PUSHING : player->is_digging ? ACTION_DIGGING : + player->is_collecting ? ACTION_COLLECTING : player->is_moving ? ACTION_MOVING : player->snapped ? ACTION_SNAPPING : ACTION_DEFAULT); @@ -2086,8 +2087,8 @@ unsigned int MoveDoor(unsigned int door_state) stepsize = 20; door_delay_value = 0; - StopSound(SND_MENU_DOOR_OPENING); - StopSound(SND_MENU_DOOR_CLOSING); + StopSound(SND_DOOR_OPENING); + StopSound(SND_DOOR_CLOSING); } if (global.autoplay_leveldir) @@ -2102,9 +2103,9 @@ unsigned int MoveDoor(unsigned int door_state) { /* opening door sound has priority over simultaneously closing door */ if (door_state & (DOOR_OPEN_1 | DOOR_OPEN_2)) - PlaySoundStereo(SND_MENU_DOOR_OPENING, SOUND_MAX_RIGHT); + PlaySoundStereo(SND_DOOR_OPENING, SOUND_MIDDLE); else if (door_state & (DOOR_CLOSE_1 | DOOR_CLOSE_2)) - PlaySoundStereo(SND_MENU_DOOR_CLOSING, SOUND_MAX_RIGHT); + PlaySoundStereo(SND_DOOR_CLOSING, SOUND_MIDDLE); } start = ((door_state & DOOR_NO_DELAY) ? DXSIZE : 0); @@ -2202,8 +2203,8 @@ unsigned int MoveDoor(unsigned int door_state) if (setup.quick_doors) { - StopSound(SND_MENU_DOOR_OPENING); - StopSound(SND_MENU_DOOR_CLOSING); + StopSound(SND_DOOR_OPENING); + StopSound(SND_DOOR_CLOSING); } if (door_state & DOOR_ACTION_1) -- 2.34.1