- /* sounds for Boulder Dash style elements and actions */
- { "bd_empty_space.digging", "empty.wav" },
- { "bd_sand.digging", "schlurf.wav" },
- { "bd_diamond.collecting", "pong.wav" },
- { "bd_diamond.impact", "pling.wav" },
- { "bd_rock.pushing", "pusch.wav" },
- { "bd_rock.impact", "klopf.wav" },
- { "bd_magic_wall.activating", "quirk.wav" },
- { "bd_magic_wall.changing", "quirk.wav" },
- { "bd_magic_wall.running", "miep.wav" },
- { "bd_amoeba.growing", "amoebe.wav" },
- { "bd_amoeba.turning_to_gem", "pling.wav" },
- { "bd_amoeba.turning_to_rock", "klopf.wav" },
- { "bd_butterfly.moving", "klapper.wav" },
- { "bd_firefly.moving", "roehr.wav" },
- { "bd_exit.entering", "buing.wav" },
-
- /* sounds for Supaplex style elements and actions */
- { "sp_empty_space.digging", "empty.wav" },
- { "sp_base.digging", "base.wav" },
- { "sp_buggy_base.digging", "base.wav" },
- { "sp_buggy_base.activating", "bug.wav" },
- { "sp_infotron.collecting", "infotron.wav" },
- { "sp_infotron.impact", "pling.wav" },
- { "sp_zonk.pushing", "zonkpush.wav" },
- { "sp_zonk.impact", "zonkdown.wav" },
- { "sp_disk_red.collecting", "infotron.wav" },
- { "sp_disk_orange.pushing", "zonkpush.wav" },
- { "sp_disk_yellow.pushing", "pusch.wav" },
- { "sp_port.passing", "gate.wav" },
- { "sp_exit.entering", "buing.wav" },
- { "sp_element.exploding", "booom.wav" },
- { "sp_sniksnak.moving", SND_FILE_UNDEFINED },
- { "sp_electron.moving", SND_FILE_UNDEFINED },
- { "sp_terminal.activating", SND_FILE_UNDEFINED },
-
- /* sounds for Sokoban style elements and actions */
- { "sokoban_object.pushing", "pusch.wav" },
- { "sokoban_field.filling", "deng.wav" },
- { "sokoban_field.clearing", SND_FILE_UNDEFINED },
- { "sokoban_game.solving", "buing.wav" },
-
- /* sounds for Emerald Mine style elements and actions */
- { "empty_space.digging", "empty.wav" },
- { "sand.digging", "schlurf.wav" },
- { "emerald.collecting", "pong.wav" },
- { "emerald.impact", "pling.wav" },
- { "diamond.collecting", "pong.wav" },
- { "diamond.impact", "pling.wav" },
- { "diamond.breaking", "quirk.wav" },
- { "rock.pushing", "pusch.wav" },
- { "rock.impact", "klopf.wav" },
- { "bomb.pushing", "pusch.wav" },
- { "nut.pushing", "knurk.wav" },
- { "nut.cracking", "knack.wav" },
- { "nut.impact", "klumpf.wav" },
- { "dynamite.collecting", "pong.wav" },
- { "dynamite.placing", "deng.wav" },
- { "dynamite.burning", "zisch.wav" },
- { "key.collecting", "pong.wav" },
- { "gate.passing", "gate.wav" },
- { "bug.moving", "klapper.wav" },
- { "spaceship.moving", "roehr.wav" },
- { "yamyam.moving", SND_FILE_UNDEFINED },
- { "yamyam.waiting", "njam.wav" },
- { "yamyam.eating_diamond", SND_FILE_UNDEFINED },
- { "robot.moving", "schlurf.wav" },
- { "robot_wheel.activating", "deng.wav" },
- { "robot_wheel.running", "miep.wav" },
- { "magic_wall.activating", "quirk.wav" },
- { "magic_wall.changing", "quirk.wav" },
- { "magic_wall.running", "miep.wav" },
- { "amoeba.growing", "amoebe.wav" },
- { "amoeba.dropping", SND_FILE_UNDEFINED },
- { "acid.splashing", "blurb.wav" },
- { "quicksand.filling", SND_FILE_UNDEFINED },
- { "quicksand.slipping_through", SND_FILE_UNDEFINED },
- { "quicksand.emptying", SND_FILE_UNDEFINED },
- { "exit.opening", "oeffnen.wav" },
- { "exit.entering", "buing.wav" },
-
- /* sounds for Emerald Mine Club style elements and actions */
- { "balloon.moving", SND_FILE_UNDEFINED },
- { "balloon.pushing", "schlurf.wav" },
- { "spring.moving", SND_FILE_UNDEFINED },
- { "spring.pushing", "pusch.wav" },
- { "spring.impact", "klopf.wav" },
- { "wall.growing", SND_FILE_UNDEFINED },
-
- /* sounds for Diamond Caves style elements and actions */
- { "pearl.collecting", "pong.wav" },
- { "pearl.breaking", "knack.wav" },
- { "pearl.impact", "pling.wav" },
- { "crystal.collecting", "pong.wav" },
- { "crystal.impact", "pling.wav" },
- { "envelope.collecting", "pong.wav" },
- { "sand_invisible.digging", "schlurf.wav" },
- { "shield_passive.collecting", "pong.wav" },
- { "shield_passive.activated", SND_FILE_UNDEFINED },
- { "shield_active.collecting", "pong.wav" },
- { "shield_active.activated", SND_FILE_UNDEFINED },
- { "extra_time.collecting", "gong.wav" },
- { "mole.moving", SND_FILE_UNDEFINED },
- { "mole.eating_amoeba", "blurb.wav" },
- { "switchgate_switch.activating", SND_FILE_UNDEFINED },
- { "switchgate.opening", "oeffnen.wav" },
- { "switchgate.closing", "oeffnen.wav" },
- { "switchgate.passing", "gate.wav" },
- { "timegate_wheel.activating", "deng.wav" },
- { "timegate_wheel.running", "miep.wav" },
- { "timegate.opening", "oeffnen.wav" },
- { "timegate.closing", "oeffnen.wav" },
- { "timegate.passing", "gate.wav" },
- { "conveyor_belt_switch.activating", SND_FILE_UNDEFINED },
- { "conveyor_belt.running", SND_FILE_UNDEFINED },
- { "light_switch.activating", SND_FILE_UNDEFINED },
- { "light_switch.deactivating", SND_FILE_UNDEFINED },
-
- /* sounds for DX Boulderdash style elements and actions */
- { "dx_bomb.pushing", "pusch.wav" },
- { "trap_inactive.digging", "schlurf.wav" },
- { "trap.activating", SND_FILE_UNDEFINED },
-
- /* sounds for Rocks'n'Diamonds style elements and actions */
- { "amoeba.turning_to_gem", "pling.wav" },
- { "amoeba.turning_to_rock", "klopf.wav" },
- { "speed_pill.collecting", "pong.wav" },
- { "dynabomb_nr.collecting", "pong.wav" },
- { "dynabomb_sz.collecting", "pong.wav" },
- { "dynabomb_xl.collecting", "pong.wav" },
- { "dynabomb.placing", "deng.wav" },
- { "dynabomb.burning", "zisch.wav" },
- { "satellite.moving", SND_FILE_UNDEFINED },
- { "satellite.pushing", "pusch.wav" },
- { "lamp.activating", "deng.wav" },
- { "lamp.deactivating", "deng.wav" },
- { "time_orb_full.collecting", "gong.wav" },
- { "time_orb_full.impact", "deng.wav" },
- { "time_orb_empty.pushing", "pusch.wav" },
- { "time_orb_empty.impact", "deng.wav" },
- { "gameoflife.growing", "amoebe.wav" },
- { "biomaze.growing", "amoebe.wav" },
- { "pacman.moving", SND_FILE_UNDEFINED },
- { "pacman.eating_amoeba", SND_FILE_UNDEFINED },
- { "dark_yamyam.moving", SND_FILE_UNDEFINED },
- { "dark_yamyam.waiting", "njam.wav" },
- { "dark_yamyam.eating_any", SND_FILE_UNDEFINED },
- { "penguin.moving", SND_FILE_UNDEFINED },
- { "penguin.entering_exit", "buing.wav" },
- { "pig.moving", SND_FILE_UNDEFINED },
- { "pig.eating_gem", SND_FILE_UNDEFINED },
- { "dragon.moving", SND_FILE_UNDEFINED },
- { "dragon.breathing_fire", SND_FILE_UNDEFINED },
-
- /* sounds for generic elements and actions */
- { "player.dying", "autsch.wav" },
- { "element.exploding", "roaaar.wav" },
-
- /* sounds for other game actions */
- { "game.starting", SND_FILE_UNDEFINED },
- { "game.running_out_of_time", "gong.wav" },
- { "game.leveltime_bonus", "sirr.wav" },
- { "game.losing", "lachen.wav" },
- { "game.winning", SND_FILE_UNDEFINED },
-
- /* sounds for other non-game actions */
- { "menu.door_opening", "oeffnen.wav" },
- { "menu.door_closing", "oeffnen.wav" },
- { "menu.hall_of_fame", "halloffame.wav" },
- { "menu.info_screen", "rhythmloop.wav" },
-
-#if 0
- { "[not used]", "antigrav.wav" },
- { "[not used]", "bong.wav" },
- { "[not used]", "fuel.wav" },
- { "[not used]", "holz.wav" },
- { "[not used]", "hui.wav" },
- { "[not used]", "kabumm.wav" },
- { "[not used]", "kink.wav" },
- { "[not used]", "kling.wav" },
- { "[not used]", "krach.wav" },
- { "[not used]", "laser.wav" },
- { "[not used]", "quiek.wav" },
- { "[not used]", "rumms.wav" },
- { "[not used]", "schlopp.wav" },
- { "[not used]", "schrff.wav" },
- { "[not used]", "schwirr.wav" },
- { "[not used]", "slurp.wav" },
- { "[not used]", "sproing.wav" },
- { "[not used]", "warnton.wav" },
- { "[not used]", "whoosh.wav" },
- { "[not used]", "boom.wav" },
- { "[not used]", "exit.wav" },
-#endif
+ { ".left", MV_BIT_LEFT },
+ { ".right", MV_BIT_RIGHT },
+ { ".up", MV_BIT_UP },
+ { ".down", MV_BIT_DOWN },
+
+ { NULL, 0 }
+};
+
+struct SpecialSuffixInfo special_suffix_info[NUM_SPECIAL_GFX_ARGS + 1 + 1] =
+{
+ { ".[DEFAULT]", GAME_MODE_DEFAULT, },
+ { ".MAIN", GAME_MODE_MAIN, },
+ { ".LEVELS", GAME_MODE_LEVELS },
+ { ".SCORES", GAME_MODE_SCORES, },
+ { ".EDITOR", GAME_MODE_EDITOR, },
+ { ".INFO", GAME_MODE_INFO, },
+ { ".SETUP", GAME_MODE_SETUP, },
+ { ".PLAYING", GAME_MODE_PLAYING, },
+ { ".DOOR", GAME_MODE_PSEUDO_DOOR, },
+ { ".PREVIEW", GAME_MODE_PSEUDO_PREVIEW, },
+ { ".CRUMBLED", GAME_MODE_PSEUDO_CRUMBLED, },
+
+ /* empty suffix always matches -- check as last entry in InitMusicInfo() */
+ { "", GAME_MODE_DEFAULT, },
+
+ { NULL, 0, }
+};
+
+struct TokenIntPtrInfo image_config_vars[] =
+{
+ { "global.num_toons", &global.num_toons },
+
+ { "menu.draw_xoffset", &menu.draw_xoffset[GFX_SPECIAL_ARG_DEFAULT]},
+ { "menu.draw_yoffset", &menu.draw_yoffset[GFX_SPECIAL_ARG_DEFAULT]},
+ { "menu.draw_xoffset.MAIN", &menu.draw_xoffset[GFX_SPECIAL_ARG_MAIN] },
+ { "menu.draw_yoffset.MAIN", &menu.draw_yoffset[GFX_SPECIAL_ARG_MAIN] },
+ { "menu.draw_xoffset.LEVELS", &menu.draw_xoffset[GFX_SPECIAL_ARG_LEVELS] },
+ { "menu.draw_yoffset.LEVELS", &menu.draw_yoffset[GFX_SPECIAL_ARG_LEVELS] },
+ { "menu.draw_xoffset.SCORES", &menu.draw_xoffset[GFX_SPECIAL_ARG_SCORES] },
+ { "menu.draw_yoffset.SCORES", &menu.draw_yoffset[GFX_SPECIAL_ARG_SCORES] },
+ { "menu.draw_xoffset.EDITOR", &menu.draw_xoffset[GFX_SPECIAL_ARG_EDITOR] },
+ { "menu.draw_yoffset.EDITOR", &menu.draw_yoffset[GFX_SPECIAL_ARG_EDITOR] },
+ { "menu.draw_xoffset.INFO", &menu.draw_xoffset[GFX_SPECIAL_ARG_INFO] },
+ { "menu.draw_yoffset.INFO", &menu.draw_yoffset[GFX_SPECIAL_ARG_INFO] },
+ { "menu.draw_xoffset.SETUP", &menu.draw_xoffset[GFX_SPECIAL_ARG_SETUP] },
+ { "menu.draw_yoffset.SETUP", &menu.draw_yoffset[GFX_SPECIAL_ARG_SETUP] },
+
+ { "menu.scrollbar_xoffset", &menu.scrollbar_xoffset },
+
+ { "menu.list_size", &menu.list_size[GFX_SPECIAL_ARG_DEFAULT] },
+ { "menu.list_size.LEVELS", &menu.list_size[GFX_SPECIAL_ARG_LEVELS] },
+ { "menu.list_size.SCORES", &menu.list_size[GFX_SPECIAL_ARG_SCORES] },
+ { "menu.list_size.INFO", &menu.list_size[GFX_SPECIAL_ARG_INFO] },
+
+ { "door_1.step_offset", &door_1.step_offset },
+ { "door_1.step_delay", &door_1.step_delay },
+ { "door_1.anim_mode", &door_1.anim_mode },
+ { "door_2.step_offset", &door_2.step_offset },
+ { "door_2.step_delay", &door_2.step_delay },
+ { "door_2.anim_mode", &door_2.anim_mode },
+
+ { "[player].boring_delay_fixed", &game.player_boring_delay_fixed },
+ { "[player].boring_delay_random", &game.player_boring_delay_random },
+ { "[player].sleeping_delay_fixed", &game.player_sleeping_delay_fixed },
+ { "[player].sleeping_delay_random", &game.player_sleeping_delay_random },
+
+ { NULL, NULL, }