diff --git a/apps/openmw/mwstate/statemanagerimp.cpp b/apps/openmw/mwstate/statemanagerimp.cpp index 97a516f635..75dac887da 100644 --- a/apps/openmw/mwstate/statemanagerimp.cpp +++ b/apps/openmw/mwstate/statemanagerimp.cpp @@ -471,7 +471,7 @@ void MWState::StateManager::loadGame(const Character* character, const std::file ESM::ActorIdConverter actorIdConverter; if (version <= ESM::MaxActorIdSaveGameFormatVersion) - reader.setActorIdConverter(&actorIdConverter); + reader.mActorIdConverter = &actorIdConverter; Loading::Listener& listener = *MWBase::Environment::get().getWindowManager()->getLoadingScreen(); diff --git a/apps/openmw/mwworld/cellstore.cpp b/apps/openmw/mwworld/cellstore.cpp index d2c7b4af97..83bfaaad1e 100644 --- a/apps/openmw/mwworld/cellstore.cpp +++ b/apps/openmw/mwworld/cellstore.cpp @@ -259,10 +259,10 @@ namespace } if constexpr (std::is_same_v || std::is_same_v) { - if (reader.getActorIdConverter() && state.mHasCustomState) + if (reader.mActorIdConverter && state.mHasCustomState) { MWBase::Environment::get().getWorldModel()->assignSaveFileRefNum(state.mRef); - reader.getActorIdConverter()->mMappings.emplace(state.mCreatureStats.mActorId, state.mRef.mRefNum); + reader.mActorIdConverter->mMappings.emplace(state.mCreatureStats.mActorId, state.mRef.mRefNum); } } diff --git a/apps/openmw/mwworld/player.cpp b/apps/openmw/mwworld/player.cpp index 7fa88b5784..5a6f20e2e7 100644 --- a/apps/openmw/mwworld/player.cpp +++ b/apps/openmw/mwworld/player.cpp @@ -345,8 +345,9 @@ namespace MWWorld MWBase::Environment::get().getWorldModel()->deregisterLiveCellRef(mPlayer); mPlayer.load(player.mObject); MWBase::Environment::get().getWorldModel()->registerPtr(getPlayer()); - if (ESM::ActorIdConverter* converter = reader.getActorIdConverter()) - converter->mMappings.emplace(player.mObject.mCreatureStats.mActorId, mPlayer.mRef.getRefNum()); + if (reader.mActorIdConverter) + reader.mActorIdConverter->mMappings.emplace( + player.mObject.mCreatureStats.mActorId, mPlayer.mRef.getRefNum()); for (size_t i = 0; i < mSaveAttributes.size(); ++i) mSaveAttributes[i] = player.mSaveAttributes[i]; diff --git a/apps/openmw/mwworld/projectilemanager.cpp b/apps/openmw/mwworld/projectilemanager.cpp index c79c265e38..6c0999b515 100644 --- a/apps/openmw/mwworld/projectilemanager.cpp +++ b/apps/openmw/mwworld/projectilemanager.cpp @@ -802,12 +802,12 @@ namespace MWWorld void ProjectileManager::saveLoaded(const ESM::ESMReader& reader) { // Can't do this in readRecord because the vectors might get reallocated as they grow - if (reader.getActorIdConverter()) + if (reader.mActorIdConverter) { for (ProjectileState& projectile : mProjectiles) - reader.getActorIdConverter()->convert(projectile.mCaster, projectile.mCaster.mIndex); + reader.mActorIdConverter->convert(projectile.mCaster, projectile.mCaster.mIndex); for (MagicBoltState& bolt : mMagicBolts) - reader.getActorIdConverter()->convert(bolt.mCaster, bolt.mCaster.mIndex); + reader.mActorIdConverter->convert(bolt.mCaster, bolt.mCaster.mIndex); } } diff --git a/components/esm/luascripts.cpp b/components/esm/luascripts.cpp index e6d318a9e0..91222c86a5 100644 --- a/components/esm/luascripts.cpp +++ b/components/esm/luascripts.cpp @@ -169,8 +169,8 @@ void ESM::LuaScripts::load(ESMReader& esm) if (esm.getFormatVersion() <= ESM::MaxLuaScriptPathFormatVersion) { VFS::Path::Normalized name(esm.getHString()); - if (const LuaUtil::ScriptsConfiguration* config = esm.getScriptsConfiguration()) - id = config->findId(name).value_or(-1); + if (esm.mScriptsConfiguration) + id = esm.mScriptsConfiguration->findId(name).value_or(-1); } else esm.getHT(id); diff --git a/components/esm3/activespells.cpp b/components/esm3/activespells.cpp index 740ab79acf..5d63971ce7 100644 --- a/components/esm3/activespells.cpp +++ b/components/esm3/activespells.cpp @@ -236,7 +236,7 @@ namespace ESM void ActiveSpells::load(ESMReader& esm) { - mActorIdConverter = esm.getActorIdConverter(); + mActorIdConverter = esm.mActorIdConverter; loadImpl(esm, mSpells, "ID__"); loadImpl(esm, mQueue, "QID_"); } diff --git a/components/esm3/aisequence.cpp b/components/esm3/aisequence.cpp index 0ecba5f7cc..e448582bad 100644 --- a/components/esm3/aisequence.cpp +++ b/components/esm3/aisequence.cpp @@ -230,7 +230,7 @@ namespace ESM void AiSequence::load(ESMReader& esm) { - mActorIdConverter = esm.getActorIdConverter(); + mActorIdConverter = esm.mActorIdConverter; int count = 0; while (esm.isNextSub("AIPK")) { diff --git a/components/esm3/esmreader.hpp b/components/esm3/esmreader.hpp index 788a721ba2..d128ac1cd6 100644 --- a/components/esm3/esmreader.hpp +++ b/components/esm3/esmreader.hpp @@ -128,12 +128,6 @@ namespace ESM // Returns false if content file not found. bool applyContentFileMapping(FormId& id); - void setActorIdConverter(ActorIdConverter* converter) { mActorIdConverter = converter; } - ActorIdConverter* getActorIdConverter() const { return mActorIdConverter; } - - void setScriptsConfiguration(const LuaUtil::ScriptsConfiguration* config) { mScriptsConfiguration = config; } - const LuaUtil::ScriptsConfiguration* getScriptsConfiguration() const { return mScriptsConfiguration; } - /************************************************************************* * * Medium-level reading shortcuts @@ -385,8 +379,6 @@ namespace ESM uint32_t mRecordFlags; - // Special file signifier (see SpecialFile enum above) - // Buffer for ESM strings std::vector mBuffer; @@ -398,6 +390,7 @@ namespace ESM const std::map* mContentFileMapping = nullptr; + public: ActorIdConverter* mActorIdConverter = nullptr; const LuaUtil::ScriptsConfiguration* mScriptsConfiguration = nullptr; diff --git a/components/esm3/objectstate.cpp b/components/esm3/objectstate.cpp index 6f83e6a648..b0c2381511 100644 --- a/components/esm3/objectstate.cpp +++ b/components/esm3/objectstate.cpp @@ -14,7 +14,7 @@ namespace ESM void ObjectState::load(ESMReader& esm) { mVersion = esm.getFormatVersion(); - mActorIdConverter = esm.getActorIdConverter(); + mActorIdConverter = esm.mActorIdConverter; bool isDeleted; mRef.loadData(esm, isDeleted); diff --git a/components/lua/configuration.cpp b/components/lua/configuration.cpp index 3349ca616d..a229d6f1c9 100644 --- a/components/lua/configuration.cpp +++ b/components/lua/configuration.cpp @@ -192,7 +192,7 @@ namespace LuaUtil void ScriptsConfiguration::read(ESM::ESMReader& reader) { - reader.setScriptsConfiguration(this); + reader.mScriptsConfiguration = this; mScriptIdMapping.clear(); int index = 0; while (reader.isNextSub("LUAP"))