X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.c;h=47bd787f03a2ac097018b929f61dfa877730c5db;hb=1e23125074b86c5eb1254037a81a3e9062152b7f;hp=cb083658537519b87601c8137ac7adcc99a6174e;hpb=920bfa5e8a17f2037161be179837a2d1b6f698ab;p=rocksndiamonds.git diff --git a/src/main.c b/src/main.c index cb083658..47bd787f 100644 --- a/src/main.c +++ b/src/main.c @@ -4,7 +4,7 @@ // (c) 1995-2014 by Artsoft Entertainment // Holger Schemel // info@artsoft.org -// http://www.artsoft.org/ +// https://www.artsoft.org/ // ---------------------------------------------------------------------------- // main.c // ============================================================================ @@ -30,15 +30,13 @@ DrawBuffer *fieldbuffer; DrawBuffer *drawto_field; int game_status = -1; -boolean game_status_last_screen = -1; +int game_status_last_screen = -1; boolean level_editor_test_game = FALSE; boolean network_playing = FALSE; -boolean network_server = FALSE; -SDL_Thread *server_thread; int key_joystick_mapping = 0; -short Feld[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; +short Tile[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; short Last[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; short MovPos[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; short MovDir[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; @@ -69,7 +67,9 @@ int PlayerVisit[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; int GfxFrame[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; int GfxRandom[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; +int GfxRandomStatic[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; int GfxElement[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; +int GfxElementEmpty[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; int GfxAction[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; int GfxDir[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; int GfxRedraw[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; @@ -130,7 +130,7 @@ boolean network_player_action_received = FALSE; struct LevelInfo level, level_template; struct PlayerInfo stored_player[MAX_PLAYERS], *local_player = NULL; -struct HiScore highscore[MAX_SCORE_ENTRIES]; +struct ScoreInfo scores, server_scores; struct TapeInfo tape; struct GameInfo game; struct GlobalInfo global; @@ -6269,6 +6269,96 @@ struct ElementNameInfo element_name_info[MAX_NUM_ELEMENTS + 1] = "df_wooden_wall", "wooden wall (DF style)", }, + { + "spring.left", + "spring", + "spring (starts moving left)" + }, + { + "spring.right", + "spring", + "spring (starts moving right)" + }, + { + "empty_space_1", + "empty_space", + "empty space 1" + }, + { + "empty_space_2", + "empty_space", + "empty space 2" + }, + { + "empty_space_3", + "empty_space", + "empty space 3" + }, + { + "empty_space_4", + "empty_space", + "empty space 4" + }, + { + "empty_space_5", + "empty_space", + "empty space 5" + }, + { + "empty_space_6", + "empty_space", + "empty space 6" + }, + { + "empty_space_7", + "empty_space", + "empty space 7" + }, + { + "empty_space_8", + "empty_space", + "empty space 8" + }, + { + "empty_space_9", + "empty_space", + "empty space 9" + }, + { + "empty_space_10", + "empty_space", + "empty space 10" + }, + { + "empty_space_11", + "empty_space", + "empty space 11" + }, + { + "empty_space_12", + "empty_space", + "empty space 12" + }, + { + "empty_space_13", + "empty_space", + "empty space 13" + }, + { + "empty_space_14", + "empty_space", + "empty space 14" + }, + { + "empty_space_15", + "empty_space", + "empty space 15" + }, + { + "empty_space_16", + "empty_space", + "empty space 16" + }, // -------------------------------------------------------------------------- // "real" (and therefore drawable) runtime elements @@ -7205,6 +7295,16 @@ struct ElementNameInfo element_name_info[MAX_NUM_ELEMENTS + 1] = "internal", "hide group elements" }, + { + "internal_cascade_es", + "internal", + "show empty space elements" + }, + { + "internal_cascade_es.active", + "internal", + "hide empty space elements" + }, { "internal_cascade_ref", "internal", @@ -7408,6 +7508,7 @@ struct SpecialSuffixInfo special_suffix_info[NUM_SPECIAL_GFX_ARGS + 1 + 1] = { ".TITLE_4", GFX_SPECIAL_ARG_TITLE_4, }, { ".TITLE_5", GFX_SPECIAL_ARG_TITLE_5, }, { ".MAIN", GFX_SPECIAL_ARG_MAIN, }, + { ".NAMES", GFX_SPECIAL_ARG_NAMES, }, { ".LEVELS", GFX_SPECIAL_ARG_LEVELS }, { ".LEVELNR", GFX_SPECIAL_ARG_LEVELNR }, { ".SCORES", GFX_SPECIAL_ARG_SCORES, }, @@ -7421,7 +7522,9 @@ struct SpecialSuffixInfo special_suffix_info[NUM_SPECIAL_GFX_ARGS + 1 + 1] = { ".PREVIEW", GFX_SPECIAL_ARG_PREVIEW, }, { ".CRUMBLED", GFX_SPECIAL_ARG_CRUMBLED, }, { ".MAINONLY", GFX_SPECIAL_ARG_MAINONLY, }, + { ".NAMESONLY", GFX_SPECIAL_ARG_NAMESONLY, }, { ".TYPENAME", GFX_SPECIAL_ARG_TYPENAME, }, + { ".TYPENAMES", GFX_SPECIAL_ARG_TYPENAMES, }, { ".SUBMENU", GFX_SPECIAL_ARG_SUBMENU, }, { ".MENU", GFX_SPECIAL_ARG_MENU, }, { ".TOONS", GFX_SPECIAL_ARG_TOONS, }, @@ -7611,7 +7714,7 @@ static void print_usage(void) " --serveronly only start network server\n" " -v, --verbose verbose mode\n" " -V, --version show program version\n" - " --debug display debugging information\n" + " --debug[=MODE] show (and limit) debug output\n" " -e, --execute COMMAND execute batch COMMAND\n" "\n" "Valid commands for '--execute' option:\n" @@ -7623,13 +7726,15 @@ static void print_usage(void) " \"print helptext.conf\" print default helptext config\n" " \"dump level FILE\" dump level data from FILE\n" " \"dump tape FILE\" dump tape data from FILE\n" - " \"autotest LEVELDIR [NR ...]\" test level tapes for LEVELDIR\n" " \"autoplay LEVELDIR [NR ...]\" play level tapes for LEVELDIR\n" " \"autoffwd LEVELDIR [NR ...]\" ffwd level tapes for LEVELDIR\n" " \"autowarp LEVELDIR [NR ...]\" warp level tapes for LEVELDIR\n" + " \"autotest LEVELDIR [NR ...]\" test level tapes for LEVELDIR\n" + " \"autofix LEVELDIR [NR ...]\" test and fix tapes for LEVELDIR\n" + " \"patch tapes MODE LEVELDIR [NR]\" patch level tapes for LEVELDIR\n" " \"convert LEVELDIR [NR]\" convert levels in LEVELDIR\n" - " \"create images DIRECTORY\" write BMP images to DIRECTORY\n" - " \"create CE image DIRECTORY\" write BMP image to DIRECTORY\n" + " \"create sketch images DIRECTORY\" write BMP images to DIRECTORY\n" + " \"create collect image DIRECTORY\" write BMP image to DIRECTORY\n" "\n", program.command_basename); }