From c00e044b6c415d9feccd6b57dff2acac2fbaefaa Mon Sep 17 00:00:00 2001 From: Gymnasiast Date: Sun, 16 Aug 2015 13:14:04 +0200 Subject: [PATCH] Multiplayer interface improvements, cleanup --- data/language/english_uk.txt | 5 +++-- src/localisation/string_ids.h | 7 +++++-- src/sprites.h | 4 ++++ src/windows/finances.c | 12 ++++++------ src/windows/new_ride.c | 2 +- src/windows/player_list.c | 3 +++ src/windows/research.c | 4 ++-- src/windows/ride.c | 6 +++--- src/windows/top_toolbar.c | 24 +++++++++++++++++++----- 9 files changed, 46 insertions(+), 21 deletions(-) diff --git a/data/language/english_uk.txt b/data/language/english_uk.txt index 361b08dea1..54cb8589d4 100644 --- a/data/language/english_uk.txt +++ b/data/language/english_uk.txt @@ -3487,7 +3487,7 @@ STR_5145 :Turbo Speed STR_5146 :Hyper Speed STR_5147 :Cheats STR_5148 :{SMALLFONT}{BLACK}Change the game speed -STR_5149 :{SMALLFONT}{BLACK}Open the cheats window +STR_5149 :{SMALLFONT}{BLACK}Show cheat options STR_5150 :Enable debugging tools STR_5151 :, STR_5152 :. @@ -3832,7 +3832,7 @@ STR_5490 :Disable audio on focus loss STR_5491 :Inventions list STR_5492 :Scenario options STR_5493 :Send Message -STR_5494 :Type the message you would like to send. +STR_5494 : STR_5495 :Player List STR_5496 :Player: STR_5497 :Ping: @@ -3842,3 +3842,4 @@ STR_5500 :Add Server STR_5501 :Start Server STR_5502 :Multiplayer STR_5503 :Enter hostname or IP address: +STR_5504 :{SMALLFONT}{BLACK}Show multiplayer status diff --git a/src/localisation/string_ids.h b/src/localisation/string_ids.h index f9cc1abcfb..352b9ef238 100644 --- a/src/localisation/string_ids.h +++ b/src/localisation/string_ids.h @@ -1141,7 +1141,7 @@ enum { STR_RESEARCH_SCENERY_LABEL = 2273, STR_RESEARCH_SHOW_DETAILS_TIP = 2274, - STR_FINANCES_RESEARCH = 2275, + STR_FINANCES_RESEARCH_TIP = 2275, STR_RESEARCH_AND_DEVELOPMENT_TIP = 2276, STR_RESEARCH_UNKNOWN = 2277, @@ -1890,6 +1890,8 @@ enum { STR_RESEARCH_BUTTON_ON_TOOLBAR = 5121, STR_SELECT_BY_TRACK_TYPE = 5122, STR_CHEATS_BUTTON_ON_TOOLBAR = 5147, + STR_GAME_SPEED_TIP = 5148, + STR_CHEATS_TIP = 5149, STR_HARDWARE_DISPLAY = 5154, @@ -2031,7 +2033,6 @@ enum { STR_DEBUG_DROPDOWN_SCENARIO_OPTIONS = 5492, STR_SEND_MESSAGE = 5493, - STR_TYPE_THE_MESSAGE_YOU_WOULD_LIKE_TO_SEND = 5494, STR_PLAYER_LIST = 5495, STR_PLAYER = 5496, STR_PING = 5497, @@ -2042,6 +2043,8 @@ enum { STR_MULTIPLAYER = 5502, STR_ENTER_HOSTNAME_OR_IP_ADDRESS = 5503, + STR_SHOW_MULTIPLAYER_STATUS_TIP = 5504, + // Have to include resource strings (from scenarios and objects) for the time being now that language is partially working STR_COUNT = 32768 }; diff --git a/src/sprites.h b/src/sprites.h index 67c8d71a4f..df08a21df1 100644 --- a/src/sprites.h +++ b/src/sprites.h @@ -64,6 +64,10 @@ enum { SPR_TESTING = 5181, SPR_TOGGLE_OPEN_CLOSE = 5182, + SPR_SHOW_GUESTS_THOUGHTS_ABOUT_THIS_RIDE_ATTRACTION = 5184, + SPR_SHOW_GUESTS_QUEUING_FOR_THIS_RIDE_ATTRACTION = 5185, + SPR_SHOW_GUESTS_ON_THIS_RIDE_ATTRACTION = 5186, + SPR_RIDE = 5187, SPR_TRACK_PEEP = 5188, SPR_SCENERY = 5189, diff --git a/src/windows/finances.c b/src/windows/finances.c index 14621678c1..b61e436346 100644 --- a/src/windows/finances.c +++ b/src/windows/finances.c @@ -94,7 +94,7 @@ static rct_widget window_finances_summary_widgets[] = { { WWT_TAB, 1, 65, 95, 17, 43, 0x2000144E, STR_FINANCES_SHOW_PARK_VALUE_TAB_TIP }, { WWT_TAB, 1, 96, 126, 17, 43, 0x2000144E, STR_FINANCES_SHOW_WEEKLY_PROFIT_TAB_TIP }, { WWT_TAB, 1, 127, 157, 17, 43, 0x2000144E, STR_FINANCES_SHOW_MARKETING_TAB_TIP }, - { WWT_TAB, 1, 158, 188, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH }, + { WWT_TAB, 1, 158, 188, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH_TIP }, { WWT_SPINNER, 1, 64, 153, 229, 240, 1917, STR_NONE }, { WWT_DROPDOWN_BUTTON, 1, 142, 152, 230, 234, STR_NUMERIC_UP, STR_NONE }, { WWT_DROPDOWN_BUTTON, 1, 142, 152, 235, 239, STR_NUMERIC_DOWN, STR_NONE }, @@ -111,7 +111,7 @@ static rct_widget window_finances_cash_widgets[] = { { WWT_TAB, 1, 65, 95, 17, 43, 0x2000144E, STR_FINANCES_SHOW_PARK_VALUE_TAB_TIP }, { WWT_TAB, 1, 96, 126, 17, 43, 0x2000144E, STR_FINANCES_SHOW_WEEKLY_PROFIT_TAB_TIP }, { WWT_TAB, 1, 127, 157, 17, 43, 0x2000144E, STR_FINANCES_SHOW_MARKETING_TAB_TIP }, - { WWT_TAB, 1, 158, 188, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH }, + { WWT_TAB, 1, 158, 188, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH_TIP }, { WIDGETS_END }, }; @@ -125,7 +125,7 @@ static rct_widget window_finances_park_value_widgets[] = { { WWT_TAB, 1, 65, 95, 17, 43, 0x2000144E, STR_FINANCES_SHOW_PARK_VALUE_TAB_TIP }, { WWT_TAB, 1, 96, 126, 17, 43, 0x2000144E, STR_FINANCES_SHOW_WEEKLY_PROFIT_TAB_TIP }, { WWT_TAB, 1, 127, 157, 17, 43, 0x2000144E, STR_FINANCES_SHOW_MARKETING_TAB_TIP }, - { WWT_TAB, 1, 158, 188, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH }, + { WWT_TAB, 1, 158, 188, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH_TIP }, { WIDGETS_END }, }; @@ -139,7 +139,7 @@ static rct_widget window_finances_profit_widgets[] = { { WWT_TAB, 1, 65, 95, 17, 43, 0x2000144E, STR_FINANCES_SHOW_PARK_VALUE_TAB_TIP }, { WWT_TAB, 1, 96, 126, 17, 43, 0x2000144E, STR_FINANCES_SHOW_WEEKLY_PROFIT_TAB_TIP }, { WWT_TAB, 1, 127, 157, 17, 43, 0x2000144E, STR_FINANCES_SHOW_MARKETING_TAB_TIP }, - { WWT_TAB, 1, 158, 188, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH }, + { WWT_TAB, 1, 158, 188, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH_TIP }, { WIDGETS_END }, }; @@ -153,7 +153,7 @@ static rct_widget window_finances_marketing_widgets[] = { { WWT_TAB, 1, 65, 95, 17, 43, 0x2000144E, STR_FINANCES_SHOW_PARK_VALUE_TAB_TIP }, { WWT_TAB, 1, 96, 126, 17, 43, 0x2000144E, STR_FINANCES_SHOW_WEEKLY_PROFIT_TAB_TIP }, { WWT_TAB, 1, 127, 157, 17, 43, 0x2000144E, STR_FINANCES_SHOW_MARKETING_TAB_TIP }, - { WWT_TAB, 1, 158, 188, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH }, + { WWT_TAB, 1, 158, 188, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH_TIP }, { WWT_GROUPBOX, 2, 3, 526, 47, 91, STR_MARKETING_CAMPAIGNS_IN_OPERATION, STR_NONE }, { WWT_GROUPBOX, 2, 3, 526, 47, 252, STR_MARKETING_CAMPAIGNS_AVAILABLE, STR_NONE }, { WWT_IMGBTN, 1, 8, 521, 0, 11, 0xFFFFFFFF, STR_START_THIS_MARKETING_CAMPAIGN }, @@ -175,7 +175,7 @@ static rct_widget window_finances_research_widgets[] = { { WWT_TAB, 1, 65, 95, 17, 43, 0x2000144E, STR_FINANCES_SHOW_PARK_VALUE_TAB_TIP }, { WWT_TAB, 1, 96, 126, 17, 43, 0x2000144E, STR_FINANCES_SHOW_WEEKLY_PROFIT_TAB_TIP }, { WWT_TAB, 1, 127, 157, 17, 43, 0x2000144E, STR_FINANCES_SHOW_MARKETING_TAB_TIP }, - { WWT_TAB, 1, 158, 188, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH }, + { WWT_TAB, 1, 158, 188, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH_TIP }, { WWT_GROUPBOX, 2, 3, 316, 47, 91, STR_RESEARCH_FUNDING_, STR_NONE }, { WWT_DROPDOWN, 2, 8, 167, 59, 70, 0xFFFFFFFF, STR_SELECT_LEVEL_OF_RESEARCH_AND_DEVELOPMENT }, { WWT_DROPDOWN_BUTTON, 2, 156, 166, 60, 69, 876, STR_SELECT_LEVEL_OF_RESEARCH_AND_DEVELOPMENT }, diff --git a/src/windows/new_ride.c b/src/windows/new_ride.c index 032df21a2c..c4fd258652 100644 --- a/src/windows/new_ride.c +++ b/src/windows/new_ride.c @@ -189,7 +189,7 @@ static rct_widget window_new_ride_widgets[] = { { WWT_GROUPBOX, 2, 3, 292, 47, 116, STR_CURRENTLY_IN_DEVELOPMENT, STR_NONE }, { WWT_GROUPBOX, 2, 3, 292, 124, 188, STR_LAST_DEVELOPMENT, STR_NONE }, { WWT_FLATBTN, 2, 265, 288, 161, 184, 0xFFFFFFFF, STR_RESEARCH_SHOW_DETAILS_TIP }, - { WWT_FLATBTN, 2, 265, 288, 68, 91, 5190, STR_FINANCES_RESEARCH }, + { WWT_FLATBTN, 2, 265, 288, 68, 91, 5190, STR_FINANCES_RESEARCH_TIP }, { WIDGETS_END }, }; diff --git a/src/windows/player_list.c b/src/windows/player_list.c index 538887d547..0556f55e53 100644 --- a/src/windows/player_list.c +++ b/src/windows/player_list.c @@ -23,6 +23,7 @@ #include "../interface/window.h" #include "../localisation/localisation.h" #include "../network/network.h" +#include "../sprites.h" enum WINDOW_PLAYER_LIST_WIDGET_IDX { WIDX_BACKGROUND, @@ -210,6 +211,8 @@ static void window_player_list_paint(rct_window *w, rct_drawpixelinfo *dpi) window_draw_widgets(w, dpi); gfx_draw_string_left(dpi, STR_PLAYER, w, w->colours[2], w->x + 6, 58 - 12 + w->y + 1); gfx_draw_string_left(dpi, STR_PING, w, w->colours[2], w->x + 246, 58 - 12 + w->y + 1); + + gfx_draw_sprite(dpi, SPR_TAB_GUESTS_0, w->x + w->widgets[WIDX_TAB1].left, w->y + w->widgets[WIDX_TAB1].top, 0); } static void window_player_list_scrollpaint(rct_window *w, rct_drawpixelinfo *dpi, int scrollIndex) diff --git a/src/windows/research.c b/src/windows/research.c index 5c4292e3b6..b888096b81 100644 --- a/src/windows/research.c +++ b/src/windows/research.c @@ -72,7 +72,7 @@ static rct_widget window_research_development_widgets[] = { { WWT_CLOSEBOX, 0, 287, 297, 2, 13, STR_CLOSE_X, STR_CLOSE_WINDOW_TIP }, { WWT_RESIZE, 1, 0, 299, 43, 195, 0xFFFFFFFF, STR_NONE }, { WWT_TAB, 1, 3, 33, 17, 43, 0x2000144E, STR_RESEARCH_AND_DEVELOPMENT_TIP }, - { WWT_TAB, 1, 34, 64, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH }, + { WWT_TAB, 1, 34, 64, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH_TIP }, { WWT_GROUPBOX, 2, 3, 292, 47, 116, STR_CURRENTLY_IN_DEVELOPMENT, STR_NONE }, { WWT_GROUPBOX, 2, 3, 292, 124, 188, STR_LAST_DEVELOPMENT, STR_NONE }, { WWT_FLATBTN, 2, 265, 288, 161, 184, 0xFFFFFFFF, STR_RESEARCH_SHOW_DETAILS_TIP }, @@ -85,7 +85,7 @@ static rct_widget window_research_funding_widgets[] = { { WWT_CLOSEBOX, 0, 307, 317, 2, 13, STR_CLOSE_X, STR_CLOSE_WINDOW_TIP }, { WWT_RESIZE, 1, 0, 319, 43, 206, 0xFFFFFFFF, STR_NONE }, { WWT_TAB, 1, 3, 33, 17, 43, 0x2000144E, STR_RESEARCH_AND_DEVELOPMENT_TIP }, - { WWT_TAB, 1, 34, 64, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH }, + { WWT_TAB, 1, 34, 64, 17, 43, 0x2000144E, STR_FINANCES_RESEARCH_TIP }, { WWT_GROUPBOX, 2, 3, 316, 47, 91, STR_RESEARCH_FUNDING_, STR_NONE }, { WWT_DROPDOWN, 2, 8, 167, 59, 70, 0xFFFFFFFF, STR_SELECT_LEVEL_OF_RESEARCH_AND_DEVELOPMENT }, { WWT_DROPDOWN_BUTTON, 2, 156, 166, 60, 69, 876, STR_SELECT_LEVEL_OF_RESEARCH_AND_DEVELOPMENT }, diff --git a/src/windows/ride.c b/src/windows/ride.c index 96b1a2d869..008e4a7f3f 100644 --- a/src/windows/ride.c +++ b/src/windows/ride.c @@ -472,9 +472,9 @@ static rct_widget window_ride_customer_widgets[] = { { WWT_TAB, 1, 251, 281, 17, 43, 0x2000144E, STR_INCOME_AND_COSTS_TIP }, { WWT_TAB, 1, 282, 312, 17, 43, 0x2000144E, STR_CUSTOMER_INFORMATION_TIP }, - { WWT_FLATBTN, 1, 289, 312, 54, 77, 5184, STR_SHOW_GUESTS_THOUGHTS_ABOUT_THIS_RIDE_ATTRACTION_TIP }, - { WWT_FLATBTN, 1, 289, 312, 78, 101, 5186, STR_SHOW_GUESTS_ON_THIS_RIDE_ATTRACTION_TIP }, - { WWT_FLATBTN, 1, 289, 312, 102, 125, 5185, STR_SHOW_GUESTS_QUEUING_FOR_THIS_RIDE_ATTRACTION_TIP }, + { WWT_FLATBTN, 1, 289, 312, 54, 77, SPR_SHOW_GUESTS_THOUGHTS_ABOUT_THIS_RIDE_ATTRACTION, STR_SHOW_GUESTS_THOUGHTS_ABOUT_THIS_RIDE_ATTRACTION_TIP }, + { WWT_FLATBTN, 1, 289, 312, 78, 101, SPR_SHOW_GUESTS_ON_THIS_RIDE_ATTRACTION, STR_SHOW_GUESTS_ON_THIS_RIDE_ATTRACTION_TIP }, + { WWT_FLATBTN, 1, 289, 312, 102, 125, SPR_SHOW_GUESTS_QUEUING_FOR_THIS_RIDE_ATTRACTION, STR_SHOW_GUESTS_QUEUING_FOR_THIS_RIDE_ATTRACTION_TIP }, { WIDGETS_END }, }; diff --git a/src/windows/top_toolbar.c b/src/windows/top_toolbar.c index 4c873ddb82..c3e726a280 100644 --- a/src/windows/top_toolbar.c +++ b/src/windows/top_toolbar.c @@ -31,6 +31,7 @@ #include "../interface/window.h" #include "../interface/viewport.h" #include "../localisation/localisation.h" +#include "../network/network.h" #include "../network/twitch.h" #include "../scenario.h" #include "../world/scenery.h" @@ -179,13 +180,13 @@ static rct_widget window_top_toolbar_widgets[] = { { WWT_TRNBTN, 3, 0x0230, 0x024D, 0, 27, 0x20000000 | SPR_TOOLBAR_GUESTS, STR_GUESTS_TIP }, // Guests { WWT_TRNBTN, 2, 0x0230, 0x024D, 0, 27, 0x20000000 | SPR_TOOLBAR_CLEAR_SCENERY, STR_CLEAR_SCENERY_TIP }, // Clear scenery - { WWT_TRNBTN, 0, 0x001E, 0x003B, 0, 27, 0x20000000 | 0x15F9, 5148 }, // Fast forward - { WWT_TRNBTN, 0, 0x001E, 0x003B, 0, 27, 0x20000000 | 0x15F9, 5149 }, // Cheats + { WWT_TRNBTN, 0, 0x001E, 0x003B, 0, 27, 0x20000000 | 0x15F9, STR_GAME_SPEED_TIP }, // Fast forward + { WWT_TRNBTN, 0, 0x001E, 0x003B, 0, 27, 0x20000000 | 0x15F9, STR_CHEATS_TIP }, // Cheats { WWT_TRNBTN, 0, 0x001E, 0x003B, 0, 27, 0x20000000 | 0x15F9, STR_DEBUG_TIP }, // Debug - { WWT_TRNBTN, 3, 0x001E, 0x003B, 0, 27, 0x20000000 | 0x15F9, 3235 }, // Finances - { WWT_TRNBTN, 3, 0x001E, 0x003B, 0, 27, 0x20000000 | 0x15F9, 2275 }, // Research + { WWT_TRNBTN, 3, 0x001E, 0x003B, 0, 27, 0x20000000 | 0x15F9, STR_SCENARIO_OPTIONS_FINANCIAL_TIP },// Finances + { WWT_TRNBTN, 3, 0x001E, 0x003B, 0, 27, 0x20000000 | 0x15F9, STR_FINANCES_RESEARCH_TIP }, // Research { WWT_TRNBTN, 3, 0x001E, 0x003B, 0, 27, 0x20000000 | 0x15F9, STR_SHOW_RECENT_MESSAGES_TIP }, // News - { WWT_TRNBTN, 1, 0x001E, 0x003B, 0, 27, 0x20000000 | 0x15F9, 2276 }, // Network + { WWT_TRNBTN, 1, 0x001E, 0x003B, 0, 27, 0x20000000 | 0x15F9, STR_SHOW_MULTIPLAYER_STATUS_TIP }, // Network { WWT_EMPTY, 0, 0, 10-1, 0, 0, 0xFFFFFFFF, STR_NONE }, // Artificial widget separator { WIDGETS_END }, @@ -658,6 +659,9 @@ static void window_top_toolbar_invalidate(rct_window *w) if (!gConfigInterface.toolbar_show_news) window_top_toolbar_widgets[WIDX_NEWS].type = WWT_EMPTY; + + if (network_get_mode() == NETWORK_MODE_NONE) + window_top_toolbar_widgets[WIDX_NETWORK].type = WWT_EMPTY; } enabledWidgets = 0; @@ -824,6 +828,16 @@ static void window_top_toolbar_paint(rct_window *w, rct_drawpixelinfo *dpi) imgId = SPR_G2_TAB_NEWS; gfx_draw_sprite(dpi, imgId, x, y, 0); } + + // Draw network button + if (window_top_toolbar_widgets[WIDX_NETWORK].type != WWT_EMPTY) { + x = w->x + window_top_toolbar_widgets[WIDX_NETWORK].left + 3; + y = w->y + window_top_toolbar_widgets[WIDX_NETWORK].top + 0; + if (widget_is_pressed(w, WIDX_NETWORK)) + y++; + imgId = SPR_SHOW_GUESTS_ON_THIS_RIDE_ATTRACTION; + gfx_draw_sprite(dpi, imgId, x, y, 0); + } } /* rct2: 0x006E3158 */