From 81a123220bf6ef57b15cf274767e2bd795cc6ddd Mon Sep 17 00:00:00 2001 From: Ted John Date: Thu, 17 Mar 2022 22:52:25 +0000 Subject: [PATCH] Update images for transparency window --- resources/g2/icons/hide_full.png | Bin 0 -> 210 bytes resources/g2/icons/hide_partial.png | Bin 0 -> 209 bytes resources/g2/icons/hide_scenery.png | Bin 0 -> 469 bytes .../icons/{supports.png => hide_supports.png} | Bin resources/g2/icons/hide_vegetation.png | Bin 0 -> 588 bytes .../{coaster_train.png => hide_vehicles.png} | Bin resources/g2/sprites.json | 24 ++++- src/openrct2-ui/windows/Transparency.cpp | 99 +++++++++--------- src/openrct2/sprites.h | 10 +- 9 files changed, 81 insertions(+), 52 deletions(-) create mode 100644 resources/g2/icons/hide_full.png create mode 100644 resources/g2/icons/hide_partial.png create mode 100644 resources/g2/icons/hide_scenery.png rename resources/g2/icons/{supports.png => hide_supports.png} (100%) create mode 100644 resources/g2/icons/hide_vegetation.png rename resources/g2/icons/{coaster_train.png => hide_vehicles.png} (100%) diff --git a/resources/g2/icons/hide_full.png b/resources/g2/icons/hide_full.png new file mode 100644 index 0000000000000000000000000000000000000000..30ea23476d36a9e00a1234dac198023e941c5836 GIT binary patch literal 210 zcmeAS@N?(olHy`uVBq!ia0vp^0zk~c!3-piujpS2q!^2X+?^QKos)S9^91;WxB_WqV`Fh;Wgx>WleG<`t|Z7W`2YX^3=Uc=zX1811s;*b3=DjS zL74G){)!Z!puMMyV~9k!ZZD${g967Pmw*4COFWCc$xu8;C{_18$1TyUcV8Mep0Z?i wxA5C`sPdSQ@_a#~Nnf7--jjW@Wb<2gcLPT5oxb^NfkrWSy85}Sb4q9e0Co01G5`Po literal 0 HcmV?d00001 diff --git a/resources/g2/icons/hide_partial.png b/resources/g2/icons/hide_partial.png new file mode 100644 index 0000000000000000000000000000000000000000..7f563b1db6f2f87be4db1fa5fffa36fd97d880cc GIT binary patch literal 209 zcmeAS@N?(olHy`uVBq!ia0vp^0zk~c!3-piujpS2q!^2X+?^QKos)S9^91;WxB_WqV`Fh;Wgx>WleG<`t|Z7W`2YX^3=Uc=zX1811s;*b3=DjS zL74G){)!Z!pq;0SV~9k!X)hxmg8~N=>%afc87^lQyFWO=x^2Q;2A1xN uqnds`QWMzlbl>vaPAQ>E=h+46OW8d|7=>QG;`jzMiNVv=&t;ucLK6Vb3_N-O literal 0 HcmV?d00001 diff --git a/resources/g2/icons/hide_scenery.png b/resources/g2/icons/hide_scenery.png new file mode 100644 index 0000000000000000000000000000000000000000..5c3b8d6619668259c77087897e7d4f43a5606533 GIT binary patch literal 469 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EW)6jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCilQ1AIbU%iXoR!>yCer59UUZ}#`^S62th_-hLvPfy=|`0)Gp|1aOZo!{Kt zJbij}aq;~1>)(I=?46u!9~^xB`~SZ_JR*x382Ao@Fyrz36)8Z$cb+beAsWG<6B{QTR^V{y%~fk}NJ_5$_kViX z!IG-uEf$|6#GHd}1$kLMy)9dK`#IN!w+FaYMe6KYCseV|vuC}oYuePsZp`f5bE9yQ z!jv5^zGS|eaCxB%OX|g4Zf!Q)6Ap_hf7g)l%suFL-8W&*WTR+}-$ARZ5{=vYQXc*b zm@z%zns#HMjmQQqff`%cV9|%0uU`BA*wM-D)TP5u4*7<9?7k4ZdeP&@wrvZT%~NUu zze~n%?W$tuxhQz=*rVMQh9^(+$o4tEH1HyL`U4c(^sUzPob!{P^wX>-o*at&6?u!{x1m zwdZfozyE!IbiOmcJ%hZtw6iw5ezNuaV&nc~b$x$%>v(nLU~T{Q_~hB;+1c{;!NJMq z(#HA>?$Qj)lb!XQoq-lz;k)_-NU4+r`33(c3>YGGczJ>9ISV`@iy0XB4ude`@%$Aj zK#y5^x;Tbt1glQGS;nl$5r3 z?#P6lSE8ct%wJXTu*Sms&!MpG5`I@(rWiLbi!nNv`1$LS$sO~yWa(Mt-)4R{DdLN# zcyl$!j1#UAlhZED*}Pu)&DH#1VNTV+=__Q;h{ee}ssyG96&4j(ZhD(PLHG(wl%nyZ z4M*8^r{A0Cdh+1^2ZxW@z4`SnJU%wzJxjmtOt&4scIIt23-^zedD?S4>Px`wS)c8q zr@!lPGN_6Mdgg(wAp~CBYPEEO*^Wgk339;j>SFN_3JC*iPm*+Q+ w*#3QQpI?vdm=VA}tM{Au;-mX_)ck literal 0 HcmV?d00001 diff --git a/resources/g2/icons/coaster_train.png b/resources/g2/icons/hide_vehicles.png similarity index 100% rename from resources/g2/icons/coaster_train.png rename to resources/g2/icons/hide_vehicles.png diff --git a/resources/g2/sprites.json b/resources/g2/sprites.json index 5e279c603f..7c472f3bac 100644 --- a/resources/g2/sprites.json +++ b/resources/g2/sprites.json @@ -504,10 +504,30 @@ "y_offset": 1 }, { - "path": "icons/coaster_train.png" + "path": "icons/hide_vegetation.png", + "x_offset": 1, + "y_offset": 1 }, { - "path": "icons/supports.png" + "path": "icons/hide_scenery.png", + "x_offset": 1, + "y_offset": 1 + }, + { + "path": "icons/hide_vehicles.png" + }, + { + "path": "icons/hide_supports.png" + }, + { + "path": "icons/hide_partial.png", + "x_offset": 4, + "y_offset": 2 + }, + { + "path": "icons/hide_full.png", + "x_offset": 4, + "y_offset": 2 }, { "path": "font/latin/ae-uc-small.png", diff --git a/src/openrct2-ui/windows/Transparency.cpp b/src/openrct2-ui/windows/Transparency.cpp index 55d3c02c1c..7299bf56be 100644 --- a/src/openrct2-ui/windows/Transparency.cpp +++ b/src/openrct2-ui/windows/Transparency.cpp @@ -36,19 +36,19 @@ enum WINDOW_TRANSPARENCY_WIDGET_IDX WIDX_TITLE, WIDX_CLOSE, - WIDX_SEE_THROUGH_RIDES, - WIDX_SEE_THROUGH_VEHICLES, - WIDX_SEE_THROUGH_SCENERY, - WIDX_SEE_THROUGH_TREES, - WIDX_SEE_THROUGH_PATHS, - WIDX_SEE_THROUGH_SUPPORTS, - WIDX_INVISIBLE_GUESTS, - WIDX_INVISIBLE_STAFF, + WIDX_HIDE_TREES, + WIDX_HIDE_SCENERY, + WIDX_HIDE_PATHS, + WIDX_HIDE_RIDES, + WIDX_HIDE_VEHICLES, + WIDX_HIDE_SUPPORTS, + WIDX_HIDE_GUESTS, + WIDX_HIDE_STAFF, + WIDX_INVISIBLE_TREES, + WIDX_INVISIBLE_SCENERY, + WIDX_INVISIBLE_PATHS, WIDX_INVISIBLE_RIDES, WIDX_INVISIBLE_VEHICLES, - WIDX_INVISIBLE_SCENERY, - WIDX_INVISIBLE_TREES, - WIDX_INVISIBLE_PATHS, WIDX_INVISIBLE_SUPPORTS, }; @@ -58,29 +58,29 @@ static constexpr const rct_string_id WINDOW_TITLE = STR_TRANSPARENCY_OPTIONS_TIT static constexpr const int32_t WW = 204; static constexpr const int32_t WH = 57; -static constexpr ScreenSize ICON_BUTTON = {24, 24}; -static constexpr ScreenSize FLAT_BUTTON = {24, 12}; +static constexpr ScreenSize HIDE_SIZE = {24, 24}; +static constexpr ScreenSize INVISIBLE_SIZE = {24, 12}; #pragma endregion static rct_widget window_transparency_main_widgets[] = { WINDOW_SHIM(WINDOW_TITLE, WW, WH), - MakeWidget({ 77, 17}, ICON_BUTTON, WindowWidgetType::ImgBtn, WindowColour::Secondary, SPR_RIDE, STR_SEE_THROUGH_RIDES), - MakeWidget({102, 17}, ICON_BUTTON, WindowWidgetType::ImgBtn, WindowColour::Secondary, SPR_G2_BUTTON_COASTER_TRAIN, STR_SEE_THROUGH_VEHICLES), - MakeWidget({ 27, 17}, ICON_BUTTON, WindowWidgetType::ImgBtn, WindowColour::Secondary, SPR_G2_BUTTON_LARGE_SCENERY, STR_SEE_THROUGH_SCENERY), - MakeWidget({ 2, 17}, ICON_BUTTON, WindowWidgetType::ImgBtn, WindowColour::Secondary, SPR_G2_BUTTON_TREES, STR_SEE_THROUGH_TREES), - MakeWidget({ 52, 17}, ICON_BUTTON, WindowWidgetType::ImgBtn, WindowColour::Secondary, SPR_G2_BUTTON_FOOTPATH, STR_SEE_THROUGH_PATHS), - MakeWidget({127, 17}, ICON_BUTTON, WindowWidgetType::ImgBtn, WindowColour::Secondary, SPR_G2_BUTTON_SUPPORTS, STR_SEE_THROUGH_SUPPORTS), - MakeWidget({152, 17}, ICON_BUTTON, WindowWidgetType::ImgBtn, WindowColour::Secondary, SPR_GUESTS, STR_INVISIBLE_GUESTS), - MakeWidget({177, 17}, ICON_BUTTON, WindowWidgetType::ImgBtn, WindowColour::Secondary, 0xFFFFFFFF, STR_INVISIBLE_STAFF), + MakeWidget({ 2, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_G2_BUTTON_HIDE_VEGETATION, STR_SEE_THROUGH_TREES), + MakeWidget({ 27, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_G2_BUTTON_HIDE_SCENERY, STR_SEE_THROUGH_SCENERY), + MakeWidget({ 52, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_G2_BUTTON_FOOTPATH, STR_SEE_THROUGH_PATHS), + MakeWidget({ 77, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_RIDE, STR_SEE_THROUGH_RIDES), + MakeWidget({102, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_G2_BUTTON_HIDE_VEHICLES, STR_SEE_THROUGH_VEHICLES), + MakeWidget({127, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_G2_BUTTON_HIDE_SUPPORTS, STR_SEE_THROUGH_SUPPORTS), + MakeWidget({152, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_GUESTS, STR_INVISIBLE_GUESTS), + MakeWidget({177, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, 0xFFFFFFFF, STR_INVISIBLE_STAFF), - MakeWidget({ 77, 42}, FLAT_BUTTON, WindowWidgetType::Button, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_RIDES), - MakeWidget({102, 42}, FLAT_BUTTON, WindowWidgetType::Button, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_VEHICLES), - MakeWidget({ 27, 42}, FLAT_BUTTON, WindowWidgetType::Button, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_SCENERY), - MakeWidget({ 2, 42}, FLAT_BUTTON, WindowWidgetType::Button, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_TREES), - MakeWidget({ 52, 42}, FLAT_BUTTON, WindowWidgetType::Button, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_PATHS), - MakeWidget({127, 42}, FLAT_BUTTON, WindowWidgetType::Button, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_SUPPORTS), + MakeWidget({ 2, 42}, INVISIBLE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_TREES), + MakeWidget({ 27, 42}, INVISIBLE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_SCENERY), + MakeWidget({ 52, 42}, INVISIBLE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_PATHS), + MakeWidget({ 77, 42}, INVISIBLE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_RIDES), + MakeWidget({102, 42}, INVISIBLE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_VEHICLES), + MakeWidget({127, 42}, INVISIBLE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_SUPPORTS), { WIDGETS_END }, }; @@ -124,27 +124,32 @@ public: if (w != nullptr) wflags = w->viewport->flags; - SetWidgetPressed(WIDX_SEE_THROUGH_RIDES, (wflags & VIEWPORT_FLAG_HIDE_RIDES)); - SetWidgetPressed(WIDX_SEE_THROUGH_VEHICLES, (wflags & VIEWPORT_FLAG_HIDE_VEHICLES)); - SetWidgetPressed(WIDX_SEE_THROUGH_SCENERY, (wflags & VIEWPORT_FLAG_HIDE_SCENERY)); - SetWidgetPressed(WIDX_SEE_THROUGH_TREES, (wflags & VIEWPORT_FLAG_HIDE_TREES)); - SetWidgetPressed(WIDX_SEE_THROUGH_PATHS, (wflags & VIEWPORT_FLAG_HIDE_PATHS)); - SetWidgetPressed(WIDX_SEE_THROUGH_SUPPORTS, (wflags & VIEWPORT_FLAG_HIDE_SUPPORTS)); + SetWidgetPressed(WIDX_HIDE_TREES, (wflags & VIEWPORT_FLAG_HIDE_TREES)); + SetWidgetPressed(WIDX_HIDE_SCENERY, (wflags & VIEWPORT_FLAG_HIDE_SCENERY)); + SetWidgetPressed(WIDX_HIDE_PATHS, (wflags & VIEWPORT_FLAG_HIDE_PATHS)); + SetWidgetPressed(WIDX_HIDE_RIDES, (wflags & VIEWPORT_FLAG_HIDE_RIDES)); + SetWidgetPressed(WIDX_HIDE_VEHICLES, (wflags & VIEWPORT_FLAG_HIDE_VEHICLES)); + SetWidgetPressed(WIDX_HIDE_SUPPORTS, (wflags & VIEWPORT_FLAG_HIDE_SUPPORTS)); + SetWidgetPressed(WIDX_HIDE_GUESTS, (wflags & VIEWPORT_FLAG_HIDE_GUESTS)); + SetWidgetPressed(WIDX_HIDE_STAFF, (wflags & VIEWPORT_FLAG_HIDE_STAFF)); + SetWidgetPressed(WIDX_INVISIBLE_TREES, (wflags & VIEWPORT_FLAG_INVISIBLE_TREES)); + SetWidgetPressed(WIDX_INVISIBLE_SCENERY, (wflags & VIEWPORT_FLAG_INVISIBLE_SCENERY)); + SetWidgetPressed(WIDX_INVISIBLE_PATHS, (wflags & VIEWPORT_FLAG_INVISIBLE_PATHS)); SetWidgetPressed(WIDX_INVISIBLE_RIDES, (wflags & VIEWPORT_FLAG_INVISIBLE_RIDES)); SetWidgetPressed(WIDX_INVISIBLE_VEHICLES, (wflags & VIEWPORT_FLAG_INVISIBLE_VEHICLES)); - SetWidgetPressed(WIDX_INVISIBLE_SCENERY, (wflags & VIEWPORT_FLAG_INVISIBLE_SCENERY)); - SetWidgetPressed(WIDX_INVISIBLE_TREES, (wflags & VIEWPORT_FLAG_INVISIBLE_TREES)); - SetWidgetPressed(WIDX_INVISIBLE_PATHS, (wflags & VIEWPORT_FLAG_INVISIBLE_PATHS)); SetWidgetPressed(WIDX_INVISIBLE_SUPPORTS, (wflags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS)); - SetWidgetPressed(WIDX_INVISIBLE_GUESTS, (wflags & VIEWPORT_FLAG_HIDE_GUESTS)); - SetWidgetPressed(WIDX_INVISIBLE_STAFF, (wflags & VIEWPORT_FLAG_HIDE_STAFF)); + + for (rct_widgetindex i = WIDX_INVISIBLE_TREES; i <= WIDX_INVISIBLE_SUPPORTS; i++) + { + widgets[i].image = IsWidgetPressed(i) ? SPR_G2_BUTTON_HIDE_FULL : SPR_G2_BUTTON_HIDE_PARTIAL; + } } void OnDraw(rct_drawpixelinfo& dpi) override { DrawWidgets(dpi); // Locate mechanic button image - const auto& widget = widgets[WIDX_INVISIBLE_STAFF]; + const auto& widget = widgets[WIDX_HIDE_STAFF]; auto screenCoords = windowPos + ScreenCoordsXY{ widget.left, widget.top }; gfx_draw_sprite( &dpi, (gStaffMechanicColour << 24) | IMAGE_TYPE_REMAP | IMAGE_TYPE_REMAP_2_PLUS | SPR_MECHANIC, screenCoords, 0); @@ -163,22 +168,22 @@ private: switch (widgetIndex) { - case WIDX_SEE_THROUGH_RIDES: + case WIDX_HIDE_RIDES: wflags ^= VIEWPORT_FLAG_HIDE_RIDES; break; - case WIDX_SEE_THROUGH_VEHICLES: + case WIDX_HIDE_VEHICLES: wflags ^= VIEWPORT_FLAG_HIDE_VEHICLES; break; - case WIDX_SEE_THROUGH_SCENERY: + case WIDX_HIDE_SCENERY: wflags ^= VIEWPORT_FLAG_HIDE_SCENERY; break; - case WIDX_SEE_THROUGH_TREES: + case WIDX_HIDE_TREES: wflags ^= VIEWPORT_FLAG_HIDE_TREES; break; - case WIDX_SEE_THROUGH_PATHS: + case WIDX_HIDE_PATHS: wflags ^= VIEWPORT_FLAG_HIDE_PATHS; break; - case WIDX_SEE_THROUGH_SUPPORTS: + case WIDX_HIDE_SUPPORTS: wflags ^= VIEWPORT_FLAG_HIDE_SUPPORTS; break; case WIDX_INVISIBLE_RIDES: @@ -211,10 +216,10 @@ private: gConfigGeneral.invisible_supports = wflags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS; config_save_default(); break; - case WIDX_INVISIBLE_GUESTS: + case WIDX_HIDE_GUESTS: wflags ^= VIEWPORT_FLAG_HIDE_GUESTS; break; - case WIDX_INVISIBLE_STAFF: + case WIDX_HIDE_STAFF: wflags ^= VIEWPORT_FLAG_HIDE_STAFF; break; default: diff --git a/src/openrct2/sprites.h b/src/openrct2/sprites.h index 924c236788..e205b6e6b6 100644 --- a/src/openrct2/sprites.h +++ b/src/openrct2/sprites.h @@ -888,10 +888,14 @@ enum SPR_G2_RIDE_STATION_TAB = SPR_G2_BEGIN + 141, SPR_G2_TERRAIN_EDGE_TAB = SPR_G2_BEGIN + 142, - SPR_G2_BUTTON_COASTER_TRAIN = SPR_G2_BEGIN + 143, - SPR_G2_BUTTON_SUPPORTS = SPR_G2_BEGIN + 144, + SPR_G2_BUTTON_HIDE_VEGETATION = SPR_G2_BEGIN + 143, + SPR_G2_BUTTON_HIDE_SCENERY = SPR_G2_BEGIN + 144, + SPR_G2_BUTTON_HIDE_VEHICLES = SPR_G2_BEGIN + 145, + SPR_G2_BUTTON_HIDE_SUPPORTS = SPR_G2_BEGIN + 146, + SPR_G2_BUTTON_HIDE_PARTIAL = SPR_G2_BEGIN + 147, + SPR_G2_BUTTON_HIDE_FULL = SPR_G2_BEGIN + 148, - SPR_G2_CHAR_BEGIN = SPR_G2_BEGIN + 145, + SPR_G2_CHAR_BEGIN = SPR_G2_BEGIN + 149, SPR_G2_AE_UPPER = SPR_G2_CHAR_BEGIN, SPR_G2_AE_LOWER = SPR_G2_CHAR_BEGIN + 1,