X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ftools.c;h=6086cf25befdd3b1feaf61269286a47c2919b88a;hb=refs%2Ftags%2F4.3.7.0;hp=e321f18c513a81dc3008e0e0cc87ed5581a285b4;hpb=7b34743564e27c65b4d9c1ef55c3b12f6cf8a94a;p=rocksndiamonds.git diff --git a/src/tools.c b/src/tools.c index e321f18c..6086cf25 100644 --- a/src/tools.c +++ b/src/tools.c @@ -634,6 +634,10 @@ void DrawMaskedBorderToTarget(int draw_target) gfx.masked_border_bitmap_ptr = gfx.fade_bitmap_target; } + // always use global border for PLAYING when restarting the game + if (global.border_status == GAME_MODE_PSEUDO_RESTARTING) + global.border_status = GAME_MODE_PLAYING; + DrawMaskedBorderExt(REDRAW_ALL, draw_target); global.border_status = last_border_status; @@ -976,6 +980,10 @@ static void SetScreenStates_BeforeFadingOut(void) static void SetScreenStates_AfterFadingOut(void) { global.border_status = game_status; + + // always use global border for PLAYING when restarting the game + if (global.border_status == GAME_MODE_PSEUDO_RESTARTING) + global.border_status = GAME_MODE_PLAYING; } void FadeIn(int fade_mask) @@ -3011,8 +3019,7 @@ void ShowEnvelope(int envelope_nr) static void PrepareEnvelopeRequestToScreen(Bitmap *bitmap, int sx, int sy, int xsize, int ysize) { - if (!global.use_envelope_request || - request.sort_priority <= 0) + if (!global.use_envelope_request) return; if (request.bitmap == NULL || @@ -3042,13 +3049,11 @@ static void PrepareEnvelopeRequestToScreen(Bitmap *bitmap, int sx, int sy, request.ysize = ysize; } -void DrawEnvelopeRequestToScreen(int drawing_target, int drawing_stage) +void DrawEnvelopeRequestToScreen(int drawing_target) { if (global.use_envelope_request && game.request_active_or_moving && - request.sort_priority > 0 && - drawing_target == DRAW_TO_SCREEN && - drawing_stage == DRAW_GLOBAL_ANIM_STAGE_2) + drawing_target == DRAW_TO_SCREEN) { BlitToScreen(request.bitmap, 0, 0, request.xsize, request.ysize, request.sx, request.sy); @@ -3314,15 +3319,14 @@ static void ShowEnvelopeRequest(char *text, unsigned int req_state, int action) if (game_status == GAME_MODE_PLAYING) BlitScreenToBitmap(backbuffer); - if (game_status == GAME_MODE_PLAYING || action == ACTION_OPENING) - BlitBitmap(backbuffer, bitmap_db_store_1, 0, 0, WIN_XSIZE, WIN_YSIZE, 0, 0); - SetDrawtoField(DRAW_TO_BACKBUFFER); // SetDrawBackgroundMask(REDRAW_NONE); if (action == ACTION_OPENING) { + BlitBitmap(backbuffer, bitmap_db_store_1, 0, 0, WIN_XSIZE, WIN_YSIZE, 0, 0); + if (req_state & REQ_ASK) { MapGadget(tool_gadget[TOOL_CTRL_ID_YES]);