1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-29 17:54:50 +01:00

Add Some Items to the OpenRCT2::Ui namespace (#22423)

* Put widget in the Ui namespace

* Put theme in the Ui namespace

* Put objective in Ui namespace
This commit is contained in:
Duncan
2024-07-31 05:26:53 +01:00
committed by GitHub
parent bd0dd44c10
commit 681b54dc87
11 changed files with 2043 additions and 2018 deletions

View File

@@ -16,53 +16,56 @@
#include <openrct2/ride/RideData.h>
#include <openrct2/scenario/Scenario.h>
const StringId kObjectiveNames[] = {
STR_OBJECTIVE_NONE,
STR_OBJECTIVE_GUESTS_BY,
STR_OBJECTIVE_PARK_VALUE_BY,
STR_OBJECTIVE_HAVE_FUN,
STR_OBJECTIVE_BUILD_THE_BEST,
STR_OBJECTIVE_10_ROLLERCOASTERS,
STR_OBJECTIVE_GUESTS_AND_RATING,
STR_OBJECTIVE_MONTHLY_RIDE_INCOME,
STR_OBJECTIVE_10_ROLLERCOASTERS_LENGTH,
STR_OBJECTIVE_FINISH_5_ROLLERCOASTERS,
STR_OBJECTIVE_REPLAY_LOAN_AND_PARK_VALUE,
STR_OBJECTIVE_MONTHLY_FOOD_INCOME,
};
void formatObjective(Formatter& ft, Objective objective)
namespace OpenRCT2::Ui
{
if (objective.Type == OBJECTIVE_BUILD_THE_BEST)
const StringId kObjectiveNames[] = {
STR_OBJECTIVE_NONE,
STR_OBJECTIVE_GUESTS_BY,
STR_OBJECTIVE_PARK_VALUE_BY,
STR_OBJECTIVE_HAVE_FUN,
STR_OBJECTIVE_BUILD_THE_BEST,
STR_OBJECTIVE_10_ROLLERCOASTERS,
STR_OBJECTIVE_GUESTS_AND_RATING,
STR_OBJECTIVE_MONTHLY_RIDE_INCOME,
STR_OBJECTIVE_10_ROLLERCOASTERS_LENGTH,
STR_OBJECTIVE_FINISH_5_ROLLERCOASTERS,
STR_OBJECTIVE_REPLAY_LOAN_AND_PARK_VALUE,
STR_OBJECTIVE_MONTHLY_FOOD_INCOME,
};
void formatObjective(Formatter& ft, Objective objective)
{
StringId rideTypeString = STR_NONE;
auto rideTypeId = objective.RideId;
if (rideTypeId != RIDE_TYPE_NULL && rideTypeId < RIDE_TYPE_COUNT)
if (objective.Type == OBJECTIVE_BUILD_THE_BEST)
{
rideTypeString = GetRideTypeDescriptor(rideTypeId).Naming.Name;
StringId rideTypeString = STR_NONE;
auto rideTypeId = objective.RideId;
if (rideTypeId != RIDE_TYPE_NULL && rideTypeId < RIDE_TYPE_COUNT)
{
rideTypeString = GetRideTypeDescriptor(rideTypeId).Naming.Name;
}
ft.Add<StringId>(rideTypeString);
}
else if (objective.Type == OBJECTIVE_GUESTS_BY)
{
ft.Add<int32_t>(objective.NumGuests);
ft.Add<int16_t>(DateGetTotalMonths(MONTH_OCTOBER, objective.Year));
}
else if (objective.Type == OBJECTIVE_GUESTS_AND_RATING)
{
ft.Add<int32_t>(objective.NumGuests);
}
else if (objective.Type == OBJECTIVE_10_ROLLERCOASTERS_LENGTH)
{
ft.Add<int16_t>(objective.MinimumLength);
}
ft.Add<StringId>(rideTypeString);
}
else if (objective.Type == OBJECTIVE_GUESTS_BY)
{
ft.Add<int32_t>(objective.NumGuests);
ft.Add<int16_t>(DateGetTotalMonths(MONTH_OCTOBER, objective.Year));
}
else if (objective.Type == OBJECTIVE_GUESTS_AND_RATING)
{
ft.Add<int32_t>(objective.NumGuests);
}
else if (objective.Type == OBJECTIVE_10_ROLLERCOASTERS_LENGTH)
{
ft.Add<int16_t>(objective.MinimumLength);
}
else
{
ft.Add<int16_t>(objective.NumGuests);
ft.Add<int16_t>(DateGetTotalMonths(MONTH_OCTOBER, objective.Year));
if (objective.Type == OBJECTIVE_FINISH_5_ROLLERCOASTERS)
ft.Add<uint16_t>(objective.MinimumExcitement);
else
ft.Add<money64>(objective.Currency);
{
ft.Add<int16_t>(objective.NumGuests);
ft.Add<int16_t>(DateGetTotalMonths(MONTH_OCTOBER, objective.Year));
if (objective.Type == OBJECTIVE_FINISH_5_ROLLERCOASTERS)
ft.Add<uint16_t>(objective.MinimumExcitement);
else
ft.Add<money64>(objective.Currency);
}
}
}
} // namespace OpenRCT2::Ui