diff --git a/src/openrct2/world/Sprite.cpp b/src/openrct2/world/Sprite.cpp index 8ba1fd17cc..882d9beb88 100644 --- a/src/openrct2/world/Sprite.cpp +++ b/src/openrct2/world/Sprite.cpp @@ -36,16 +36,23 @@ union Entity { - uint8_t pad_00[0x200]; - EntityBase base; - // Provide a constructor as EntityBase is not trivially constructible - Entity() - : pad_00() - { - } + EntityBase base{}; + Vehicle vehicle; + Guest guest; + Staff staff; + Litter litter; + SteamParticle steamParticle; + MoneyEffect money; + VehicleCrashParticle crashParticle; + ExplosionCloud explosionCloud; + CrashSplashParticle crashSplash; + ExplosionFlare explosionFlare; + JumpingFountain jumpingFountain; + Balloon balloon; + Duck duck; }; -static Entity _entities[MAX_ENTITIES]; +static Entity _entities[MAX_ENTITIES]{}; static std::array, EnumValue(EntityType::Count)> gEntityLists; static std::vector _freeIdList;