X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Fanim.c;h=e603a9d38a0e3760e616a83f623db24c2aac39d1;hp=454389d573d4b2bd757fec251f758f8b4ceaf261;hb=d89a9ba5381e625d4e993d9ee5a69b9010b43180;hpb=2d12b56bd6b64aa3008deae1e1d0ef5755a6bc80 diff --git a/src/anim.c b/src/anim.c index 454389d5..e603a9d3 100644 --- a/src/anim.c +++ b/src/anim.c @@ -880,14 +880,16 @@ static boolean SetGlobalAnimPart_Viewport(struct GlobalAnimPartControlInfo *part int mx = MIN(MAX(0, gfx.mouse_x), WIN_XSIZE - 1); int my = MIN(MAX(0, gfx.mouse_y), WIN_YSIZE - 1); - viewport_x = mx + part->control_info.x; - viewport_y = my + part->control_info.y; + viewport_x = mx - part->control_info.x; + viewport_y = my - part->control_info.y; viewport_width = part->graphic_info.width; viewport_height = part->graphic_info.height; part->drawing_stage = DRAW_GLOBAL_ANIM_STAGE_2; - gfx.cursor_mode_override = CURSOR_NONE; + // do not use global animation mouse pointer when reloading artwork + if (global.anim_status != GAME_MODE_LOADING) + gfx.cursor_mode_override = CURSOR_NONE; } else if (part->control_info.class == get_hash_from_key("door_1")) { @@ -931,7 +933,8 @@ static boolean SetGlobalAnimPart_Viewport(struct GlobalAnimPartControlInfo *part part->viewport_width = viewport_width; part->viewport_height = viewport_height; - changed = TRUE; + if (part->control_info.class != get_hash_from_key("pointer")) + changed = TRUE; } return changed;