1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2026-02-01 12:48:27 +00:00
Commit graph

356 commits

Author SHA1 Message Date
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
74ebb29dd0 - Used addRecordFunctionBinding in magic effect binding.
- Changed find to search.
- Restored Hyrum's Law use of effect system by Visible Rings.
2026-01-08 07:40:43 -05:00
Telvanni 4Life
e389a3b343 - Changed OpenMW-CS model to use RefIds and QStrings for magic effects.
- Changed esmtool records to used RefIds for magic effects.
2026-01-08 07:40:02 -05:00
Evil Eye
9523f46409 Address conversion warnings in opencs 2025-09-21 10:45:21 +02:00
elsid
0f36b7fc97
Fix and enforce parameter naming 2025-08-27 12:45:09 +02:00
Dave Corley
d68b774c10 CLEANUP: Don't handle refnums during saving at all 2025-08-05 14:16:44 -07:00
Dave Corley
0f0a402ead Local content file index is actually -1 2025-07-20 08:53:14 +00:00
Dave Corley
dcac39aefd FIX: never serialize MVRF for refferences from the local plugin 2025-07-19 09:44:01 -07:00
Dave Corley
85fdf2011a FIX: Do not attempt to bump refNums during savingStages 2025-07-13 05:10:43 -07:00
psi29a
2ffc44c31f Merge branch 'filenameexceptions' into 'master'
Remove file name naming convention check exceptions (#7249)

Closes #7249

See merge request OpenMW/openmw!4551
2025-07-01 20:45:33 +00:00
AnyOldName3
f7b8091117 Add missing semicolon 2025-06-19 00:23:52 +01:00
AnyOldName3
acbc0a9b8f Fix launching other binaries when the CWD is not the binary directory 2025-06-19 00:19:14 +01:00
Alexei Kotov
ac9505b536 Rename components/to_utf8 directory and files to follow naming conventions 2025-02-23 00:18:07 +03:00
Alexei Kotov
5d37cb3b74 Exterminate script blacklisting (#8214) 2024-10-31 14:59:55 +03:00
Evil Eye
9395624e5f Write SoundGens after their creatures 2024-10-22 21:25:52 +02:00
Evil Eye
ea52a5f4bd Clarify that topics should be written after journals 2024-10-21 19:57:18 +02:00
Dave Corley
dbb29b2391 FIX: Serialize journal records first when saving plugins 2024-10-16 02:01:58 -07:00
Evil Eye
fbc6629d40 Rework land texture handling 2024-06-12 17:09:28 +02:00
Evil Eye
5f0fe8097c Use ESM::ReadersCache in the editor 2024-05-19 18:55:37 +02:00
psi29a
8037a6e765 Merge branch 'portable-launcher' into 'master'
Portable Launcher (plus a whole slew of bugs fixes for problems I found that I suspect aren't on the tracker)

Closes #6846

See merge request OpenMW/openmw!3925
2024-04-10 09:53:07 +00:00
Evil Eye
cb357997c9 Copy DIAL type to INFO when saving 2024-03-30 14:36:45 +01:00
AnyOldName3
626f438dcc Make builtin.omwscripts actually mandatory
Previously it was quasi-mandatory - lots of things would add it, e.g. when running openmw through the CS, but it could technically be disabled.

Now it's treated like the resources/vfs directory and implicitly added by the engine etc.
2024-02-27 01:09:46 +00:00
Dave Corley
24443e00bf Feat(CS): Implement selection groups into data model 2023-12-23 15:05:13 -06:00
Evil Eye
cd8f2355c0 Only allow StringRefId for Skill ids 2023-07-14 17:33:32 +02:00
Evil Eye
ac9378fa08 Replace Skill::mIndex with Skill::refIdToIndex 2023-07-13 18:55:21 +02:00
Evil Eye
eeda48ec50 Drop support for --fs-strict 2023-06-08 21:10:09 +02:00
Evil Eye
9214ffb50b Replace some empty constructors and destructors with default 2023-05-29 13:37:19 +02:00
psi29a
83203ae4d9 Merge branch 'minor_header_cleanup_clion' into 'master'
Minor header cleanup

See merge request OpenMW/openmw!2991
2023-05-01 10:46:55 +00:00
jvoisin
c7a3f43915 Minor header cleanup
This has been done via CLion's "unused include directive",
set to "detect completely unused".
2023-04-30 16:26:03 +02:00
florent.teppe
b5f774ae64 fixes the issues with the addons
the OpenCS reference's cellId uses a string to be sure it is coherent with the cell's Id type in the editor.
2023-04-21 14:55:24 +02:00
florent.teppe
6b5d9f3344 fixes reference saving stage 2023-04-20 10:03:35 +02:00
Petr Mikheev
f09a689a4f Merge ESM::RefNum and ESM4::FormId 2023-04-09 00:23:32 +02:00
elsid
452d1e7e49
Store original string id for Dialogue records 2023-03-26 19:07:32 +02:00
elsid
e1f580e7a0
Use static constexpr string_view for hardcoded ids 2023-03-26 15:21:49 +02:00
elsid
e6cf516e12
Support index RefId as pair of record type and std::uint32_t 2023-03-19 17:20:48 +01:00
elsid
0992624c8b
Support reading and writing typed ESM::RefId to ESM 2023-03-19 17:20:48 +01:00
elsid
e892c62b10
Fix loading, inserting and moving topic info records
Topic info records need to have specific order defined via mNext and mPrev
fields (next and previous records). When loading multiple files a record may be
inserted into middle of the topic but neighborhood records may not be aware of
it. Having the order it's possible to move the records within one topic.

Sort the record once after loading all content files but preserve the order for
all other operations. Use std::map to group info ids by topic to make sure the
topics order is stable. Keep order within a topic for info ids on loading new
records. Use this order later for sorting the records.
2023-03-13 21:57:38 +01:00
elsid
c8402c0b14
Avoid double assignment on info saving 2023-03-13 11:31:16 +01:00
elsid
3c9dbb11cc
Use ESM::RefId as key for SavingState::mSubRecords 2023-03-03 15:41:53 +01:00
elsid
dfcea389be
Add helper functions for string comparison to RefId 2023-03-03 00:39:55 +01:00
elsid
b5ec584be2
Replace ESM::RefId::sEmpty by default constructed RefId where possible
Static const is only required to provide a reference or a pointer when it is not
possible with default constructed temporary.
2023-02-18 01:07:15 +01:00
elsid
b2299ef914
Optimize saving in editor 2023-02-17 11:05:25 +01:00
elsid
8383fa3547
Log time spent on document operations in editor 2023-02-17 00:23:02 +01:00
elsid
b6a2fd8fc1
Simplify InfoCollection
There was additional logic to create topic infos index by topic id to make
getTopicInfos and removeDialogueInfos functions faster. In practice it makes
loading slower.

Move infos index by topic to CSMWorld::Data and use only on loading.
2023-02-15 23:10:35 +01:00
elsid
de24cdc12c
Log content files loading time by editor 2023-02-15 21:29:13 +01:00
elsid
080700f8fe
Name all custom ESM format versions and add tests 2023-02-10 19:54:15 +01:00
florent.teppe
1ef1de974d script blacklist => RefId
Applies changes from review

Fixed clang format

Clang format + review.
2022-12-27 19:16:21 +01:00
florent.teppe
6ff90b34a8 Fixed an issue with RefId in CellRefs where Ids wouldn't be loaded
Fixed multiple issues from the review.
2022-12-27 19:15:58 +01:00
florent.teppe
0f3499f504 Renamed string => Id, makes more sense considering the new underlying type
Fixes unnecessary copies, and issues with case sensitive comparisons.

fixed modification that wasn't necessary

Fixed type mismatch, and unecessary copy
2022-12-27 19:15:57 +01:00
florent.teppe
30a020883e Avoids unecessary copies
Fixed issue with lowerCase

Oups fixed compialtion on openMW_test_suite
2022-12-27 19:15:57 +01:00