1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-21 14:02:59 +01:00

Close #15750: Multiple park entrance types in one park (#21909)

* Add new park entrance placement window

* Start entrance tool as soon as window opens;

* Rename constants to conform to current code standards

* Increment PARK_FILE_CURRENT_VERSION

* Increment kNetworkStreamVersion

Co-authored-by: Aaron van Geffen <aaron@aaronweb.net>
This commit is contained in:
Michael Steenbeek
2024-08-05 01:02:16 +02:00
committed by GitHub
parent b637bcb60a
commit e813532efb
24 changed files with 577 additions and 278 deletions

View File

@@ -194,7 +194,8 @@ void SetupInUseSelectionFlags()
if (parkEntranceEl->GetEntranceType() != ENTRANCE_TYPE_PARK_ENTRANCE)
break;
Editor::SetSelectedObject(ObjectType::ParkEntrance, 0, ObjectSelectionFlags::InUse);
type = iter.element->AsEntrance()->getEntryIndex();
Editor::SetSelectedObject(ObjectType::ParkEntrance, type, ObjectSelectionFlags::InUse);
// Skip if not the middle part
if (parkEntranceEl->GetSequenceIndex() != 0)
@@ -692,9 +693,8 @@ int32_t EditorRemoveUnusedObjects()
if (ObjectTypeIsIntransient(objectType))
continue;
// These object types require exactly one object to be selected at all times.
// Removing that object can badly break the game state.
if (objectType == ObjectType::ParkEntrance || objectType == ObjectType::Water)
// The water type controls the entire palette. Removing that object can badly break the game state.
if (objectType == ObjectType::Water)
continue;
// Its hard to determine exactly if a scenery group is used, so do not remove these automatically.