diff --git a/apps/openmw-mp/Script/Functions/RecordsDynamic.cpp b/apps/openmw-mp/Script/Functions/RecordsDynamic.cpp index 177017201..92593e208 100644 --- a/apps/openmw-mp/Script/Functions/RecordsDynamic.cpp +++ b/apps/openmw-mp/Script/Functions/RecordsDynamic.cpp @@ -239,8 +239,6 @@ int RecordsDynamicFunctions::GetRecordAutoCalc(unsigned int index) noexcept if (readRecordsType == mwmp::RECORD_TYPE::POTION) return WorldstateFunctions::readWorldstate->potionRecords.at(index).data.mData.mAutoCalc; - else if (readRecordsType == mwmp::RECORD_TYPE::ENCHANTMENT) - return WorldstateFunctions::readWorldstate->enchantmentRecords.at(index).data.mData.mAutocalc; return -1; } @@ -273,6 +271,8 @@ int RecordsDynamicFunctions::GetRecordFlags(unsigned int index) noexcept if (readRecordsType == mwmp::RECORD_TYPE::SPELL) return WorldstateFunctions::readWorldstate->spellRecords.at(index).data.mData.mFlags; + else if (readRecordsType == mwmp::RECORD_TYPE::ENCHANTMENT) + return WorldstateFunctions::readWorldstate->enchantmentRecords.at(index).data.mData.mFlags; return -1; } @@ -737,8 +737,6 @@ void RecordsDynamicFunctions::SetRecordAutoCalc(int autoCalc) noexcept if (writeRecordsType == mwmp::RECORD_TYPE::POTION) tempPotion.data.mData.mAutoCalc = autoCalc; - else if (writeRecordsType == mwmp::RECORD_TYPE::ENCHANTMENT) - tempEnchantment.data.mData.mAutocalc = autoCalc; else if (writeRecordsType == mwmp::RECORD_TYPE::NPC) { if (autoCalc) @@ -799,6 +797,8 @@ void RecordsDynamicFunctions::SetRecordFlags(int flags) noexcept if (writeRecordsType == mwmp::RECORD_TYPE::SPELL) tempSpell.data.mData.mFlags = flags; + else if (writeRecordsType == mwmp::RECORD_TYPE::ENCHANTMENT) + tempEnchantment.data.mData.mFlags = flags; else if (writeRecordsType == mwmp::RECORD_TYPE::WEAPON) tempWeapon.data.mData.mFlags = flags; else if (writeRecordsType == mwmp::RECORD_TYPE::BODYPART) diff --git a/apps/openmw/mwmp/RecordHelper.cpp b/apps/openmw/mwmp/RecordHelper.cpp index 5a867c1b6..6b6f2b648 100644 --- a/apps/openmw/mwmp/RecordHelper.cpp +++ b/apps/openmw/mwmp/RecordHelper.cpp @@ -678,8 +678,8 @@ void RecordHelper::overrideRecord(const mwmp::EnchantmentRecord& record) if (record.baseOverrides.hasCharge) finalData.mData.mCharge = recordData.mData.mCharge; - if (record.baseOverrides.hasAutoCalc) - finalData.mData.mAutocalc = recordData.mData.mAutocalc; + if (record.baseOverrides.hasFlags) + finalData.mData.mFlags = recordData.mData.mFlags; if (record.baseOverrides.hasEffects) finalData.mEffects.mList = recordData.mEffects.mList; diff --git a/components/openmw-mp/Packets/Worldstate/PacketRecordDynamic.cpp b/components/openmw-mp/Packets/Worldstate/PacketRecordDynamic.cpp index 5dc8e2826..99c3e548f 100644 --- a/components/openmw-mp/Packets/Worldstate/PacketRecordDynamic.cpp +++ b/components/openmw-mp/Packets/Worldstate/PacketRecordDynamic.cpp @@ -208,7 +208,7 @@ void PacketRecordDynamic::Packet(RakNet::BitStream *newBitstream, bool send) RW(recordData.mData.mType, send); RW(recordData.mData.mCost, send); RW(recordData.mData.mCharge, send); - RW(recordData.mData.mAutocalc, send); + RW(recordData.mData.mFlags, send); ProcessEffects(recordData.mEffects, send); if (!record.baseId.empty()) @@ -217,7 +217,7 @@ void PacketRecordDynamic::Packet(RakNet::BitStream *newBitstream, bool send) RW(overrides.hasSubtype, send); RW(overrides.hasCost, send); RW(overrides.hasCharge, send); - RW(overrides.hasAutoCalc, send); + RW(overrides.hasFlags, send); RW(overrides.hasEffects, send); } }