From db378e746b4f9fec8d7b03a5563a12527af98fcc Mon Sep 17 00:00:00 2001 From: translators Date: Sat, 27 Aug 2022 18:56:07 +0000 Subject: [PATCH 1/5] Update: Translations from eints korean: 2 changes by telk5093 --- src/lang/korean.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lang/korean.txt b/src/lang/korean.txt index 0fad0d7ea4..e61ffdd8bc 100644 --- a/src/lang/korean.txt +++ b/src/lang/korean.txt @@ -498,7 +498,7 @@ STR_ABOUT_MENU_AI_DEBUG :인공지능/ STR_ABOUT_MENU_SCREENSHOT :스크린샷 찍기 STR_ABOUT_MENU_SHOW_FRAMERATE :프레임레이트 보기 STR_ABOUT_MENU_ABOUT_OPENTTD :'OpenTTD'에 대해서 -STR_ABOUT_MENU_SPRITE_ALIGNER :스프라이트 정렬도구 +STR_ABOUT_MENU_SPRITE_ALIGNER :스프라이트 정렬 도구 STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :박스 경계선 보기 전환 STR_ABOUT_MENU_TOGGLE_DIRTY_BLOCKS :시각적 업데이트 블록 표시 전환 @@ -3042,7 +3042,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :회사 소유 # About OpenTTD window STR_ABOUT_OPENTTD :{WHITE}OpenTTD에 대해서 STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved -STR_ABOUT_VERSION :{BLACK}OpenTTD 버전 {REV} +STR_ABOUT_VERSION :{BLACK}OpenTTD {REV} 버전 STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-{STRING} OpenTTD 개발팀 # Framerate display window From 4253db28fa5ff3caec39b939f8718a2bdd0955e3 Mon Sep 17 00:00:00 2001 From: Niels Martin Hansen Date: Sat, 27 Aug 2022 21:39:20 +0200 Subject: [PATCH 2/5] Fix #9972: Add some missing fill/resize flags on Framerate window widgets --- src/framerate_gui.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/framerate_gui.cpp b/src/framerate_gui.cpp index 1077629362..f25f2cb28f 100644 --- a/src/framerate_gui.cpp +++ b/src/framerate_gui.cpp @@ -359,15 +359,15 @@ static const NWidgetPart _framerate_window_widgets[] = { EndContainer(), NWidget(WWT_PANEL, COLOUR_GREY), NWidget(NWID_VERTICAL), SetPadding(6), SetPIP(0, 3, 0), - NWidget(WWT_TEXT, COLOUR_GREY, WID_FRW_RATE_GAMELOOP), SetDataTip(STR_FRAMERATE_RATE_GAMELOOP, STR_FRAMERATE_RATE_GAMELOOP_TOOLTIP), - NWidget(WWT_TEXT, COLOUR_GREY, WID_FRW_RATE_DRAWING), SetDataTip(STR_FRAMERATE_RATE_BLITTER, STR_FRAMERATE_RATE_BLITTER_TOOLTIP), - NWidget(WWT_TEXT, COLOUR_GREY, WID_FRW_RATE_FACTOR), SetDataTip(STR_FRAMERATE_SPEED_FACTOR, STR_FRAMERATE_SPEED_FACTOR_TOOLTIP), + NWidget(WWT_TEXT, COLOUR_GREY, WID_FRW_RATE_GAMELOOP), SetDataTip(STR_FRAMERATE_RATE_GAMELOOP, STR_FRAMERATE_RATE_GAMELOOP_TOOLTIP), SetFill(1, 0), SetResize(1, 0), + NWidget(WWT_TEXT, COLOUR_GREY, WID_FRW_RATE_DRAWING), SetDataTip(STR_FRAMERATE_RATE_BLITTER, STR_FRAMERATE_RATE_BLITTER_TOOLTIP), SetFill(1, 0), SetResize(1, 0), + NWidget(WWT_TEXT, COLOUR_GREY, WID_FRW_RATE_FACTOR), SetDataTip(STR_FRAMERATE_SPEED_FACTOR, STR_FRAMERATE_SPEED_FACTOR_TOOLTIP), SetFill(1, 0), SetResize(1, 0), EndContainer(), EndContainer(), NWidget(NWID_HORIZONTAL), NWidget(WWT_PANEL, COLOUR_GREY), NWidget(NWID_VERTICAL), SetPadding(6), SetPIP(0, 3, 0), - NWidget(NWID_HORIZONTAL), SetPIP(0, 6, 0), + NWidget(NWID_HORIZONTAL), SetPIP(0, 8, 0), NWidget(WWT_EMPTY, COLOUR_GREY, WID_FRW_TIMES_NAMES), SetScrollbar(WID_FRW_SCROLLBAR), NWidget(WWT_EMPTY, COLOUR_GREY, WID_FRW_TIMES_CURRENT), SetScrollbar(WID_FRW_SCROLLBAR), NWidget(WWT_EMPTY, COLOUR_GREY, WID_FRW_TIMES_AVERAGE), SetScrollbar(WID_FRW_SCROLLBAR), @@ -375,7 +375,7 @@ static const NWidgetPart _framerate_window_widgets[] = { NWidget(WWT_EMPTY, COLOUR_GREY, WID_FRW_ALLOCSIZE), SetScrollbar(WID_FRW_SCROLLBAR), EndContainer(), EndContainer(), - NWidget(WWT_TEXT, COLOUR_GREY, WID_FRW_INFO_DATA_POINTS), SetDataTip(STR_FRAMERATE_DATA_POINTS, 0x0), + NWidget(WWT_TEXT, COLOUR_GREY, WID_FRW_INFO_DATA_POINTS), SetDataTip(STR_FRAMERATE_DATA_POINTS, 0x0), SetFill(1, 0), SetResize(1, 0), EndContainer(), EndContainer(), NWidget(NWID_VERTICAL), From 5a0dd7e322eac9228b5be79b6a31898f94736e3b Mon Sep 17 00:00:00 2001 From: Niels Martin Hansen Date: Sat, 27 Aug 2022 22:05:20 +0200 Subject: [PATCH 3/5] Fix #9971: Don't assert that time moves forward --- src/framerate_gui.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/framerate_gui.cpp b/src/framerate_gui.cpp index f25f2cb28f..903086caa5 100644 --- a/src/framerate_gui.cpp +++ b/src/framerate_gui.cpp @@ -965,7 +965,7 @@ struct FrametimeGraphWindow : Window { (int)Scinterlate(x_zero, x_max, 0, (int64)draw_horz_scale, (int64)draw_horz_scale - (int64)time_sum), (int)Scinterlate(y_zero, y_max, 0, (int64)draw_vert_scale, (int64)value) }; - assert(newpoint.x <= lastpoint.x); + if (newpoint.x > lastpoint.x) continue; // don't draw backwards GfxDrawLine(lastpoint.x, lastpoint.y, newpoint.x, newpoint.y, c_lines); lastpoint = newpoint; From 3937953f720b24fe4352c764916ae2d1e55ba821 Mon Sep 17 00:00:00 2001 From: Joel-Milligan <52927756+Joel-Milligan@users.noreply.github.com> Date: Tue, 30 Aug 2022 20:56:19 +0800 Subject: [PATCH 4/5] Fix #9363: Rebuild client list on reinit event (#9929) --- src/network/network_gui.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/network/network_gui.cpp b/src/network/network_gui.cpp index 1e8b2f4b9c..a819fcc32c 100644 --- a/src/network/network_gui.cpp +++ b/src/network/network_gui.cpp @@ -1714,6 +1714,11 @@ public: this->FinishInitNested(window_number); } + void OnInit() override + { + RebuildList(); + } + void OnInvalidateData(int data = 0, bool gui_scope = true) override { this->RebuildList(); From 788b06fe0fae93c5bdd69a5db961a95be540c408 Mon Sep 17 00:00:00 2001 From: Tyler Trahan Date: Tue, 30 Aug 2022 08:26:02 -0600 Subject: [PATCH 5/5] Change: New player companies use favorite manager face, if saved (#9895) --- src/company_cmd.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/company_cmd.cpp b/src/company_cmd.cpp index 7a12cf7268..2e24b01cb2 100644 --- a/src/company_cmd.cpp +++ b/src/company_cmd.cpp @@ -562,7 +562,14 @@ Company *DoStartupNewCompany(bool is_ai, CompanyID company = INVALID_COMPANY) c->avail_railtypes = GetCompanyRailtypes(c->index); c->avail_roadtypes = GetCompanyRoadTypes(c->index); c->inaugurated_year = _cur_year; - RandomCompanyManagerFaceBits(c->face, (GenderEthnicity)Random(), false, false); // create a random company manager face + + /* If starting a player company in singleplayer and a favorite company manager face is selected, choose it. Otherwise, use a random face. + * In a network game, we'll choose the favorite face later in CmdCompanyCtrl to sync it to all clients. */ + if (_company_manager_face != 0 && !is_ai && !_networking) { + c->face = _company_manager_face; + } else { + RandomCompanyManagerFaceBits(c->face, (GenderEthnicity)Random(), false, false); + } SetDefaultCompanySettings(c->index); ClearEnginesHiddenFlagOfCompany(c->index); @@ -838,6 +845,10 @@ CommandCost CmdCompanyCtrl(DoCommandFlag flags, CompanyCtrlAction cca, CompanyID NetworkChangeCompanyPassword(_local_company, _settings_client.network.default_company_pass); } + /* In network games, we need to try setting the company manager face here to sync it to all clients. + * If a favorite company manager face is selected, choose it. Otherwise, use a random face. */ + if (_company_manager_face != 0) Command::Post(_company_manager_face); + /* Now that we have a new company, broadcast our company settings to * all clients so everything is in sync */ SyncCompanySettings();