X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Finit.c;h=064de4a9efc3ed6f881cae4a50cff5c4fa82d96d;hp=255cbc63f5863de2b48257d5e4eca50423946bbb;hb=3fd727f8ab7628eaab0be7de31658d7d468d6c8d;hpb=fa2a77aa4b53bb786e67f35d6c46f759ebe7823d diff --git a/src/init.c b/src/init.c index 255cbc63..064de4a9 100644 --- a/src/init.c +++ b/src/init.c @@ -124,10 +124,11 @@ void OpenAll(void) InitImages(); /* needs to know current level directory */ InitSound(); /* needs to know current level directory */ +#if 0 InitGadgets(); /* needs images + number of level series */ +#endif InitGfxBackground(); - InitToons(); if (global.autoplay_leveldir) { @@ -218,6 +219,9 @@ static void ReinitializeGraphics() new_graphic_info[IMG_MENU_FONT_MEDIUM].bitmap, new_graphic_info[IMG_MENU_FONT_SMALL].bitmap, new_graphic_info[IMG_MENU_FONT_EM].bitmap); + + InitGadgets(); + InitToons(); } static void InitImages() @@ -582,6 +586,10 @@ void ReloadCustomArtwork() } #endif +#if 0 + SyncDisplay(); +#endif + ReinitializeGraphics(); FreeTileClipmasks(); @@ -647,13 +655,29 @@ void ReloadCustomArtwork() #endif } +void FreeGadgets() +{ + FreeLevelEditorGadgets(); + FreeGameButtons(); + FreeTapeButtons(); + FreeToolButtons(); + FreeScreenGadgets(); +} + void InitGadgets() { + static boolean gadgets_initialized = FALSE; + + if (gadgets_initialized) + FreeGadgets(); + CreateLevelEditorGadgets(); CreateGameButtons(); CreateTapeButtons(); CreateToolButtons(); CreateScreenGadgets(); + + gadgets_initialized = TRUE; } void InitElementInfo()