From d2fdf0917bbe65c2fcb174879f151e8703a9da7d Mon Sep 17 00:00:00 2001 From: duncanspumpkin Date: Wed, 24 Feb 2021 08:08:59 +0000 Subject: [PATCH] Remove static casts and use union --- src/openrct2/rct2/RCT2.h | 1 + src/openrct2/rct2/S6Exporter.cpp | 28 ++++++++++++++-------------- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/src/openrct2/rct2/RCT2.h b/src/openrct2/rct2/RCT2.h index c8786193c9..1179f96b4a 100644 --- a/src/openrct2/rct2/RCT2.h +++ b/src/openrct2/rct2/RCT2.h @@ -761,6 +761,7 @@ public: RCT12SpriteCrashedVehicleParticle crashed_vehicle_particle; RCT12SpriteCrashSplash crash_splash; RCT12SpriteSteamParticle steam_particle; + RCT12SpriteParticle misc_particle; }; assert_struct_size(RCT2Sprite, 0x100); diff --git a/src/openrct2/rct2/S6Exporter.cpp b/src/openrct2/rct2/S6Exporter.cpp index 125c620f25..40c6a0b5fc 100644 --- a/src/openrct2/rct2/S6Exporter.cpp +++ b/src/openrct2/rct2/S6Exporter.cpp @@ -1394,59 +1394,59 @@ void S6Exporter::ExportEntities() for (auto* entity : EntityList(EntityListId::Peep)) { - ExportEntity(static_cast(&_s6.sprites[entity->sprite_index].unknown), entity); + ExportEntity(&_s6.sprites[entity->sprite_index].peep, entity); } for (auto* entity : EntityList(EntityListId::Peep)) { - ExportEntity(static_cast(&_s6.sprites[entity->sprite_index].unknown), entity); + ExportEntity(&_s6.sprites[entity->sprite_index].peep, entity); } for (auto* entity : EntityList(EntityListId::Vehicle)) { - ExportEntity(static_cast(&_s6.sprites[entity->sprite_index].unknown), entity); + ExportEntity(&_s6.sprites[entity->sprite_index].vehicle, entity); } for (auto* entity : EntityList(EntityListId::TrainHead)) { - ExportEntity(static_cast(&_s6.sprites[entity->sprite_index].unknown), entity); + ExportEntity(&_s6.sprites[entity->sprite_index].vehicle, entity); } for (auto* entity : EntityList(EntityListId::Litter)) { - ExportEntity(static_cast(&_s6.sprites[entity->sprite_index].unknown), entity); + ExportEntity(&_s6.sprites[entity->sprite_index].litter, entity); } for (auto* entity : EntityList(EntityListId::Misc)) { - ExportEntity(static_cast(&_s6.sprites[entity->sprite_index].unknown), entity); + ExportEntity(&_s6.sprites[entity->sprite_index].duck, entity); } for (auto* entity : EntityList(EntityListId::Misc)) { - ExportEntity(static_cast(&_s6.sprites[entity->sprite_index].unknown), entity); + ExportEntity(&_s6.sprites[entity->sprite_index].steam_particle, entity); } for (auto* entity : EntityList(EntityListId::Misc)) { - ExportEntity(static_cast(&_s6.sprites[entity->sprite_index].unknown), entity); + ExportEntity(&_s6.sprites[entity->sprite_index].money_effect, entity); } for (auto* entity : EntityList(EntityListId::Misc)) { - ExportEntity(static_cast(&_s6.sprites[entity->sprite_index].unknown), entity); + ExportEntity(&_s6.sprites[entity->sprite_index].crashed_vehicle_particle, entity); } for (auto* entity : EntityList(EntityListId::Misc)) { - ExportEntity(static_cast(&_s6.sprites[entity->sprite_index].unknown), entity); + ExportEntity(&_s6.sprites[entity->sprite_index].jumping_fountain, entity); } for (auto* entity : EntityList(EntityListId::Misc)) { - ExportEntity(static_cast(&_s6.sprites[entity->sprite_index].unknown), entity); + ExportEntity(&_s6.sprites[entity->sprite_index].balloon, entity); } for (auto* entity : EntityList(EntityListId::Misc)) { - ExportEntity(static_cast(&_s6.sprites[entity->sprite_index].unknown), entity); + ExportEntity(&_s6.sprites[entity->sprite_index].misc_particle, entity); } for (auto* entity : EntityList(EntityListId::Misc)) { - ExportEntity(static_cast(&_s6.sprites[entity->sprite_index].unknown), entity); + ExportEntity(&_s6.sprites[entity->sprite_index].misc_particle, entity); } for (auto* entity : EntityList(EntityListId::Misc)) { - ExportEntity(static_cast(&_s6.sprites[entity->sprite_index].unknown), entity); + ExportEntity(&_s6.sprites[entity->sprite_index].misc_particle, entity); } RebuildEntityLinks();