X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Ftools.c;h=ac83cfd51c1e54d470f2745512ed5209ede7b620;hp=9d7e5c7482906558affecfadbd1dce7d5e838f39;hb=522cba3565ad60664933d454f83518961deb41c5;hpb=b6c5148b52b3c52038faef5ad80ef28bc9f623d7 diff --git a/src/tools.c b/src/tools.c index 9d7e5c74..ac83cfd5 100644 --- a/src/tools.c +++ b/src/tools.c @@ -717,6 +717,14 @@ static void FadeExt(int fade_mask, int fade_mode, int fade_type) static void SetScreenStates_BeforeFadingIn() { + // temporarily set screen mode for animations to screen after fading in + global.anim_status = global.anim_status_next; + + // store backbuffer with all animations that will be started after fading in + PrepareFadeBitmap(DRAW_TO_FADE_TARGET); + + // set screen mode for animations back to fading + global.anim_status = GAME_MODE_PSEUDO_FADING; } static void SetScreenStates_AfterFadingIn() @@ -736,7 +744,11 @@ static void SetScreenStates_BeforeFadingOut() // store new target screen (to use correct masked border for fading) gfx.fade_border_target_status = game_status; + // set screen mode for animations to fading global.anim_status = GAME_MODE_PSEUDO_FADING; + + // store backbuffer with all animations that will be stopped for fading out + PrepareFadeBitmap(DRAW_TO_FADE_SOURCE); } static void SetScreenStates_AfterFadingOut()