mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-02-01 11:15:13 +01:00
Pass GameState on when importing entities from save files
This commit is contained in:
@@ -2155,15 +2155,15 @@ namespace OpenRCT2
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
void WriteEntitiesOfType(OrcaStream& os, OrcaStream::ChunkStream& cs);
|
||||
void WriteEntitiesOfType(GameState_t& gameState, OrcaStream& os, OrcaStream::ChunkStream& cs);
|
||||
template<typename... T>
|
||||
void WriteEntitiesOfTypes(OrcaStream& os, OrcaStream::ChunkStream& cs);
|
||||
void WriteEntitiesOfTypes(GameState_t& gameState, OrcaStream& os, OrcaStream::ChunkStream& cs);
|
||||
|
||||
template<typename T>
|
||||
void ReadEntitiesOfType(OrcaStream& os, OrcaStream::ChunkStream& cs);
|
||||
void ReadEntitiesOfType(GameState_t& gameState, OrcaStream& os, OrcaStream::ChunkStream& cs);
|
||||
|
||||
template<typename... T>
|
||||
void ReadEntitiesOfTypes(OrcaStream& os, OrcaStream::ChunkStream& cs);
|
||||
void ReadEntitiesOfTypes(GameState_t& gameState, OrcaStream& os, OrcaStream::ChunkStream& cs);
|
||||
|
||||
void ReadWriteEntitiesChunk(GameState_t& gameState, OrcaStream& os);
|
||||
|
||||
@@ -2637,7 +2637,7 @@ namespace OpenRCT2
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
void ParkFile::WriteEntitiesOfType(OrcaStream& os, OrcaStream::ChunkStream& cs)
|
||||
void ParkFile::WriteEntitiesOfType(GameState_t& gameState, OrcaStream& os, OrcaStream::ChunkStream& cs)
|
||||
{
|
||||
uint16_t count = GetEntityListCount(T::cEntityType);
|
||||
cs.write(T::cEntityType);
|
||||
@@ -2650,13 +2650,13 @@ namespace OpenRCT2
|
||||
}
|
||||
|
||||
template<typename... T>
|
||||
void ParkFile::WriteEntitiesOfTypes(OrcaStream& os, OrcaStream::ChunkStream& cs)
|
||||
void ParkFile::WriteEntitiesOfTypes(GameState_t& gameState, OrcaStream& os, OrcaStream::ChunkStream& cs)
|
||||
{
|
||||
(WriteEntitiesOfType<T>(os, cs), ...);
|
||||
(WriteEntitiesOfType<T>(gameState, os, cs), ...);
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
void ParkFile::ReadEntitiesOfType(OrcaStream& os, OrcaStream::ChunkStream& cs)
|
||||
void ParkFile::ReadEntitiesOfType(GameState_t& gameState, OrcaStream& os, OrcaStream::ChunkStream& cs)
|
||||
{
|
||||
[[maybe_unused]] auto t = cs.read<EntityType>();
|
||||
assert(t == T::cEntityType);
|
||||
@@ -2677,9 +2677,9 @@ namespace OpenRCT2
|
||||
}
|
||||
|
||||
template<typename... T>
|
||||
void ParkFile::ReadEntitiesOfTypes(OrcaStream& os, OrcaStream::ChunkStream& cs)
|
||||
void ParkFile::ReadEntitiesOfTypes(GameState_t& gameState, OrcaStream& os, OrcaStream::ChunkStream& cs)
|
||||
{
|
||||
(ReadEntitiesOfType<T>(os, cs), ...);
|
||||
(ReadEntitiesOfType<T>(gameState, os, cs), ...);
|
||||
}
|
||||
|
||||
void ParkFile::ReadWriteEntitiesChunk(GameState_t& gameState, OrcaStream& os)
|
||||
@@ -2695,7 +2695,7 @@ namespace OpenRCT2
|
||||
{
|
||||
ReadEntitiesOfTypes<
|
||||
Vehicle, Guest, Staff, Litter, SteamParticle, MoneyEffect, VehicleCrashParticle, ExplosionCloud,
|
||||
CrashSplashParticle, ExplosionFlare, JumpingFountain, Balloon, Duck>(os, cs);
|
||||
CrashSplashParticle, ExplosionFlare, JumpingFountain, Balloon, Duck>(gameState, os, cs);
|
||||
|
||||
auto version = os.getHeader().targetVersion;
|
||||
if (version < kPeepAnimationObjectsVersion)
|
||||
@@ -2707,7 +2707,7 @@ namespace OpenRCT2
|
||||
{
|
||||
WriteEntitiesOfTypes<
|
||||
Vehicle, Guest, Staff, Litter, SteamParticle, MoneyEffect, VehicleCrashParticle, ExplosionCloud,
|
||||
CrashSplashParticle, ExplosionFlare, JumpingFountain, Balloon, Duck>(os, cs);
|
||||
CrashSplashParticle, ExplosionFlare, JumpingFountain, Balloon, Duck>(gameState, os, cs);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user