mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2025-12-24 00:03:11 +01:00
Merge pull request #20404 from duncanspumpkin/rideWindow
Ride Window refactor
This commit is contained in:
@@ -455,19 +455,10 @@ public:
|
|||||||
case INTENT_ACTION_INVALIDATE_VEHICLE_WINDOW:
|
case INTENT_ACTION_INVALIDATE_VEHICLE_WINDOW:
|
||||||
{
|
{
|
||||||
auto vehicle = static_cast<Vehicle*>(intent.GetPointerExtra(INTENT_EXTRA_VEHICLE));
|
auto vehicle = static_cast<Vehicle*>(intent.GetPointerExtra(INTENT_EXTRA_VEHICLE));
|
||||||
auto* w = WindowFindByNumber(WindowClass::Ride, vehicle->ride.ToUnderlying());
|
if (vehicle != nullptr)
|
||||||
if (w == nullptr)
|
{
|
||||||
return;
|
WindowRideInvalidateVehicle(*vehicle);
|
||||||
|
}
|
||||||
auto ride = vehicle->GetRide();
|
|
||||||
auto viewVehicleIndex = w->ride.view - 1;
|
|
||||||
if (ride == nullptr || viewVehicleIndex < 0 || viewVehicleIndex >= ride->NumTrains)
|
|
||||||
return;
|
|
||||||
|
|
||||||
if (vehicle->Id != ride->vehicles[viewVehicleIndex])
|
|
||||||
return;
|
|
||||||
|
|
||||||
w->Invalidate();
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -140,6 +140,7 @@ void WindowRideListRefreshList(WindowBase* w);
|
|||||||
WindowBase* WindowRideMainOpen(const Ride& ride);
|
WindowBase* WindowRideMainOpen(const Ride& ride);
|
||||||
WindowBase* WindowRideOpenTrack(TileElement* tileElement);
|
WindowBase* WindowRideOpenTrack(TileElement* tileElement);
|
||||||
WindowBase* WindowRideOpenVehicle(Vehicle* vehicle);
|
WindowBase* WindowRideOpenVehicle(Vehicle* vehicle);
|
||||||
|
void WindowRideInvalidateVehicle(const Vehicle& vehicle);
|
||||||
void WindowRideMeasurementsDesignCancel();
|
void WindowRideMeasurementsDesignCancel();
|
||||||
|
|
||||||
// rct2: 0x00F635EE
|
// rct2: 0x00F635EE
|
||||||
|
|||||||
@@ -280,13 +280,6 @@ struct NewRideVariables
|
|||||||
uint16_t selected_ride_countdown; // 488
|
uint16_t selected_ride_countdown; // 488
|
||||||
};
|
};
|
||||||
|
|
||||||
struct RideVariables
|
|
||||||
{
|
|
||||||
int16_t view;
|
|
||||||
int32_t var_482;
|
|
||||||
int32_t var_486;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct TrackListVariables
|
struct TrackListVariables
|
||||||
{
|
{
|
||||||
bool track_list_being_updated;
|
bool track_list_being_updated;
|
||||||
|
|||||||
@@ -59,7 +59,6 @@ struct WindowBase
|
|||||||
{
|
{
|
||||||
CampaignVariables campaign;
|
CampaignVariables campaign;
|
||||||
NewRideVariables new_ride;
|
NewRideVariables new_ride;
|
||||||
RideVariables ride;
|
|
||||||
TrackListVariables track_list;
|
TrackListVariables track_list;
|
||||||
ErrorVariables error;
|
ErrorVariables error;
|
||||||
void* custom_info;
|
void* custom_info;
|
||||||
|
|||||||
Reference in New Issue
Block a user