X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Finit.c;h=2167984b663649481289e4d4c0c5f14be1670312;hp=5aa38b583cb4e90ad7d1139bae4c8c50a76c1708;hb=ef4236ac56bedd0e83777505c4ed63fbf4a74698;hpb=11a609891864a7d293e34d5d623ab497620118a2 diff --git a/src/init.c b/src/init.c index 5aa38b58..2167984b 100644 --- a/src/init.c +++ b/src/init.c @@ -88,7 +88,7 @@ static int copy_properties[][5] = static int get_graphic_parameter_value(char *, char *, int); -void DrawInitAnim() +static void DrawInitAnim(void) { struct GraphicInfo *graphic_info_last = graphic_info; int graphic = 0; @@ -136,7 +136,21 @@ void DrawInitAnim() FrameCounter++; } -void FreeGadgets() +static void DrawProgramInfo(void) +{ + int font1_nr = FC_YELLOW; + int font2_nr = FC_RED; + int font2_height = getFontHeight(font2_nr); + int ypos1 = 20; + int ypos2 = 50; + int ypos3 = WIN_YSIZE - 20 - font2_height; + + DrawInitText(getProgramInitString(), ypos1, font1_nr); + DrawInitText(setup.internal.program_copyright, ypos2, font2_nr); + DrawInitText(setup.internal.program_website, ypos3, font2_nr); +} + +static void FreeGadgets(void) { FreeLevelEditorGadgets(); FreeGameButtons(); @@ -145,7 +159,7 @@ void FreeGadgets() FreeScreenGadgets(); } -void InitGadgets() +void InitGadgets(void) { static boolean gadgets_initialized = FALSE; @@ -171,7 +185,7 @@ inline static void InitElementSmallImagesScaledUp(int graphic) CreateImageWithSmallImages(graphic, g->scale_up_factor, g->tile_size); } -void InitElementSmallImages() +static void InitElementSmallImages(void) { print_timestamp_init("InitElementSmallImages"); @@ -233,7 +247,7 @@ inline static void InitScaledImagesScaledUp(int graphic) ScaleImage(graphic, g->scale_up_factor); } -void InitScaledImages() +static void InitScaledImages(void) { struct PropertyMapping *property_mapping = getImageListPropertyMapping(); int num_property_mappings = getImageListPropertyMappingSize(); @@ -248,7 +262,7 @@ void InitScaledImages() InitScaledImagesScaledUp(property_mapping[i].artwork_index); } -void InitBitmapPointers() +static void InitBitmapPointers(void) { int num_images = getImageListSize(); int i; @@ -259,7 +273,7 @@ void InitBitmapPointers() graphic_info[i].bitmap = graphic_info[i].bitmaps[IMG_BITMAP_STANDARD]; } -void InitImageTextures() +void InitImageTextures(void) { int i, j, k; @@ -333,7 +347,7 @@ static int getFontFromToken(char *token) return FONT_INITIAL_1; } -void InitFontGraphicInfo() +static void InitFontGraphicInfo(void) { static struct FontBitmapInfo *font_bitmap_info = NULL; struct PropertyMapping *property_mapping = getImageListPropertyMapping(); @@ -572,7 +586,7 @@ void InitFontGraphicInfo() getFontBitmapID, getFontFromToken); } -void InitGlobalAnimGraphicInfo() +static void InitGlobalAnimGraphicInfo(void) { struct PropertyMapping *property_mapping = getImageListPropertyMapping(); int num_property_mappings = getImageListPropertyMappingSize(); @@ -644,7 +658,7 @@ void InitGlobalAnimGraphicInfo() #endif } -void InitGlobalAnimSoundInfo() +static void InitGlobalAnimSoundInfo(void) { struct PropertyMapping *property_mapping = getSoundListPropertyMapping(); int num_property_mappings = getSoundListPropertyMappingSize(); @@ -693,7 +707,7 @@ void InitGlobalAnimSoundInfo() #endif } -void InitGlobalAnimMusicInfo() +static void InitGlobalAnimMusicInfo(void) { struct PropertyMapping *property_mapping = getMusicListPropertyMapping(); int num_property_mappings = getMusicListPropertyMappingSize(); @@ -742,7 +756,7 @@ void InitGlobalAnimMusicInfo() #endif } -void InitElementGraphicInfo() +static void InitElementGraphicInfo(void) { struct PropertyMapping *property_mapping = getImageListPropertyMapping(); int num_property_mappings = getImageListPropertyMappingSize(); @@ -1123,7 +1137,7 @@ void InitElementGraphicInfo() UPDATE_BUSY_STATE(); } -void InitElementSpecialGraphicInfo() +static void InitElementSpecialGraphicInfo(void) { struct PropertyMapping *property_mapping = getImageListPropertyMapping(); int num_property_mappings = getImageListPropertyMappingSize(); @@ -1639,7 +1653,7 @@ static void set_cloned_graphic_parameters(int graphic) } } -static void InitGraphicInfo() +static void InitGraphicInfo(void) { int fallback_graphic = IMG_CHAR_EXCLAM; int num_images = getImageListSize(); @@ -1819,7 +1833,7 @@ static void InitGraphicInfo() } } -static void InitGraphicCompatibilityInfo() +static void InitGraphicCompatibilityInfo(void) { struct FileInfo *fi_global_door = getImageListEntryFromImageID(IMG_GLOBAL_DOOR); @@ -1861,7 +1875,7 @@ static void InitGraphicCompatibilityInfo() InitGraphicCompatibilityInfo_Doors(); } -static void InitElementSoundInfo() +static void InitElementSoundInfo(void) { struct PropertyMapping *property_mapping = getSoundListPropertyMapping(); int num_property_mappings = getSoundListPropertyMappingSize(); @@ -1965,7 +1979,7 @@ static void InitElementSoundInfo() element_info[copy_properties[i][0]].sound[act]; } -static void InitGameModeSoundInfo() +static void InitGameModeSoundInfo(void) { int i; @@ -2014,7 +2028,7 @@ static void set_sound_parameters(int sound, char **parameter_raw) sound_info[sound].priority = parameter[SND_ARG_PRIORITY]; } -static void InitSoundInfo() +static void InitSoundInfo(void) { int *sound_effect_properties; int num_sounds = getSoundListSize(); @@ -2081,7 +2095,7 @@ static void InitSoundInfo() free(sound_effect_properties); } -static void InitGameModeMusicInfo() +static void InitGameModeMusicInfo(void) { struct PropertyMapping *property_mapping = getMusicListPropertyMapping(); int num_property_mappings = getMusicListPropertyMappingSize(); @@ -2164,7 +2178,7 @@ static void set_music_parameters(int music, char **parameter_raw) music_info[music].loop = parameter[MUS_ARG_MODE_LOOP]; } -static void InitMusicInfo() +static void InitMusicInfo(void) { int num_music = getMusicListSize(); int i, j; @@ -2200,7 +2214,7 @@ static void InitMusicInfo() } } -static void ReinitializeGraphics() +static void ReinitializeGraphics(void) { print_timestamp_init("ReinitializeGraphics"); @@ -2246,7 +2260,7 @@ static void ReinitializeGraphics() print_timestamp_done("ReinitializeGraphics"); } -static void ReinitializeSounds() +static void ReinitializeSounds(void) { InitSoundInfo(); /* sound properties mapping */ InitElementSoundInfo(); /* element game sound mapping */ @@ -2256,7 +2270,7 @@ static void ReinitializeSounds() InitPlayLevelSound(); /* internal game sound settings */ } -static void ReinitializeMusic() +static void ReinitializeMusic(void) { InitMusicInfo(); /* music properties mapping */ InitGameModeMusicInfo(); /* game mode music mapping */ @@ -2448,7 +2462,7 @@ void ResolveGroupElement(int group_element) ResolveGroupElementExt(group_element, 0); } -void InitElementPropertiesStatic() +void InitElementPropertiesStatic(void) { static boolean clipboard_elements_initialized = FALSE; @@ -4570,8 +4584,8 @@ void InitElementPropertiesEngine(int engine_version) if (IS_HISTORIC_SOLID(i) || i == EL_EXPLOSION) SET_PROPERTY(i, EP_DRAGONFIRE_PROOF, TRUE); else - SET_PROPERTY(i, EP_DRAGONFIRE_PROOF, (IS_CUSTOM_ELEMENT(i) && - IS_INDESTRUCTIBLE(i))); + SET_PROPERTY(i, EP_DRAGONFIRE_PROOF, (IS_INDESTRUCTIBLE(i) && + i != EL_ACID)); /* ---------- EXPLOSION_PROOF ------------------------------------------ */ if (i == EL_FLAMES) @@ -4725,7 +4739,7 @@ void InitElementPropertiesEngine(int engine_version) InitElementGraphicInfo(); } -void InitElementPropertiesGfxElement() +void InitElementPropertiesGfxElement(void) { int i; @@ -4737,7 +4751,7 @@ void InitElementPropertiesGfxElement() } } -static void InitGlobal() +static void InitGlobal(void) { int graphic; int i; @@ -4874,7 +4888,7 @@ static void InitGlobal() global.use_envelope_request = FALSE; } -void Execute_Command(char *command) +static void Execute_Command(char *command) { int i; @@ -5081,7 +5095,7 @@ void Execute_Command(char *command) options.network = setup.network_mode = FALSE; } -static void InitSetup() +static void InitSetup(void) { LoadSetup(); /* global setup info */ LoadSetup_AutoSetup(); /* global auto setup info */ @@ -5095,13 +5109,14 @@ static void InitSetup() global.show_frames_per_second = TRUE; } -static void InitGameInfo() +static void InitGameInfo(void) { game.restart_level = FALSE; game.restart_game_message = NULL; + game.request_active = FALSE; } -static void InitPlayerInfo() +static void InitPlayerInfo(void) { int i; @@ -5117,7 +5132,7 @@ static void InitPlayerInfo() local_player->connected_locally = TRUE; } -static void InitArtworkInfo() +static void InitArtworkInfo(void) { LoadArtworkInfo(); } @@ -5143,7 +5158,7 @@ static char *get_level_id_suffix(int id_nr) return id_suffix; } -static void InitArtworkConfig() +static void InitArtworkConfig(void) { static char *image_id_prefix[MAX_NUM_ELEMENTS + NUM_FONTS + @@ -5263,14 +5278,14 @@ static void InitArtworkConfig() level_id_suffix, ignore_music_tokens); } -static void InitMixer() +static void InitMixer(void) { OpenAudio(); StartMixer(); } -static void InitVideoOverlay() +static void InitVideoOverlay(void) { // if virtual buttons are not loaded from setup file, repeat initializing // virtual buttons grid with default values now that video is initialized @@ -5281,7 +5296,7 @@ static void InitVideoOverlay() InitOverlayInfo(); } -void InitGfxBuffers() +void InitGfxBuffers(void) { static int win_xsize_last = -1; static int win_ysize_last = -1; @@ -5321,13 +5336,12 @@ void InitGfxBuffers() InitGfxBuffers_SP(); } -void InitGfx() +static void InitGfx(void) { struct GraphicInfo *graphic_info_last = graphic_info; char *filename_font_initial = NULL; char *filename_anim_initial = NULL; Bitmap *bitmap_font_initial = NULL; - int font_height; int i, j; /* determine settings for initial font (for displaying startup messages) */ @@ -5378,12 +5392,7 @@ void InitGfx() InitFontGraphicInfo(); - font_height = getFontHeight(FC_RED); - - DrawInitText(getProgramInitString(), 20, FC_YELLOW); - DrawInitText(setup.internal.program_copyright, 50, FC_RED); - DrawInitText(setup.internal.program_website, WIN_YSIZE - 20 - font_height, - FC_RED); + DrawProgramInfo(); DrawInitText("Loading graphics", 120, FC_GREEN); @@ -5490,7 +5499,7 @@ void InitGfx() init_last = init; } -void InitGfxBackground() +static void InitGfxBackground(void) { fieldbuffer = bitmap_db_field; SetDrawtoField(DRAW_TO_BACKBUFFER); @@ -5500,7 +5509,7 @@ void InitGfxBackground() redraw_mask = REDRAW_ALL; } -static void InitLevelInfo() +static void InitLevelInfo(void) { LoadLevelInfo(); /* global level info */ LoadLevelSetup_LastSeries(); /* last played series info */ @@ -5518,12 +5527,12 @@ static void InitLevelInfo() SetLevelSetInfo(leveldir_current->identifier, level_nr); } -static void InitLevelArtworkInfo() +static void InitLevelArtworkInfo(void) { LoadLevelArtworkInfo(); } -static void InitImages() +static void InitImages(void) { print_timestamp_init("InitImages"); @@ -5626,7 +5635,7 @@ static void InitMusic(char *identifier) print_timestamp_done("InitMusic"); } -static void InitArtworkDone() +static void InitArtworkDone(void) { if (program.headless) return; @@ -5634,22 +5643,32 @@ static void InitArtworkDone() InitGlobalAnimations(); } -void InitNetworkSettings() +static void InitNetworkSettings(void) { - InitNetworkInfo(options.network || setup.network_mode, + boolean network_enabled = (options.network || setup.network_mode); + char *network_server = (options.server_host != NULL ? options.server_host : + setup.network_server_hostname); + + if (strEqual(network_server, STR_NETWORK_AUTO_DETECT)) + network_server = NULL; + + InitNetworkInfo(network_enabled, FALSE, options.serveronly, - options.server_host, + network_server, options.server_port); } -void InitNetworkServer() +void InitNetworkServer(void) { if (!network.enabled || network.connected) return; LimitScreenUpdates(FALSE); + if (game_status == GAME_MODE_LOADING) + DrawProgramInfo(); + if (!ConnectToServer(network.server_host, network.server_port)) { network.enabled = FALSE; @@ -5666,7 +5685,8 @@ void InitNetworkServer() } /* short time to recognize result of network initialization */ - Delay_WithScreenUpdates(1000); + if (game_status == GAME_MODE_LOADING) + Delay_WithScreenUpdates(1000); } static boolean CheckArtworkConfigForCustomElements(char *filename) @@ -5742,7 +5762,7 @@ static boolean CheckArtworkTypeForRedefinedCustomElements(int type) return redefined_ce_found; } -static void InitOverrideArtwork() +static void InitOverrideArtwork(void) { boolean redefined_ce_found = FALSE; @@ -5943,7 +5963,7 @@ void ReloadCustomArtwork(int force_reload) LimitScreenUpdates(FALSE); } -void KeyboardAutoRepeatOffUnlessAutoplay() +void KeyboardAutoRepeatOffUnlessAutoplay(void) { if (global.autoplay_leveldir == NULL) KeyboardAutoRepeatOff(); @@ -6018,7 +6038,7 @@ void DisplayExitMessage(char *format, va_list ap) /* OpenAll() */ /* ========================================================================= */ -void OpenAll() +void OpenAll(void) { print_timestamp_init("OpenAll");