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

23997 commits

Author SHA1 Message Date
Alexei Kotov
6b3a3418c2 Merge branch 'timingismagic' into 'master'
Address magic effect timing issues

Closes #8929

See merge request OpenMW/openmw!5128
2026-01-27 00:35:40 +03:00
Alexei Kotov
f57884c424 Merge branch 'globalSearchRegexCheck' into 'master'
[OpenCS] Validate regex patterns and fix Replace in global search view

Closes #7152

See merge request OpenMW/openmw!5127
2026-01-26 22:59:03 +03:00
AnyOldName3
7541206d7a Merge branch 'docurl' into 'master'
Fix launcher documentation link (#8934)

See merge request OpenMW/openmw!5113
2026-01-26 14:36:16 +00:00
Aussiemon
0ca93eb23e Move search result count persistence to tableSizeUpdate 2026-01-26 02:57:54 -07:00
Aussiemon
98f309d7f8 Update result count after replace 2026-01-26 01:47:12 -07:00
Aussiemon
a969a7fc44 Set result count through operationDone instead 2026-01-26 01:35:41 -07:00
Aussiemon
8a769464fb Lock replace button when no search results 2026-01-25 13:35:15 -07:00
Aussiemon
294e62719b Group setter methods together 2026-01-25 12:52:43 -07:00
Alexei Kotov
e7933da84e Pattern validation rewrite 2026-01-25 12:18:19 -07:00
Aussiemon
b607a6a98a Call update instead of direct disable 2026-01-25 01:13:47 -07:00
Aussiemon
2770145272 We don't need so many negations 2026-01-25 00:23:12 -07:00
Aussiemon
5269688efc Minor comment consistency 2026-01-25 00:15:19 -07:00
Aussiemon
911d588d0a Cleaner condition handling and edit lock 2026-01-24 23:56:38 -07:00
Aussiemon
98c912f813 Don't tint replace text 2026-01-24 12:04:16 -07:00
Evil Eye
86f689b73f Remove duplicate effects naturally instead of immediately 2026-01-24 15:29:49 +01:00
Evil Eye
ce76f7f938 Move spelleffects methods into an anonymous namespace 2026-01-24 15:29:47 +01:00
Evil Eye
ae2635cb4e Merge branch 'Link-Effects-to-Skills-and-Attributes-via-Flags' into 'master'
Link magic effects to skills and attributes via flags

See merge request OpenMW/openmw!5114
2026-01-24 10:45:30 +00:00
Aussiemon
12ec0dd60d Fix bad dynamic cast in subview 2026-01-23 01:14:37 -07:00
Aussiemon
2b43186d0e More complex global search handling 2026-01-23 01:14:22 -07:00
Telvanni 4Life
7b85802957 - Removed SpellEffectParams equality operator.
- Improved logic for handling skill and attribute association.
2026-01-22 20:53:17 -05:00
AnyOldName3
3512054da7 Merge branch 'ci-tweaks-2022-rebased-2026-plus-msbuild' into 'master'
CI tweaks 2022

See merge request OpenMW/openmw!5085
2026-01-23 00:07:09 +00:00
Aussiemon
ca1dbb7437 Validate regex patterns in global search 2026-01-22 16:49:46 -07:00
Telvanni 4Life
43c9424ebd Changed magicEffects parameter to be instantiated via constructor injection 2026-01-22 18:30:52 -05:00
Telvanni 4Life
51bf0074ad - Changed set and get methods in magic effect adapters to use MGEF context to determine skill and attribute associations.
- Changed SpellEffectParams equality operator in widgets to fetch skill and attribute associations via MGEF in ESM store.
2026-01-22 18:30:52 -05:00
Telvanni 4Life
8d23662cf2 Implemented setter injection to supply MGEF context to magic effect adapters 2026-01-22 18:30:52 -05:00
AnyOldName3
9a1107072b Add more files to naughty list
After a very tedious process, I got a log of the PeakPagedMemorySize64 of every TU (provided it lived long enough to do a query).

Everything that reported over a billion has been added to the list.
One file was removed because it didn't actually use that much.

This wasn't entirely foolproof - I can run it again single-threaded so cooperation over codegen threads won't throw the numbers off if this turns out not to fully solve the problem.
2026-01-21 19:16:27 +00:00
Alexei Kotov
dc022d10d4 Merge branch 'Assign-RefIds-to-MagicEffects' into 'master'
Assign StringRefIds to magic effects

See merge request OpenMW/openmw!5064
2026-01-18 01:50:55 +03:00
Alexei Kotov
d920e58cfe Fix launcher documentation link (#8934) 2026-01-17 17:48:35 +03:00
AnyOldName3
ddf715f148 Accidental double space 2026-01-17 00:50:27 +00:00
AnyOldName3
3cf755266f Prefer add_compile_definitions
add_definitions is really add_any_compiler_flag_you_want
2026-01-17 00:50:12 +00:00
Alexei Kotov
74387b4694 Merge branch 'omegamap' into 'master'
Don't let alpha enable the local map

See merge request OpenMW/openmw!5109
2026-01-16 23:13:27 +03:00
Alexei Kotov
0902ea33c9 Merge branch 'trueflame' into 'master'
Don't use container listeners to effect UI updates

Closes #8820

See merge request OpenMW/openmw!5068
2026-01-16 09:48:51 +03:00
AnyOldName3
24d07da29c Rejig components defines
OPENMW_DOC_BASEURL is only used in a CMake-configured file, so it only needs to be a CMake variable, which it already is.
There's no benefit to making it visible to every TU in components.

MYGUI_DONT_USE_OBSOLETE should be visible in everything that transitively includes MyGUI just in case.
This should really be set up by MyGUI's CMake config or embedded in a generated MyGUI header rather than being our responsibility, but while we're forced to deal with it, it's closer to right to make it a PUBLIC define on components rather than a directory-scoped define in the components directory.
2026-01-15 18:35:12 +00:00
AnyOldName3
e68d4317c4 Get rid of unique PCHs from targets with three or fewer translation units
Precompiled headers avoid duplicate work.
If you've only got a single TU using a particular PCH, then there's no duplicate work, so it can only add overhead.

We don't need to totally abandon PCHs for these targets, though, as CMake lets us reuse the PCH from components.

If you've only got a few TUs in a target, it's *probably* faster to get components' PCH for free and eat the cost of it not being perfect than it is to make a perfect PCH from scratch.

Note that I don't know if there are drawbacks due to components having a couple of private precompiled headers that wouldn't have otherwise propagated or these targets having different build flags.
I can't test it locally right now as my linker's regained the deadlocking issue it had the other day.
If it turns out there are problems, then for the single-TU targets, simply avoiding using PCHs for them at all will still be an improvement over the status quo.
For the two-or-three TU targets, we'll have to actually measure things.
2026-01-15 17:44:32 +00:00
Evil Eye
22b0386fb5 Don't let alpha enable the local map 2026-01-15 16:34:51 +01:00
Evil Eye
998065618f Deduplicate stats cache usage 2026-01-11 13:34:21 +01:00
Alexei Kotov
acb36cb7c6 Merge branch 'allthatslazyaboutglittering' into 'master'
Copy refdata when copying gold

Closes #8917

See merge request OpenMW/openmw!5087
2026-01-09 19:04:13 +03:00
Alexei Kotov
c0c7ec1c8f Merge branch 'macos_deprecation_fixes' into 'master'
Fix macos deprecation warnings

See merge request OpenMW/openmw!5082
2026-01-09 19:02:17 +03:00
AnyOldName3
bc45d17a56 Merge branch 'unused_var_really' into 'master'
heightfield not used

See merge request OpenMW/openmw!5084
2026-01-09 15:33:47 +00:00
Bret Curtis
0dad5dd4e9 do not do a explicit nullptr check per aon3 request 2026-01-09 12:02:46 +01:00
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
Evil Eye
32f821a1a6 Copy refdata when copying gold 2026-01-08 16:47:20 +01: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
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
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
2c76043cf5 - Changed sol magic bindings to use RefIds instead of integer indexes for magic effects.
- Fixed silly namespace oversight causing linker errors.
- Fixed type mismatches occluded by linker errors.
- Fixed unit tests.
2026-01-08 07:40:02 -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
Telvanni 4Life
6ca64fdddd Changed statsextensions internal representations of magic effects to RefId. Interfaces with mwscript remain index-based. 2026-01-08 07:40:02 -05:00
Telvanni 4Life
5839910eea Refactoring mwgui and mwmechanics in openmw-lib. Magic bindings done in a later commit. 2026-01-08 07:40:00 -05:00
Telvanni 4Life
3e586ed693 Changed IRDTstruct (alchemical ingredient magic effects) to use RefIds instead of int for effectId.
Changed various structs (ENAMstruct, EffectKey, SummonKey) to use RefId instead of strict StringRefId to account for null effects.
2026-01-08 07:33:38 -05:00