-
-#define MAX_HELPSCREEN_ELS 10
-#define HA_NEXT -999
-#define HA_END -1000
-
-static long helpscreen_state;
-static int helpscreen_step[MAX_HELPSCREEN_ELS];
-static int helpscreen_frame[MAX_HELPSCREEN_ELS];
-
-#if 0
-static int helpscreen_action[] =
-{
- IMG_PLAYER_1_MOVING_DOWN, 16,
- IMG_PLAYER_1_MOVING_UP, 16,
- IMG_PLAYER_1_MOVING_LEFT, 16,
- IMG_PLAYER_1_MOVING_RIGHT, 16,
- IMG_PLAYER_1_PUSHING_LEFT, 16,
- IMG_PLAYER_1_PUSHING_RIGHT, 16, HA_NEXT,
-
- IMG_SAND, -1, HA_NEXT,
-
- IMG_EMPTY_SPACE, -1, HA_NEXT,
-
- IMG_QUICKSAND_EMPTY, -1, HA_NEXT,
-
- IMG_STEELWALL, -1, HA_NEXT,
-
- IMG_WALL, -1, HA_NEXT,
-
- IMG_EXPANDABLE_WALL_GROWING_LEFT, 20,
- IMG_WALL, 50,
- IMG_EMPTY_SPACE, 20,
- IMG_EXPANDABLE_WALL_GROWING_RIGHT, 20,
- IMG_WALL, 50,
- IMG_EMPTY_SPACE, 20,
- IMG_EXPANDABLE_WALL_GROWING_UP, 20,
- IMG_WALL, 50,
- IMG_EMPTY_SPACE, 20,
- IMG_EXPANDABLE_WALL_GROWING_DOWN, 20,
- IMG_WALL, 50,
- IMG_EMPTY_SPACE, 20, HA_NEXT,
-
- IMG_INVISIBLE_WALL, -1, HA_NEXT,
-
- IMG_WALL_SLIPPERY, -1, HA_NEXT,
-
- IMG_FONT_GAME_INFO, -1, HA_NEXT,
-
- IMG_EMERALD, -1, HA_NEXT,
-
- IMG_DIAMOND, -1, HA_NEXT,
-
- IMG_BD_DIAMOND, -1, HA_NEXT,
-
- IMG_EMERALD_YELLOW, 50,
- IMG_EMERALD_RED, 50,
- IMG_EMERALD_PURPLE, 50, HA_NEXT,
-
- IMG_BD_ROCK, -1, HA_NEXT,
-
- IMG_BOMB, 100,
- IMG_EXPLOSION, 16,
- IMG_EMPTY_SPACE, 10, HA_NEXT,
-
- IMG_NUT, 100,
- IMG_NUT_BREAKING, 6,
- IMG_EMERALD, 20, HA_NEXT,
-
- IMG_WALL_EMERALD, 100,
- IMG_EXPLOSION, 16,
- IMG_EMERALD, 20, HA_NEXT,
-
- IMG_WALL_DIAMOND, 100,
- IMG_EXPLOSION, 16,
- IMG_DIAMOND, 20, HA_NEXT,
-
- IMG_WALL_BD_DIAMOND, 100,
- IMG_EXPLOSION, 16,
- IMG_BD_DIAMOND, 20, HA_NEXT,
-
- IMG_WALL_EMERALD_YELLOW, 100,
- IMG_EXPLOSION, 16,
- IMG_EMERALD_YELLOW, 20,
- IMG_WALL_EMERALD_RED, 100,
- IMG_EXPLOSION, 16,
- IMG_EMERALD_RED, 20,
- IMG_WALL_EMERALD_PURPLE, 100,
- IMG_EXPLOSION, 16,
- IMG_EMERALD_PURPLE, 20, HA_NEXT,
-
- IMG_ACID, -1, HA_NEXT,
-
- IMG_KEY_1, 50,
- IMG_KEY_2, 50,
- IMG_KEY_3, 50,
- IMG_KEY_4, 50, HA_NEXT,
-
- IMG_GATE_1, 50,
- IMG_GATE_2, 50,
- IMG_GATE_3, 50,
- IMG_GATE_4, 50, HA_NEXT,
-
- IMG_GATE_1_GRAY, 50,
- IMG_GATE_2_GRAY, 50,
- IMG_GATE_3_GRAY, 50,
- IMG_GATE_4_GRAY, 50, HA_NEXT,
-
- IMG_DYNAMITE, -1, HA_NEXT,
-
- IMG_DYNAMITE_ACTIVE, 96,
- IMG_EXPLOSION, 16,
- IMG_EMPTY_SPACE, 20, HA_NEXT,
-
- IMG_DYNABOMB_ACTIVE, 100,
- IMG_EXPLOSION, 16,
- IMG_EMPTY_SPACE, 20, HA_NEXT,
-
- IMG_DYNABOMB_INCREASE_NUMBER, -1, HA_NEXT,
-
- IMG_DYNABOMB_INCREASE_SIZE, -1, HA_NEXT,
-
- IMG_DYNABOMB_INCREASE_POWER, -1, HA_NEXT,
-
- IMG_SPACESHIP_RIGHT, 16,
- IMG_SPACESHIP_UP, 16,
- IMG_SPACESHIP_LEFT, 16,
- IMG_SPACESHIP_DOWN, 16, HA_NEXT,
-
- IMG_BUG_RIGHT, 16,
- IMG_BUG_UP, 16,
- IMG_BUG_LEFT, 16,
- IMG_BUG_DOWN, 16, HA_NEXT,
-
- IMG_BD_BUTTERFLY, -1, HA_NEXT,
-
- IMG_BD_FIREFLY, -1, HA_NEXT,
-
- IMG_PACMAN_RIGHT, 16,
- IMG_PACMAN_UP, 16,
- IMG_PACMAN_LEFT, 16,
- IMG_PACMAN_DOWN, 16, HA_NEXT,
-
- IMG_YAMYAM, -1, HA_NEXT,
-
- IMG_DARK_YAMYAM, -1, HA_NEXT,
-
- IMG_ROBOT, -1, HA_NEXT,
-
- IMG_MOLE_MOVING_RIGHT, 16,
- IMG_MOLE_MOVING_UP, 16,
- IMG_MOLE_MOVING_LEFT, 16,
- IMG_MOLE_MOVING_DOWN, 16, HA_NEXT,
-
- IMG_PENGUIN_MOVING_RIGHT, 16,
- IMG_PENGUIN_MOVING_UP, 16,
- IMG_PENGUIN_MOVING_LEFT, 16,
- IMG_PENGUIN_MOVING_DOWN, 16, HA_NEXT,
-
- IMG_PIG_MOVING_RIGHT, 16,
- IMG_PIG_MOVING_UP, 16,
- IMG_PIG_MOVING_LEFT, 16,
- IMG_PIG_MOVING_DOWN, 16, HA_NEXT,
-
- IMG_DRAGON_MOVING_RIGHT, 16,
- IMG_DRAGON_MOVING_UP, 16,
- IMG_DRAGON_MOVING_LEFT, 16,
- IMG_DRAGON_MOVING_DOWN, 16, HA_NEXT,
-
- IMG_SATELLITE, -1, HA_NEXT,
-
- IMG_ROBOT_WHEEL, 50,
- IMG_ROBOT_WHEEL_ACTIVE, 100, HA_NEXT,
-
- IMG_LAMP, 50,
- IMG_LAMP_ACTIVE, 50, HA_NEXT,
-
- IMG_TIME_ORB_FULL, 50,
- IMG_TIME_ORB_EMPTY, 50, HA_NEXT,
-
- IMG_AMOEBA_DROP, 50,
- IMG_AMOEBA_GROWING, 6,
- IMG_AMOEBA_WET, 20, HA_NEXT,
-
- IMG_AMOEBA_DEAD, -1, HA_NEXT,
-
- IMG_AMOEBA_WET, -1, HA_NEXT,
-
- IMG_AMOEBA_WET, 100,
- IMG_AMOEBA_GROWING, 6, HA_NEXT,
-
- IMG_AMOEBA_FULL, 50,
- IMG_AMOEBA_DEAD, 50,
- IMG_EXPLOSION, 16,
- IMG_DIAMOND, 20, HA_NEXT,
-
- IMG_GAME_OF_LIFE, -1, HA_NEXT,
-
- IMG_BIOMAZE, -1, HA_NEXT,
-
- IMG_MAGIC_WALL_ACTIVE, -1, HA_NEXT,
-
- IMG_BD_MAGIC_WALL_ACTIVE, -1, HA_NEXT,
-
- IMG_EXIT_CLOSED, 200,
- IMG_EXIT_OPENING, 16,
- IMG_EXIT_OPEN, 100, HA_NEXT,
-
- IMG_EXIT_OPEN, -1, HA_NEXT,
-
- IMG_SOKOBAN_OBJECT, -1, HA_NEXT,
-
- IMG_SOKOBAN_FIELD_EMPTY, -1, HA_NEXT,
-
- IMG_SOKOBAN_FIELD_FULL, -1, HA_NEXT,
-
- IMG_SPEED_PILL, -1, HA_NEXT,
-
- HA_END
-};
-#endif
-
-static char *helpscreen_eltext[][2] =
-{
- {"THE HERO:", "(Is _this_ guy good old Rockford?)"},
- {"Normal sand:", "You can dig through it"},
- {"Empty field:", "You can walk through it"},
- {"Quicksand: You cannot pass it,", "but rocks can fall through it"},
- {"Massive Wall:", "Nothing can go through it"},
- {"Normal Wall: You can't go through", "it, but you can bomb it away"},
- {"Growing Wall: Grows in several di-", "rections if there is an empty field"},
- {"Invisible Wall: Behaves like normal","wall, but is invisible"},
- {"Old Wall: Like normal wall, but", "some things can fall down from it"},
- {"Letter Wall: Looks like a letter,", "behaves like a normal wall"},
- {"Emerald: You must collect enough of","them to finish a level"},
- {"Diamond: Counts as 3 emeralds, but", "can be destroyed by rocks"},
- {"Diamond (BD style): Counts like one","emerald and behaves a bit different"},
- {"Colorful Gems:", "Seem to behave like Emeralds"},
- {"Rock: Smashes several things;", "Can be moved by the player"},
- {"Bomb: You can move it, but be", "careful when dropping it"},
- {"Nut: Throw a rock on it to open it;","Each nut contains an emerald"},
- {"Wall with an emerald inside:", "Bomb the wall away to get it"},
- {"Wall with a diamond inside:", "Bomb the wall away to get it"},
- {"Wall with BD style diamond inside:", "Bomb the wall away to get it"},
- {"Wall with colorful gem inside:", "Bomb the wall away to get it"},
- {"Acid: Things that fall in are gone", "forever (including our hero)"},
- {"Key: Opens the door that has the", "same color (red/yellow/green/blue)"},
- {"Door: Can be opened by the key", "with the same color"},
- {"Door: You have to find out the", "right color of the key for it"},
- {"Dynamite: Collect it and use it to", "destroy walls or kill enemies"},
- {"Dynamite: This one explodes after", "a few seconds"},
- {"Dyna Bomb: Explodes in 4 directions","with variable explosion size"},
- {"Dyna Bomb: Increases the number of", "dyna bombs available at a time"},
- {"Dyna Bomb: Increases the size of", "explosion of dyna bombs"},
- {"Dyna Bomb: Increases the power of", "explosion of dyna bombs"},
- {"Spaceship: Moves at the left side", "of walls; don't touch it!"},
- {"Bug: Moves at the right side", "of walls; don't touch it!"},
- {"Butterfly: Moves at the right side", "of walls; don't touch it!"},
- {"Firefly: Moves at the left side", "of walls; don't touch it!"},
- {"Pacman: Eats the amoeba and you,", "if you're not careful"},
- {"Cruncher: Eats diamonds and you,", "if you're not careful"},
- {"Cruncher (BD style):", "Eats almost everything"},
- {"Robot: Tries to kill the player", ""},
- {"The mole: Eats the amoeba and turns","empty space into normal sand"},
- {"The penguin: Guide him to the exit,","but keep him away from monsters!"},
- {"The Pig: Harmless, but eats all", "gems it can get"},
- {"The Dragon: Breathes fire,", "especially to some monsters"},
- {"Sonde: Follows you everywhere;", "harmless, but may block your way"},
- {"Magic Wheel: Touch it to get rid of","the robots for some seconds"},
- {"Light Bulb: All of them must be", "switched on to finish a level"},
- {"Extra Time Orb: Adds some seconds", "to the time available for the level"},
- {"Amoeba Drop: Grows to an amoeba on", "the ground - don't touch it"},
- {"Dead Amoeba: Does not grow, but", "can still kill bugs and spaceships"},
- {"Normal Amoeba: Grows through empty", "fields, sand and quicksand"},
- {"Dropping Amoeba: This one makes", "drops that grow to a new amoeba"},
- {"Living Amoeba (BD style): Contains", "other element, when surrounded"},
- {"Game Of Life: Behaves like the well","known 'Game Of Life' (2333 style)"},
- {"Biomaze: A bit like the 'Game Of", "Life', but builds crazy mazes"},
- {"Magic Wall: Changes rocks, emeralds","and diamonds when they pass it"},
- {"Magic Wall (BD style):", "Changes rocks and BD style diamonds"},
- {"Exit door: Opens if you have enough","emeralds to finish the level"},
- {"Open exit door: Enter here to leave","the level and exit the actual game"},
- {"Sokoban element: Object which must", "be pushed to an empty field"},
- {"Sokoban element: Empty field where", "a Sokoban object can be placed on"},
- {"Sokoban element: Field with object", "which can be pushed away"},
- {"Speed pill: Lets the player run", "twice as fast as normally"},
-};
-static int num_helpscreen_els = sizeof(helpscreen_eltext) / (2*sizeof(char *));
-
-#if 0
-static char *helpscreen_music[][3] =
-{
- { "Alchemy", "Ian Boddy", "Drive" },
- { "The Chase", "Propaganda", "A Secret Wish" },
- { "Network 23", "Tangerine Dream", "Exit" },
- { "Czardasz", "Robert Pieculewicz", "Czardasz" },
- { "21st Century Common Man", "Tangerine Dream", "Tyger" },
- { "Voyager", "The Alan Parsons Project","Pyramid" },
- { "Twilight Painter", "Tangerine Dream", "Heartbreakers" }
-};
-#endif
-
-static int num_helpscreen_music = 7;
-static int helpscreen_musicpos;
-
-#if 1
-void DrawHelpScreenElAction(int start, boolean init)