From 9d49dbd782bedbc405121c4b2ebbce5889b0e693 Mon Sep 17 00:00:00 2001 From: Ted John Date: Mon, 5 Sep 2016 20:53:30 +0100 Subject: [PATCH] Integrate gCurrentCursor --- src/addresses.h | 2 +- src/input.c | 18 ++++++++---------- src/input.h | 1 + src/platform/shared.c | 2 +- 4 files changed, 11 insertions(+), 12 deletions(-) diff --git a/src/addresses.h b/src/addresses.h index 6a9018cb14..44bd38b8e5 100644 --- a/src/addresses.h +++ b/src/addresses.h @@ -119,7 +119,6 @@ #define RCT2_ADDRESS_DRAW_SCROLL_NEXT_ID 0x009D7A80 #define RCT2_ADDRESS_INPUT_FLAGS 0x009DE518 -#define RCT2_ADDRESS_CURENT_CURSOR 0x009DE51C #define RCT2_ADDRESS_INPUT_STATE 0x009DE51D #define RCT2_ADDRESS_CURSOR_DOWN_WINDOWCLASS 0x009DE51F #define RCT2_ADDRESS_CURSOR_DOWN_WINDOWNUMBER 0x009DE520 @@ -386,6 +385,7 @@ #define RCT2_ADDRESS_EDITOR_OBJECT_FLAGS_LIST 0x009ADAEC #define RCT2_ADDRESS_TOTAL_NO_IMAGES 0x009ADAF0 +#define RCT2_ADDRESS_CURENT_CURSOR 0x009DE51C #define RCT2_ADDRESS_TOOL_WINDOWNUMBER 0x009DE542 #define RCT2_ADDRESS_TOOL_WINDOWCLASS 0x009DE544 #define RCT2_ADDRESS_CURRENT_TOOL 0x009DE545 diff --git a/src/input.c b/src/input.c index b8811729cb..125737bc62 100644 --- a/src/input.c +++ b/src/input.c @@ -74,6 +74,7 @@ widget_ref gTooltipWidget; sint32 gTooltipCursorX; sint32 gTooltipCursorY; +uint8 gCurrentCursor; uint8 gCurrentToolId; widget_ref gCurrentToolWidget; @@ -1557,18 +1558,15 @@ int get_next_key() * * rct2: 0x006ED990 */ -void sub_6ED990(uint8 cursor_id){ - if (gInputState == INPUT_STATE_RESIZING) - { - cursor_id = CURSOR_DIAGONAL_ARROWS; //resize icon +void sub_6ED990(uint8 cursor_id) +{ + if (gInputState == INPUT_STATE_RESIZING) { + cursor_id = CURSOR_DIAGONAL_ARROWS; } - - if (cursor_id == RCT2_GLOBAL(RCT2_ADDRESS_CURENT_CURSOR, uint8)) - { - return; + if (cursor_id != gCurrentCursor) { + gCurrentCursor = cursor_id; + platform_set_cursor(cursor_id); } - RCT2_GLOBAL(RCT2_ADDRESS_CURENT_CURSOR, uint8) = cursor_id; - platform_set_cursor(cursor_id); } diff --git a/src/input.h b/src/input.h index 6c5a900942..63d43abf43 100644 --- a/src/input.h +++ b/src/input.h @@ -92,6 +92,7 @@ extern widget_ref gTooltipWidget; extern sint32 gTooltipCursorX; extern sint32 gTooltipCursorY; +extern uint8 gCurrentCursor; extern uint8 gCurrentToolId; extern widget_ref gCurrentToolWidget; diff --git a/src/platform/shared.c b/src/platform/shared.c index b82644cde6..8ad874af9b 100644 --- a/src/platform/shared.c +++ b/src/platform/shared.c @@ -723,7 +723,7 @@ void platform_toggle_windowed_mode() */ void platform_set_cursor(uint8 cursor) { - RCT2_GLOBAL(RCT2_ADDRESS_CURENT_CURSOR, uint8) = cursor; + gCurrentCursor = cursor; SDL_SetCursor(_cursors[cursor]); } /**