1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2026-01-20 09:00:58 +00:00
Commit graph

18 commits

Author SHA1 Message Date
Telvanni 4Life
c6cc1be347 - Fixed OpenMW-CS incorrectly passing magic effect ids
- Resolved merge conflicts with !4323
- Minor refactor of affectsSkill helper function
- Removed redundant class definition
2026-01-08 14:36:38 -05:00
Telvanni 4Life
9159788c9b Address reviewer feedback and ran clang-format on modified files:
- Changed reverse lookup map constructor for gmsts, names, and ESM::MagicEffectIds to be more generic.
- Changed refIdToIndex to use map instead of array traversal.
- Removed redundant check from refIdToGmstString.
- Removed sMagicEffectNames and associated map. Removed dead code from loadmgef.cpp/hpp.
- Changed return types of magic effect bindings to RefId.
- Reverted ESMStore search to find.
- Changed std::map to std::unordered_map for faster lookups in resistance and weakness functions.
- Changed loadmgef To methods to pass RefId by value.
- Removed StringRefId alias MagicEffectId.
- Changed all effectId arguments in PR to pass-by-value.
- Removed ESM::MagicEffect::refIdToName function.
- Changed effect key type from long to ESM::RefId in OpGetEffect of mwscript.
- Removed superfluous MWWorld::Store<ESM::GameSettings> argument to MagicEffect store's setUp method.
- Removed transformation code from decompose for ENAM and IRDT structs.
- Changed resistance and weakness maps to initialization to use initialization instead of assignment.
- Changed sGmstEffectIds to constexpr array since all parameters are known at compile time.
- Changed getBoundItemsMap to use an unordered_map and have string_view values.
- MagicEffect store definition removed (uses standard template class TypedDynamicStore).
- Fixed bug in calculating sun damage that would have made vampires daywalkers in Mournhold.
- Removed polymorphic EffectKey constructor and added overload to getOrDefault.
- Placed ESM spec IRDT and ENAM structs in anonymous namespace.
- Added exception if attempting to serialize ENAM subrecords with out of bounds index.
- Added include format statements to satisfy Ubuntu CI linker.
2026-01-08 07:44:06 -05:00
Telvanni 4Life
495207e2a5 Triune Tests of Strength, Block, and Breathing Water. The ending of the words is ALMSIVI. 2026-01-08 07:40:39 -05:00
Telvanni 4Life
c581ab3242 Changed magic effects to use RefIds in activespells, magiceffects, creaturestats, and summoning. 2026-01-08 07:27:11 -05:00
Evil Eye
9cb437c9d3 Remove actor ids 2025-12-26 11:07:30 +01:00
Evil Eye
c4bc040b4b Replace actor ids in magic effects with refnums 2025-12-26 11:07:30 +01:00
Evil Eye
becc5ef8fa Drop support for save game format 2 2023-12-09 17:45:42 +01:00
Evil Eye
521cff08f8 Drop support for save game format 1 2023-12-09 17:22:11 +01:00
Evil Eye
194bcb0187 Drop support for save game format 0 (pre 0.37) 2023-12-01 16:37:29 +01:00
Evil Eye
79b3855c5b Move TimeStamp to ESM3 and remove sized reads 2023-07-30 11:37:32 +02:00
Evil Eye
45ba05c0ed Disallow implicitly sized reads of ESM structs 2023-07-20 19:16:53 +02:00
Evil Eye
bac6777fae Reduce the number of magic numbers 2023-06-18 16:21:06 +02:00
elsid
6d261d38dd
Add functions to read and write ESM::RefId and use them
To be later changed with another implementation.
2023-02-13 22:07:58 +01:00
elsid
080700f8fe
Name all custom ESM format versions and add tests 2023-02-10 19:54:15 +01:00
fteppe
125b21de20 Initial commit: In ESM structures, replace the string members that are RefIds to other records, to a new strong type
The strong type is actually just a string underneath, but this will help in the future to have a distinction so it's easier to search and replace when we use an integer ID

Slowly going through all the changes to make, still hundreds of errors

a lot of functions/structures use std::string or stringview to designate an ID. So it takes time

Continues slowly replacing ids. There are technically more and more compilation errors

I have good hope that there is a point where the amount of errors will dramatically go down as all the main functions use the ESM::RefId type

Continue moving forward, changes to the stores

slowly moving along

Starting to see the fruit of those changes.

still many many error, but more and more Irun into a situation where a function is sandwiched between two functions that use the RefId type.

More replacements. Things are starting to get easier

I can see more and more often the issue is that the function is awaiting a RefId, but is given a string
there is less need to go down functions and to fix a long list of them.

Still moving forward, and for the first time error count is going down!

Good pace, not sure about topics though, mId and mName are actually the same thing and are used interchangeably

Cells are back to using string for the name, haven't fixed everything yet. Many other changes

Under the bar of 400 compilation errors.

more good progress <100 compile errors!

More progress

Game settings store can use string for find, it was a bit absurd how every use of it required to create refId from string

some more progress on other fronts

Mostly game settings clean

one error opened a lot of other errors. Down to 18, but more will prbably appear

only link errors left??

Fixed link errors

OpenMW compiles, and launches, with some issues, but still!
2022-12-27 19:15:54 +01:00
clang-format-bot
ddb0522bbf
Apply clang-format to code base 2022-09-22 21:35:26 +03:00
elsid
4447ab0ed7
Remove ESM:: namespace qualifier in components/esm3/ and tests 2022-04-12 02:04:24 +02:00
Bret Curtis
d1fb854521 move most of the files from esm to esm3, keep common code in esm; this is make space for a future with esm4
esm typo

esm typo
2022-01-23 17:04:48 +01:00
Renamed from components/esm/creaturestats.cpp (Browse further)