diff --git a/data/language/en-GB.txt b/data/language/en-GB.txt index 7997547cdc..73618a460e 100644 --- a/data/language/en-GB.txt +++ b/data/language/en-GB.txt @@ -3651,6 +3651,8 @@ STR_6450 :{BLACK}“{STRING}” STR_6451 :{BLACK}“{STRING}” - {STRING} STR_6452 :{WINDOW_COLOUR_2}Sells: {BLACK}{STRING} STR_6453 :Copy version info +STR_6454 :Can’t rename banner… +STR_6455 :Can’t rename sign… ############# # Scenarios # diff --git a/src/openrct2/actions/BannerPlaceAction.cpp b/src/openrct2/actions/BannerPlaceAction.cpp index 28a029cc40..88e6860d27 100644 --- a/src/openrct2/actions/BannerPlaceAction.cpp +++ b/src/openrct2/actions/BannerPlaceAction.cpp @@ -38,7 +38,7 @@ BannerPlaceActionResult::BannerPlaceActionResult(GameActions::Status err, rct_st { } -BannerPlaceAction::BannerPlaceAction(const CoordsXYZD& loc, uint8_t bannerType, uint8_t primaryColour) +BannerPlaceAction::BannerPlaceAction(const CoordsXYZD& loc, ObjectEntryIndex bannerType, colour_t primaryColour) : _loc(loc) , _bannerType(bannerType) , _primaryColour(primaryColour) diff --git a/src/openrct2/actions/BannerPlaceAction.h b/src/openrct2/actions/BannerPlaceAction.h index 94d9e7feb3..c4195a18ca 100644 --- a/src/openrct2/actions/BannerPlaceAction.h +++ b/src/openrct2/actions/BannerPlaceAction.h @@ -31,7 +31,7 @@ private: public: BannerPlaceAction() = default; - BannerPlaceAction(const CoordsXYZD& loc, uint8_t bannerType, uint8_t primaryColour); + BannerPlaceAction(const CoordsXYZD& loc, ObjectEntryIndex bannerType, colour_t primaryColour); void AcceptParameters(GameActionParameterVisitor & visitor) override; diff --git a/src/openrct2/actions/BannerSetNameAction.cpp b/src/openrct2/actions/BannerSetNameAction.cpp index 765acecb42..393fc3e3ad 100644 --- a/src/openrct2/actions/BannerSetNameAction.cpp +++ b/src/openrct2/actions/BannerSetNameAction.cpp @@ -48,7 +48,7 @@ GameActions::Result::Ptr BannerSetNameAction::Query() const if (banner == nullptr) { log_warning("Invalid banner id, banner id = %d", _bannerIndex); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_RENAME_BANNER, STR_NONE); } return MakeResult(); } @@ -59,7 +59,7 @@ GameActions::Result::Ptr BannerSetNameAction::Execute() const if (banner == nullptr) { log_warning("Invalid banner id, banner id = %d", _bannerIndex); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_RENAME_BANNER, STR_NONE); } banner->text = _name; diff --git a/src/openrct2/actions/BannerSetStyleAction.cpp b/src/openrct2/actions/BannerSetStyleAction.cpp index 035b2bb3e7..6407112795 100644 --- a/src/openrct2/actions/BannerSetStyleAction.cpp +++ b/src/openrct2/actions/BannerSetStyleAction.cpp @@ -50,7 +50,7 @@ GameActions::Result::Ptr BannerSetStyleAction::Query() const if (banner == nullptr) { log_error("Invalid banner index: index = %u", _bannerIndex); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_REPAINT_THIS); } res->Expenditure = ExpenditureType::Landscaping; @@ -62,7 +62,7 @@ GameActions::Result::Ptr BannerSetStyleAction::Query() const if (tileElement == nullptr) { log_error("Could not find banner index = %u", _bannerIndex); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_REPAINT_THIS); } switch (_type) @@ -86,12 +86,12 @@ GameActions::Result::Ptr BannerSetStyleAction::Query() const if (tileElement->AsBanner() == nullptr) { log_error("Tile element was not a banner."); - return MakeResult(GameActions::Status::Unknown, STR_NONE); + return MakeResult(GameActions::Status::Unknown, STR_CANT_REPAINT_THIS); } break; default: log_error("Invalid type: %u", _type); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_REPAINT_THIS); } return res; } @@ -104,7 +104,7 @@ GameActions::Result::Ptr BannerSetStyleAction::Execute() const if (banner == nullptr) { log_error("Invalid banner index: index = %u", _bannerIndex); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_REPAINT_THIS); } res->Expenditure = ExpenditureType::Landscaping; @@ -116,7 +116,7 @@ GameActions::Result::Ptr BannerSetStyleAction::Execute() const if (tileElement == nullptr) { log_error("Could not find banner index = %u", _bannerIndex); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_REPAINT_THIS); } switch (_type) @@ -133,7 +133,7 @@ GameActions::Result::Ptr BannerSetStyleAction::Execute() const if (bannerElement == nullptr) { log_error("Tile element was not a banner."); - return MakeResult(GameActions::Status::Unknown, STR_NONE); + return MakeResult(GameActions::Status::Unknown, STR_CANT_REPAINT_THIS); } banner->flags &= ~BANNER_FLAG_NO_ENTRY; @@ -148,7 +148,7 @@ GameActions::Result::Ptr BannerSetStyleAction::Execute() const } default: log_error("Invalid type: %u", _type); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_REPAINT_THIS); } auto intent = Intent(INTENT_ACTION_UPDATE_BANNER); diff --git a/src/openrct2/actions/SignSetNameAction.cpp b/src/openrct2/actions/SignSetNameAction.cpp index d13941edd7..92b9145ab7 100644 --- a/src/openrct2/actions/SignSetNameAction.cpp +++ b/src/openrct2/actions/SignSetNameAction.cpp @@ -49,7 +49,7 @@ GameActions::Result::Ptr SignSetNameAction::Query() const if (banner == nullptr) { log_warning("Invalid game command for setting sign name, banner id = %d", _bannerIndex); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_RENAME_SIGN, STR_NONE); } return MakeResult(); } @@ -60,7 +60,7 @@ GameActions::Result::Ptr SignSetNameAction::Execute() const if (banner == nullptr) { log_warning("Invalid game command for setting sign name, banner id = %d", _bannerIndex); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_RENAME_SIGN, STR_NONE); } if (!_name.empty()) diff --git a/src/openrct2/actions/SignSetStyleAction.cpp b/src/openrct2/actions/SignSetStyleAction.cpp index de79708f6b..e38319c71d 100644 --- a/src/openrct2/actions/SignSetStyleAction.cpp +++ b/src/openrct2/actions/SignSetStyleAction.cpp @@ -43,7 +43,7 @@ GameActions::Result::Ptr SignSetStyleAction::Query() const if (banner == nullptr) { log_error("Invalid banner id. id = ", _bannerIndex); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_REPAINT_THIS); } if (_isLarge) @@ -52,12 +52,12 @@ GameActions::Result::Ptr SignSetStyleAction::Query() const if (tileElement == nullptr) { log_warning("Invalid game command for setting sign style, banner id '%d' not found", _bannerIndex); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_REPAINT_THIS); } if (tileElement->GetType() != TILE_ELEMENT_TYPE_LARGE_SCENERY) { log_warning("Invalid game command for setting sign style, banner id '%d' is not large", _bannerIndex); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_REPAINT_THIS); } } else @@ -67,7 +67,7 @@ GameActions::Result::Ptr SignSetStyleAction::Query() const if (!wallElement) { log_warning("Invalid game command for setting sign style, banner id '%d' not found", _bannerIndex); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_REPAINT_THIS); } } @@ -80,7 +80,7 @@ GameActions::Result::Ptr SignSetStyleAction::Execute() const if (banner == nullptr) { log_error("Invalid banner id. id = ", _bannerIndex); - return MakeResult(GameActions::Status::InvalidParameters, STR_NONE); + return MakeResult(GameActions::Status::InvalidParameters, STR_CANT_REPAINT_THIS); } CoordsXY coords = banner->position.ToCoordsXY(); @@ -92,7 +92,7 @@ GameActions::Result::Ptr SignSetStyleAction::Execute() const { coords, tileElement->GetBaseZ(), tileElement->GetDirection() }, tileElement->AsLargeScenery()->GetSequenceIndex(), _mainColour, _textColour)) { - return MakeResult(GameActions::Status::Unknown, STR_NONE); + return MakeResult(GameActions::Status::Unknown, STR_CANT_REPAINT_THIS); } } else diff --git a/src/openrct2/localisation/StringIds.h b/src/openrct2/localisation/StringIds.h index 0671d62036..8a4a4ab5e2 100644 --- a/src/openrct2/localisation/StringIds.h +++ b/src/openrct2/localisation/StringIds.h @@ -3905,6 +3905,9 @@ enum STR_COPY_BUILD_HASH = 6453, + STR_CANT_RENAME_BANNER = 6454, + STR_CANT_RENAME_SIGN = 6455, + // Have to include resource strings (from scenarios and objects) for the time being now that language is partially working /* MAX_STR_COUNT = 32768 */ // MAX_STR_COUNT - upper limit for number of strings, not the current count strings }; diff --git a/src/openrct2/world/Banner.cpp b/src/openrct2/world/Banner.cpp index 049540f4f0..f51937f5bf 100644 --- a/src/openrct2/world/Banner.cpp +++ b/src/openrct2/world/Banner.cpp @@ -424,8 +424,8 @@ Banner* CreateBanner() banner->flags = 0; banner->type = 0; banner->text = {}; - banner->colour = 2; - banner->text_colour = 2; + banner->colour = COLOUR_WHITE; + banner->text_colour = COLOUR_WHITE; } return banner; }