1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-22 20:53:53 +00:00
Commit graph

20343 commits

Author SHA1 Message Date
unelsson
9b808a495c Use std::variant and std::visit instead of function overloads, add float type search, fix QMetaType and Type conversion 2023-01-26 00:05:51 +02:00
Evil Eye
7ca25e6467 Fix more case issues with cells 2023-01-25 20:59:10 +01:00
psi29a
9f3025257a Merge branch 'local_nwah' into 'master'
Use worldspace coords in AiWanderStorage

See merge request OpenMW/openmw!2645
2023-01-24 09:52:32 +00:00
fteppe
889de35b99 fix coc search extbyname 2023-01-23 22:49:01 +01:00
Evil Eye
d40a9ec5bc Use worldspace coords in AiWanderStorage 2023-01-23 21:06:50 +01:00
psi29a
a9dbb023d7 Merge branch 'lua_create' into 'master'
Lua commands to create/move/remove objects; consistent handling of disabled objects (#6726, #6893)

See merge request OpenMW/openmw!2627
2023-01-22 13:27:10 +00:00
Andrei Kortunov
a774a51699 Improve duration tooltip 2023-01-22 14:32:47 +04:00
Petr Mikheev
c294898246 Lua commands to create/move/remove objects; consistent handling of disabled objects (#6726, #6893) 2023-01-22 00:08:21 +01:00
psi29a
7be20301af Merge branch '24-7lofibeatstoachievechimto' into 'master'
Rework music playback (bug #7172)

Closes #7172

See merge request OpenMW/openmw!2640
2023-01-21 23:07:25 +00:00
Petr Mikheev
e7120f189b Unset RefNums after copying containers (otherwise copies will have the same RefNums, but they should be unique) 2023-01-21 23:43:00 +01:00
Petr Mikheev
5983f22290 Remember actor in the actor's InventoryStore instead passing the actor in every call 2023-01-21 23:43:00 +01:00
psi29a
1422053fa9 Merge branch 'more_uniforms' into 'master'
[Postprocessing] Add sky and ambient colors

See merge request OpenMW/openmw!2638
2023-01-21 22:42:21 +00:00
florent.teppe
a4137e941c std::string_view can be used in map and unordered map
This avoids some unecessary dynamic allocations.
Also applies some review advice.
2023-01-21 19:19:26 +01:00
florent.teppe
63e44eddc9 Navigator doesn't use RefId anymore 2023-01-21 18:39:57 +01:00
florent.teppe
150e2ba885 Revert "Use ESM::RefId for worldspace in detournavigator"
This reverts commit b4ab153418.

# Conflicts:
#	apps/navmeshtool/worldspacedata.cpp
2023-01-21 18:39:57 +01:00
florent.teppe
3780033837 Reverts Cell name to a string 2023-01-21 18:39:42 +01:00
psi29a
1390c7ed7c Merge branch 'wizard_encodings' into 'master'
Do not use Qt streams with legacy encodings in the Wizard code

Closes #7165

See merge request OpenMW/openmw!2634
2023-01-21 16:37:43 +00:00
psi29a
761aef61ae Merge branch 'normal_fix' into 'master'
Fix pass normals (#7146, #7145)

See merge request OpenMW/openmw!2635
2023-01-21 16:36:45 +00:00
psi29a
757cf7098d Merge branch 'minor-cleanup' into 'master'
Use dedicated function to convert QString to std::filesystem::path

See merge request OpenMW/openmw!2636
2023-01-21 16:36:07 +00:00
Alexei Kotov
fd6e96576a Rework music playback (bug #7172) 2023-01-21 05:56:12 +03:00
glassmancody.info
564c408663 expose more uniforms to postprocessing 2023-01-20 17:43:54 -08:00
AnyOldName3
438b03908d Use dedicated function to convert QString to std::filesystem::path II
Some missed conversions identified in review.
2023-01-20 23:39:30 +00:00
Andrei Kortunov
9a7c57874d Do not use Qt streams with legacy encodings in the Wizard code 2023-01-20 11:24:23 +04:00
Alexei Kotov
f0e58d1c59 Merge branch 'ensure_utf8_encoding' into 'master'
Move ensureUtf8Encoding to named namespace

See merge request OpenMW/openmw!2632
2023-01-20 05:17:44 +00:00
AnyOldName3
f757ac642a Use dedicated function to convert QString to std::filesystem::path
I noticed this while reviewing something else and trying to find the
function to recommend using it.
2023-01-19 22:36:51 +00:00
glassmancody.info
27fe8d42ae fix pass normals 2023-01-19 09:28:51 -08:00
elsid
dd89403df0
Move ensureUtf8Encoding to named namespace
To follow https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#sf21-dont-use-an-unnamed-anonymous-namespace-in-a-header

Add QtGlobal include to define QT_VERSION and QT_VERSION_CHECK macroses before
they're used.
2023-01-18 22:58:35 +01:00
Evil Eye
08f998eeb1 Delay teleportation till the menu is closed 2023-01-18 19:57:05 +01:00
psi29a
ee980721b8 Merge branch 'debug_lua_memory' into 'master'
Additional information in Lua profiler

See merge request OpenMW/openmw!2612
2023-01-18 14:33:05 +00:00
psi29a
3fea82c06c Merge branch 'remove_ptr_conversion' into 'master'
Remove implicit conversion MWWorld::Ptr -> bool

See merge request OpenMW/openmw!2626
2023-01-18 14:32:58 +00:00
elsid
cf1d8544e3
Check agent bounds on adding agent to navigator
Do not add agent bounds which are not supported by recastnavigation with given
settings and log such events.

To avoid reaching navmesh tile generation to find out it can't be generated for
such agent bounds.
2023-01-18 12:00:48 +01:00
Petr Mikheev
e9420b2b68 Remove implicit conversion MWWorld::Ptr -> bool 2023-01-18 02:40:56 +01:00
unelsson
ba6c47bb07 Implement record filter search by value and QVariant type recognition 2023-01-17 02:55:47 +02:00
unelsson
fc64ab0f5a Promise constness 2023-01-17 02:55:03 +02:00
unelsson
6a864cd9f6 Implement basic filter generation from the dragged table cell (cell content and column header) 2023-01-16 23:47:32 +02:00
unelsson
bc1027ee95 First draft of getting the exact drag start location 2023-01-16 23:47:32 +02:00
Alexei Kotov
b261f3bf65 Fix animated object physics 2023-01-16 17:08:48 +03:00
psi29a
ee862fe825 Merge branch 'qt6_fixes' into 'master'
Do not use reprecated Qt API where we can avoid it

See merge request OpenMW/openmw!2621
2023-01-15 21:05:51 +00:00
psi29a
ea91d861ef Merge branch 'safely_on_the_other_side_of_the_door' into 'master'
End combat when the target is outside the active grid

See merge request OpenMW/openmw!2619
2023-01-15 19:00:03 +00:00
elsid
1cbe295030
Extend navigator tests for update with big object
Check for the number of generated recast mesh tiles and navmesh tiles.
2023-01-15 17:25:13 +01:00
Andrei Kortunov
cc1c8b2bb1 Do not use a deprecated way to get dimensions of screen where current widget is located 2023-01-15 20:23:18 +04:00
Andrei Kortunov
99a575b663 Init QVariant in Qt6-compatible way 2023-01-15 20:23:07 +04:00
Andrei Kortunov
0b3ba26d86 Init style in Qt6-compatible way 2023-01-15 20:09:56 +04:00
Andrei Kortunov
0de635dcdc Do not use deprecated init() method 2023-01-15 20:09:56 +04:00
Andrei Kortunov
0864d997d0 Add missing includes 2023-01-15 20:09:56 +04:00
Evil Eye
358fa98bd3 End combat when the target is outside the active grid 2023-01-15 17:08:57 +01:00
psi29a
a7a89ba7c1 Merge branch 'launcher' into 'master'
Rework how OpenMW launcher looks

Closes #6922

See merge request OpenMW/openmw!2587
2023-01-15 16:00:59 +00:00
psi29a
dc3ec1a0a0 Merge branch 'mwscript' into 'master'
Multiple mwscript optimizations and some refactoring

See merge request OpenMW/openmw!2600
2023-01-15 15:59:30 +00:00
psi29a
32733d23fa Merge branch 'xanim' into 'master'
X-file handling fixes (bug #5371)

Closes #5371

See merge request OpenMW/openmw!2614
2023-01-15 15:57:27 +00:00
psi29a
9198a4e46a Merge branch 'fix_navigator_update_for_big_object' into 'master'
Limit NavMeshManager update range by player tile and max tiles (#7149)

See merge request OpenMW/openmw!2618
2023-01-15 15:53:37 +00:00
Andrei Kortunov
902c48d1bb Rework launcher UI 2023-01-15 12:36:08 +04:00
elsid
44429f0393
Limit NavMeshManager update range by player tile and max tiles
Object AABB may be much larger than area currently covered by navmesh. In this
case all tiles beyond covered range should be ignored. Attempt to iterate over
them will not result in any new tile updates but can take quite a while. At
maximum this can be pow(INT_MAX - INT_MIN, 2) iterations.

Use arbitrary time limit to check for update call to finish in the test.
2023-01-15 04:46:29 +01:00
Alexei Kotov
6ff9b5d326 Make use of ends_with for KF 2023-01-15 01:48:06 +03:00
unelsson
50726636ba clang-format 2023-01-14 21:42:33 +02:00
unelsson
7fce4bc8c4 Issue command passing through QLineInput 2023-01-14 21:30:25 +02:00
unelsson
0310b1cddf Dragging Topics to TopicInfo window opens create TopicInfo BottomBox with the correct id 2023-01-14 20:36:49 +02:00
unelsson
7f8a84f2f2 Move Response column earlier 2023-01-14 16:19:37 +02:00
Alexei Kotov
e24db874dc Correct xnif use for creatures 2023-01-14 04:55:12 +03:00
Alexei Kotov
434b4deda1 Don't use xkf if xnif is merely the base model (bug #5371) 2023-01-14 04:55:12 +03:00
elsid
b88f0d2dbd
Replace mwscript program serialization into a vector with simple struct
Mostly to avoid string literal lookup by index with iteration over all preciding
literals and calling strlen. This is very inefficient. In genral this makes code
much more straightforward but also makes it portable since now int and float of
different sizes are properly supported.
2023-01-14 00:07:37 +01:00
Petr Mikheev
d9e9db0983 Additional information in Lua profiler 2023-01-13 21:14:23 +01:00
psi29a
203eb80afd Merge branch 'qregexp' into 'master'
Simplify regex search in the editor

See merge request OpenMW/openmw!2610
2023-01-13 15:55:19 +00:00
psi29a
599f68029e Merge branch 'only_snow' into 'master'
Fix invisible weather effects

See merge request OpenMW/openmw!2601
2023-01-13 09:58:51 +00:00
psi29a
b7e5759599 Merge branch 'noanchor' into 'master'
Replace usage of QRegularExpression::anchoredPattern with `^` and `$`

See merge request OpenMW/openmw!2607
2023-01-13 09:55:59 +00:00
Andrei Kortunov
7c8fb79745 Suppress a warnings spam when user entered an invalid regular expression 2023-01-13 12:08:42 +04:00
Andrei Kortunov
7c709167d9 Simplify regex search in the editor 2023-01-13 11:28:49 +04:00
jvoisin
c90d22f3b2 Replace usage of QRegularExpression::anchoredPattern with ^ and $
Using `^` and `$` is shorter than `QRegularExpression::anchoredPattern`,
and even allows us in one case to get rid of a trailing `.*`.
2023-01-12 22:52:00 +01:00
jvoisin
853ca5827e Simplify a regex and fix a typo
- The usage of `|` is wrong
- It's `mWhiteListQuotes` and not `mWhiteListQoutes`
- Replace weird usage of `{}`-based quantifiers
2023-01-12 22:49:23 +01:00
Andrei Kortunov
bfcbc2350d Handle UTF-8 in Qt streams in the Qt6-compatible way 2023-01-12 15:39:50 +04:00
Andrei Kortunov
307a60e87c Migrate from QRegExp to more modern QRegularExpression 2023-01-11 11:21:46 +04:00
glassmancody.info
7ddf47908f only enable occlusion for snow 2023-01-10 14:09:02 -08:00
psi29a
7c078883d5 Merge branch 'default_ref_num' into 'master'
Use default initializers for ESM::RefNum members

See merge request OpenMW/openmw!2598
2023-01-10 09:12:37 +00:00
psi29a
0028127b42 Merge branch 'lua_mwscript' into 'master'
Access local mwscript variables in Lua scripts

See merge request OpenMW/openmw!2589
2023-01-10 08:47:12 +00:00
elsid
c173348cbe
Use default initializers for ESM::RefNum members
Instead of unset function that is removed now and assignments all over the code.
2023-01-10 00:44:51 +01:00
glassmancody.info
23708b1ba6 correct shader name 2023-01-09 10:27:52 -08:00
psi29a
b1571b92bf Merge branch 'fix_7135' into 'master'
Add missing initializer in mwworld/worldmodel.cpp (fixes #7135)

Closes #7135

See merge request OpenMW/openmw!2596
2023-01-09 09:15:23 +00:00
psi29a
c24f43ec32 Merge branch 'occlusion_tweaks' into 'master'
Weather occlusion updates

See merge request OpenMW/openmw!2595
2023-01-08 22:13:36 +00:00
Petr Mikheev
2b4e613522 Add missing initializer in mwworld/worldmodel.cpp (fixes #7135) 2023-01-08 21:55:42 +01:00
psi29a
2754d63e45 Merge branch 'cleanup_actions' into 'master'
Cleanup unused actions

See merge request OpenMW/openmw!2591
2023-01-08 20:14:35 +00:00
glassmancody.info
ee1acd6eb1 add sfc setting, only add to subgraph when enabled 2023-01-08 11:55:33 -08:00
florent.teppe
0de6b79966 Fixes issue with topic info edition.
Also future proofs reference on RefId's string.
2023-01-08 12:59:47 +01:00
Petr Mikheev
7a0b998d4f Cleanup unused actions 2023-01-07 23:42:53 +01:00
psi29a
b6d0d09c5a Merge branch 'cell_hastag' into 'master'
[Lua] New function `cell.hasTag`

See merge request OpenMW/openmw!2567
2023-01-07 22:22:31 +00:00
psi29a
6a250c5900 Merge branch 'baby_it_is_occluded_outside' into 'master'
Weather Particle Occlusion (#5492)

Closes #5492

See merge request OpenMW/openmw!1328
2023-01-07 22:18:45 +00:00
psi29a
83718878b2 Merge branch 'Load_ESM4' into 'master'
Loading ESM4 data and storing them in the ESMStore

See merge request OpenMW/openmw!2557
2023-01-07 22:17:17 +00:00
psi29a
a9d3186173 Merge branch 'fix_esm_fixed_string_warning' into 'master'
Fix gcc warning: array subscript n is outside array bounds of ‘const char [n]’

See merge request OpenMW/openmw!2585
2023-01-07 22:15:16 +00:00
Petr Mikheev
8c7cad024b Access local mwscript variables in Lua scripts 2023-01-07 22:10:10 +01:00
Alexei Kotov
fa7991fcb3 For hit state, cancel non-biped idle if there is an active animation 2023-01-07 22:35:29 +03:00
Alexei Kotov
152bdb2f65 Prevent missing KO animations from cancelling KO 2023-01-07 22:21:56 +03:00
Andrei Kortunov
9630246cae Sort quests in journal by name (bug 7054) 2023-01-07 18:55:51 +04:00
glassmancody.info
9a4977d334 rain occlusion 2023-01-06 22:23:03 -08:00
elsid
2bbed8cc06
Fix gcc warning: array subscript 5 is outside array bounds of ‘const char [5]’
In function ‘bool ESM::operator==(const FixedString<capacity>&, const T* const&) [with long unsigned int capacity = 5; T = char; <template-parameter-1-3> = void]’,
    inlined from ‘testing::AssertionResult testing::internal::CmpHelperEQ(const char*, const char*, const T1&, const T2&) [with T1 = ESM::FixedString<5>; T2 = const char*]’ at /home/elsid/dev/googletest/build/gcc/release/install/include/gtest/gtest.h:1358:11,
    inlined from ‘static testing::AssertionResult testing::internal::EqHelper::Compare(const char*, const char*, const T1&, const T2&) [with T1 = ESM::FixedString<5>; T2 = const char*; typename std::enable_if<((! std::is_integral<_Tp>::value) || (! std::is_pointer<_Dp>::value))>::type* <anonymous> = 0]’ at /home/elsid/dev/googletest/build/gcc/release/install/include/gtest/gtest.h:1377:64,
    inlined from ‘virtual void {anonymous}::EsmFixedString_equality_operator_for_not_convertible_to_uint32_with_const_char_pointer_Test::TestBody()’ at apps/openmw_test_suite/esm/test_fixed_string.cpp:165:9:
components/esm/esmcommon.hpp:134:19: warning: array subscript 5 is outside array bounds of ‘const char [5]’ [-Warray-bounds]
  134 |         return rhs[capacity] == '\0';
      |                ~~~^
apps/openmw_test_suite/esm/test_fixed_string.cpp: In member function ‘virtual void {anonymous}::EsmFixedString_equality_operator_for_not_convertible_to_uint32_with_const_char_pointer_Test::TestBody()’:
apps/openmw_test_suite/esm/test_fixed_string.cpp:164:20: note: at offset 5 into object ‘other’ of size 5
  164 |         const char other[5] = { 'a', 'b', 'c', 'd', '\0' };
      |                    ^~~~~
2023-01-06 22:09:07 +01:00
elsid
c80ba92ab7
Add more tests for ESM::FixedString 2023-01-06 21:00:29 +01:00
elsid
7c60905266
Put ESM::FixedString tests into unnamed namespace 2023-01-06 21:00:29 +01:00
psi29a
c9d57788fb Merge branch 'save_fix' into 'master'
Clear character name in the loading menu when there are no saves left

See merge request OpenMW/openmw!2583
2023-01-06 18:09:00 +00:00
Andrei Kortunov
760135591b Clear character name in the loading menu when there are no saves left (bug 7088) 2023-01-06 19:36:53 +04:00
psi29a
452ea3d353 Merge branch 'skeleton_b_gone' into 'master'
Don't use a levelled creature's base pointer when spawning a new instance

See merge request OpenMW/openmw!2578
2023-01-06 10:14:32 +00:00
psi29a
0d8d15a732 Merge branch 'fixcolladaanimopbug' into 'master'
Fix Collada animated object bug #7051

Closes #7051

See merge request OpenMW/openmw!2565
2023-01-06 10:10:27 +00:00
unelsson
bfa0e751dd Skip merging for only animated models (Collada) 2023-01-05 01:34:26 +02:00
psi29a
c2b0c01ff2 Merge branch 'addScript' into 'master'
Raise an error if initData in obj:addScript has incorrect type

See merge request OpenMW/openmw!2577
2023-01-04 22:53:50 +00:00
psi29a
319aa11d84 Merge branch 'l10n_rename' into 'master'
Reorganize l10n files

See merge request OpenMW/openmw!2546
2023-01-04 21:48:00 +00:00
Evil Eye
a08f37cfe8 Don't use a levelled creature's base pointer when spawning a new instance 2023-01-04 22:18:56 +01:00
Petr Mikheev
4b8b3a9187 Raise an error if initData in obj:addScript has incorrect type. 2023-01-04 21:40:35 +01:00
psi29a
1e62b84f9a Merge branch 'lua_initdata' into 'master'
Allow passing `initData` to the :addSript call (#7091)

Closes #7091

See merge request OpenMW/openmw!2568
2023-01-04 14:32:23 +00:00
unelsson
d065dbbefa Add named-based Collada recognition 2023-01-04 16:07:47 +02:00
florent.teppe
400d51c099 Fix compile MSVC 2023-01-04 14:19:12 +01:00
florent.teppe
b88eee08c2 Store display's the ESM4's RecnameInt when not found 2023-01-04 14:07:47 +01:00
florent.teppe
631fa26872 Applies review advice. 2023-01-04 12:22:16 +01:00
florent.teppe
e80dbd7c95 Moved the test to test_store.cpp where it belongs 2023-01-04 00:17:45 +01:00
florent.teppe
64a9f742da Improves check: throws an error that says which RecName is used twice. 2023-01-03 23:28:31 +01:00
florent.teppe
9b1c405467 On store creation checks that each record has a different RecordId. 2023-01-03 22:16:42 +01:00
glassmancody.info
6b6c732a59 properly update postprocess uniform for sun position in interiors 2023-01-03 10:16:30 -08:00
psi29a
a24fa3ea51 Merge branch 'collada_animation_layering' into 'master'
Collada animation layering

See merge request OpenMW/openmw!2475
2023-01-03 08:53:23 +00:00
psi29a
28dcde8909 Merge branch 'controls' into 'master'
Fix jumping (was broken by !2541)

See merge request OpenMW/openmw!2572
2023-01-03 08:51:21 +00:00
florent.teppe
1b66be9c70 Fix dangling reference. 2023-01-02 19:47:12 +01:00
florent.teppe
3b2d9161c4 Applied review advice
better deals with templated functions meant for esm3 used by esm4s.
simplified loading of esm4 and dealing with unhandled record types.
2023-01-02 19:20:03 +01:00
Petr Mikheev
f0a06258fb [Lua] New function cell:hasTag 2023-01-02 18:24:37 +01:00
Petr Mikheev
18088e3e31 Fix jumping (was broken by !2541) 2023-01-02 17:37:31 +01:00
Petr Mikheev
8c7d347179 Reorganize l10n files 2023-01-02 13:21:05 +01:00
florent.teppe
077cf97bc4 The esm4 reader logic is mutualised
to avoid copy pasting code, readerutils gives functions that take visitors as params to decide how a record must be handled

Check encoder exists, and get value of stateless encoder.

fixes code formatting conventions

Fixed output of record with RefId

also fixed readTypedRecord and readRecord to have the proper return types

Check if the type has a sRecordId
2023-01-01 19:22:27 +01:00
florent.teppe
c721a6cafa Initial commit to load ESM4
Some data is actually loaded and store in ESM Store
Any new ESM4 will go through the same code path and be automatically sent to the right store
2023-01-01 16:22:57 +01:00
Petr Mikheev
b248c3e173 Allow passing initData to the :addSript call (#7091) 2022-12-31 22:08:17 +01:00
Petr Mikheev
aabd5a98c7 Fix 'toggle spell' control (was broken by !2541) 2022-12-31 13:12:12 +01:00
unelsson
fe7660eec8 clang-format again 2022-12-31 00:53:36 +02:00
unelsson
d60fd86719 clang format 2022-12-31 00:52:05 +02:00
unelsson
33afcbdc13 Use common function for blendmask detection, remove extra debug logs 2022-12-31 00:35:50 +02:00
unelsson
ffc64205c5 Force collada animation layers, remove nif blend mask detection. 2022-12-31 00:35:50 +02:00
psi29a
d5f5e53714 Merge branch 'playercontrols' into 'master'
Move some of player controls logic from C++ to Lua

See merge request OpenMW/openmw!2541
2022-12-30 16:57:40 +00:00
psi29a
e6064645db Merge branch 'esm_ref_id_refactor' into 'master'
Simplify ESM::RefId

See merge request OpenMW/openmw!2563
2022-12-30 13:27:35 +00:00
psi29a
4b6fd63044 Merge branch 'detournavigator_ref_id' into 'master'
Use ESM::RefId for worldspace in detournavigator

See merge request OpenMW/openmw!2562
2022-12-30 13:26:55 +00:00
elsid
755067f0f3
Remove redundant ESM::RefId member functions 2022-12-30 00:32:47 +01:00
elsid
b4ab153418
Use ESM::RefId for worldspace in detournavigator 2022-12-29 23:49:49 +01:00
Evil Eye
0a4f65c20b Prioritise Absorb Attribute and Skill similarly to Damage and Drain 2022-12-29 12:41:37 +01:00
Evil Eye
dfca5d95c2 Don't apply spell multiplier to on hit enchantments 2022-12-29 12:40:10 +01:00
Petr Mikheev
103908ffc7 Move getNorthVector out of MWWorld::World (used only in one place) 2022-12-28 22:06:49 +01:00
Petr Mikheev
310acaeee9 Don't pass MWLua::WorldView to MWLua::Action 2022-12-28 22:06:49 +01:00
Petr Mikheev
aef2e9d8de Replace World::getExterior with WorldModel::getCell 2022-12-28 22:06:49 +01:00
Petr Mikheev
1869aeae5c Move some of player controls logic from C++ to Lua 2022-12-28 22:04:19 +01:00
Petr Mikheev
0fef8f12d0 Remove functions WorldModel::rest and WorldModel::recharge 2022-12-28 12:45:11 +01:00
Petr Mikheev
b8fb013edf Merge MWLua::ObjectRegistry and MWWorld::WorldModel 2022-12-28 12:45:11 +01:00
psi29a
80e2cd79ec Merge branch 'boat_closer_to_todd' into 'master'
Ignore special characters preceding script commands

Closes #6807

See merge request OpenMW/openmw!2555
2022-12-28 11:21:24 +00:00
psi29a
ba2ececa93 Merge branch 'resolution' into 'master'
Improve window mode change

Closes #7087

See merge request OpenMW/openmw!2530
2022-12-28 10:45:14 +00:00
psi29a
7827d3ae8f Merge branch 'fix_hour_modulo' into 'master'
Fix hour modulo expression (#7121)

Closes #7121

See merge request OpenMW/openmw!2556
2022-12-28 10:33:20 +00:00
elsid
25ead80d8b
Fix hour modulo expression
Round result of std::fmod(hours, 24) to the nearest float below 24 on double to
float conversion when it is not. Add special type and conversion function along
with tests to be used in all places where such conversion happens.

To avoid producing hours equal to 24 due to double to float precision loss.
2022-12-28 00:04:04 +01:00
florent.teppe
afed7e60ef Upgraded Filesave version for RefIDs
Fix logic issue
2022-12-27 23:05:31 +01:00
florent.teppe
dc21df97c8 Fixed issue with getSummonedCreature( that returned a reference to a non const static value
Fix compile, and apply review comment

Fixed greater vs more typo.

getCellname is back to a string view.

Because in most cases was used as a strong not a refId.
and there was a fundamental issue with region names used as a cellname
2022-12-27 19:16:22 +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
2c30575b3b CellName is now a RefId, makes more sense that way. 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
42e45723b7 Fixes issue in MW script compilation that would silently produce the wrong bytecode
Fixes issue when fetching MyGui values that were stored as RefId but fetched as String

Removed some uncessary copies, fixed issues with lowercase and uneeded changes
2022-12-27 19:15:57 +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
florent.teppe
b61d5d8123 Some RefId == ESM::RefId::StringRefId('constString') still existed 2022-12-27 19:15:57 +01:00
florent.teppe
a7d0a8d9d1 Replaced some RefId* => RefId&
Rebase fix commit
2022-12-27 19:15:57 +01:00
florent.teppe
d49f60d2d6 To change fewer things with the master implementation, the Id isn't changed to lower case on creation
lower case utility functions used in comparison functions
2022-12-27 19:15:57 +01:00
florent.teppe
65cdd489fb create a specific esm reader function for RefID to avoid allocation for string and then again for RefId
Fixed some types

removed useless header

applied clang format

fixed compile tests

fixed clang tidy, and closer to logic before this MR

Removed hardcoded refids

unless there is a returned value we don't use static RefIds
can use == between RefId and hardcoded string

Fix clang format

Fixed a few instances where std::string was used, when only const std::string& was needed

removed unused variable
2022-12-27 19:15:57 +01:00
florent.teppe
874ff88288 In the interpretter, the id is no longer passed by vallue, but as a const reference instead.
In getMembersLocal(, a reference to a reference wrapper is used, because the id can change, bu all we need to do is change a pointer.No need to change the value
2022-12-27 19:15:56 +01:00
fteppe
09d461a8cd fixed Topic selected event
Fix rebase
2022-12-27 19:15:56 +01:00
fteppe
c283ea0ae8 string_view& => string_view
fixed ref to temp variable
2022-12-27 19:15:56 +01:00
fteppe
7da38113be Changed more hardcoded RefId to be static to avoid multiple runtime creations
adresses multiple review comments
2022-12-27 19:15:56 +01:00
fteppe
b57dd6d083 Fixed search random, it is a prefix so not a refId
Fixed situation where we return a const reference to a static variable that may change if the same function is called multiple times
2022-12-27 19:15:55 +01:00
fteppe
62d8fe3fc2 changed a few hardcoded refIds used in mutliple places to be defined only once in a variable 2022-12-27 19:15:55 +01:00
fteppe
20da0892ef openMW_test_suite compiles and runs
Slowly moving through the open-cs errors

Good progress in openCS

Very good progress on openCS

Getting closer with openCS

OpenCS compiles and runs! Didn't have time to test it all though

ix openMW

everything compiles on windows??

Fix gcc

Fix Clang
2022-12-27 19:15:55 +01:00
fteppe
2f2e401559 is Hidden marker now takes a const RefId& instead of a string_view 2022-12-27 19:15:55 +01:00
fteppe
c8bb733360 removed clear() function, the only way to change the Id from the outside is from the assignment operator
replaced ciEqual with == operator
2022-12-27 19:15:55 +01:00
fteppe
ee941f9b09 RefId's mId can't be get as mutable from the outside
also removed useless operator= defintion
2022-12-27 19:15:55 +01:00
fteppe
69d70d64f6 Fixed GUI that used RefId when it should have used strings 2022-12-27 19:15:54 +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
Evil Eye
b19ad079c2 Ignore special characters preceding script commands 2022-12-27 14:59:56 +01:00
psi29a
8b0eba8906 Merge branch 'blockofcoal' into 'master'
Play blocked hit sound on the victim, not the attacker

See merge request OpenMW/openmw!2551
2022-12-27 13:20:04 +00:00
Andrei Kortunov
9e77654ab4 Add a hint about disabled resolution list in the Windowed Fullscreen mode 2022-12-27 13:42:39 +04:00
Andrei Kortunov
08f7554e38 Improve window mode change (feature #7087) 2022-12-27 13:42:37 +04:00
Alexei Kotov
cdd6a8c007 Merge branch 'models_for_the_model_god' into 'master'
Implement TestModels/T3D

Closes #7058

See merge request OpenMW/openmw!2506
2022-12-27 00:41:39 +00:00
Alexei Kotov
83d563e2ff Merge branch 'classless' into 'master'
Don't call getClass on an empty Ptr

See merge request OpenMW/openmw!2552
2022-12-27 00:26:14 +00:00
Alexei Kotov
f11d4b76d1 Merge branch 'stay_mad' into 'master'
Update a reference's base record pointer on resurrection

Closes #7084

See merge request OpenMW/openmw!2527
2022-12-27 00:20:47 +00:00
Evil Eye
1cf0befd07 Don't call getClass on an empty Ptr 2022-12-26 21:13:24 +01:00
Alexei Kotov
74225991ca Play blocked hit sound on the victim, not the attacker 2022-12-26 19:07:02 +03:00
Cédric Mocquillon
76d77bf3c3 Connect zoom in/out only when the option is allowed 2022-12-25 17:03:28 +01:00
elsid
0b399a9d1a
Fix detournavigator tests
d40c09c18c changed the logic in parallel with
15e8f0b53c making this check invalid.
2022-12-23 19:26:15 +01:00
elsid
15e8f0b53c
Check input and report errors via RecastContext
Recast functions have preconditions for arguments they don't validate. This may
produce garbage data which may lead to crash. Check arguments and log when they
are invalid.

Do not throw exceptions when these function calls fail, capture Recast reported
errors via RecastContext inherited from rcContext and log them.
2022-12-19 19:46:45 +01:00
Petr Mikheev
de57a95c9d Rename mCells -> mWorldModel 2022-12-16 00:15:11 +01:00
Petr Mikheev
ac6303a83a Rename MWWorld::Cells -> WorldModel 2022-12-15 20:45:18 +01:00
AnyOldName3
66b8d4fb29 Add a setting to control coverage adjustment
With it on, which was always the case before this setting was added,
vanilla content and poorly-made mods will look acceptable, but well-made
mods will have alpha-tested meshes appear to grow and potentially gain a
weird outline as they get further away.

With it off, which replicates the 0.46 behaviour, well-made mods will
look really good, but vanilla content and poorly-made mods will have
alpha-tested meshes shrink as they get further away.

It's been bugging me that this was forced on since 0.47 released, and
I'd hoped to figure out a solution for automatic detection at some point
before 0.48 branched off, but I didn't, so now this is what we're
getting to have Tamriel Rebuilt look right.
2022-12-09 00:22:08 +00:00
psi29a
1d55be8214 Merge branch 'lua_profiler' into 'master'
Lua profiler

See merge request OpenMW/openmw!2523
2022-12-07 10:53:47 +00:00
psi29a
eabb230de2 Merge branch 'keep_calm_and_get_hit' into 'master'
Add option to restore non-MCP Calm spell behaviour

Closes #7063

See merge request OpenMW/openmw!2522
2022-12-07 10:33:17 +00:00
Evil Eye
69fe4594fc Reset mCharGen along with the other MyGUI-holding members 2022-12-05 17:48:24 +01:00
psi29a
06a626452c Merge branch 'ptr2' into 'master'
Refactoring; slightly reduce amount of code in worldimp.cpp

See merge request OpenMW/openmw!2498
2022-12-05 08:54:18 +00:00
Petr Mikheev
7c36a7eb49 Run Lua GC in every frame 2022-12-03 17:09:11 +01:00
Petr Mikheev
55db95d4cf Update Lua profiler; add ability to run OpenMW with old LuaJit that doesn't allow custom allocator (Lua profiler will be disabled in this case) 2022-12-03 16:58:03 +01:00
Evil Eye
209a102061 Update a reference's base record pointer on resurrection 2022-12-01 17:07:10 +01:00
Petr Mikheev
02a9069a0e Lua Profiler 2022-11-30 00:06:14 +01:00
Petr Mikheev
6fa65e4729 Track memory and CPU usage per script in LuaUtil::LuaState 2022-11-30 00:06:14 +01:00
Evil Eye
a648e4cc11 Add option to restore non-MCP Calm spell behaviour 2022-11-23 20:59:37 +01:00
Cédric Mocquillon
dde8ee0611 Delay the deletion of esm versions after the deletion of the scene as it is used in one of its workers (the objectpaging one) 2022-11-20 20:48:48 +01:00
Petr Mikheev
aa230698a8 Apply clang-format 2022-11-13 15:35:26 +01:00
Petr Mikheev
313df72be0 Remove raycasting functions from MWWorld::World 2022-11-13 15:35:26 +01:00
Petr Mikheev
7a354d8c78 Remove from MWWorld::World a few functions that already exist in MWWorld::Cells and MWWorld::Scene 2022-11-13 12:37:37 +01:00
Petr Mikheev
2df993004c Make MWWorld:Cells and MWWorld::Scene to be accessible via Environment 2022-11-13 12:37:37 +01:00
AnyOldName3
08361a6682 Merge branch 'LOD-support-to-Object-Paging' into 'master'
Add LOD support to Object Paging

See merge request OpenMW/openmw!2459
2022-11-12 15:25:57 +00:00
Cédric Mocquillon
7142bb4ce7 Select only one level of LOD outside the active grid
Do not create group when not needed
2022-11-11 20:56:46 +01:00
psi29a
518bd03547 Merge branch 'post_ui' into 'master'
Improve postprocess HUD layout

See merge request OpenMW/openmw!2505
2022-11-10 22:36:04 +00:00
Evil Eye
b94818b24a Tweak message and temporarily set model ttl to 0 2022-11-10 17:24:58 +01:00
Andrei Kortunov
da5b442fcf Improve postprocess HUD layout 2022-11-10 08:31:21 +04:00
Alexei Kotov
1d31c5eb6f Remove the correct bound item when the effect expires 2022-11-10 01:18:46 +03:00
psi29a
d29d68f1ba Merge branch 'allycache' into 'master'
Always consider an actor their own ally (bug #6313)

Closes #4229 and #6313

See merge request OpenMW/openmw!2504
2022-11-09 21:01:57 +00:00
Cédric Mocquillon
4140e4ea05 Remove LOD which could never be displayed in a chunk 2022-11-09 21:57:48 +01:00
psi29a
577c9ad5fb Merge branch 'deprecated' into 'master'
Replace gmtime with safer equivalents

See merge request OpenMW/openmw!2503
2022-11-09 09:20:07 +00:00
Evil Eye
0ae5755abb Implement TestModels/T3D 2022-11-08 22:36:15 +01:00
Alexei Kotov
5d11238723 Always consider an actor their own ally (bug #6313) 2022-11-08 20:13:20 +03:00
psi29a
7669a43495 Merge branch 'dialogue_result_scripts' into 'master'
Reimplement --script-all-dialogue to be more useful to modders

See merge request OpenMW/openmw!2494
2022-11-08 15:46:16 +00:00
psi29a
fa50890633 Merge branch 'sm-snap-to-reference' into 'master'
Open-CS: Snap to Reference

See merge request OpenMW/openmw!2484
2022-11-08 15:30:26 +00:00
Alexei Kotov
914fba229d Replace gmtime with safer equivalents 2022-11-08 16:38:40 +03:00
Alexei Kotov
a5adb73900 Make idle emitters emit ripples every 1.5 seconds (bug #5883) 2022-11-08 12:48:24 +03:00
psi29a
3ca17e5183 Merge branch 'landofwindandshade' into 'master'
Handle landing in the frame the jump is over (bug #5849)

Closes #5849

See merge request OpenMW/openmw!2499
2022-11-08 08:25:31 +00:00
Alexei Kotov
1db9247c45 Restart player block animation during blocking if necessary 2022-11-07 22:09:56 +03:00
Alexei Kotov
180963488f Play shield hit sound when the hit is blocked (bug #6645) 2022-11-07 22:02:30 +03:00
Alexei Kotov
9b8399c353 Handle landing in the frame the jump is over (bug #5849) 2022-11-07 19:06:01 +03:00
Petr Mikheev
6025943fed Add missing content=builtin.omwscripts if openmw is started via openmw-cs (fixes #7056) 2022-11-05 16:30:44 +01:00
Max Henzerling
897cdc62d8 Add snap to reference 2022-11-04 15:04:42 -07:00
Evil Eye
f61083d02c Replace switch statements 2022-11-04 12:20:37 +01:00
Evil Eye
29a46b0fc0 Reimplement --script-all-dialogue to be more useful to modders 2022-11-03 20:54:44 +01:00
psi29a
6960fc9304 Merge branch 'opencs_iwyu' into 'master'
Run IWYU on the opencs

See merge request OpenMW/openmw!2481
2022-11-02 21:41:53 +00:00
psi29a
fd176d6faf Merge branch 'shutup_no_one_cares' into 'master'
Ignore 0 attributes on dead NPCs

See merge request OpenMW/openmw!2490
2022-11-02 08:19:37 +00:00
elsid
013f56088b
Support negative days in TimeStamp
As vanilla engine does.
2022-11-01 22:17:39 +01:00
Evil Eye
45cd5bdbd7 Ignore 0 attributes on dead NPCs 2022-11-01 20:14:40 +01:00
jvoisin
1a326294c0 Run IWYU on the opencs 2022-10-31 21:04:01 +01:00
Evil Eye
4a48156378 Only force adjust the player and NPCs teleported out of the active grid 2022-10-31 12:29:29 +01:00
Evil Eye
5448338b21 Allow bound effects to be recast if they're attached to a recastable effect 2022-10-28 23:10:47 +02:00
Petr Mikheev
4f5443118e Merge branch 'fix_coroutine_crash' into 'master'
Fix coroutine-related crashes

Closes #6996

See merge request OpenMW/openmw!2447
2022-10-18 22:30:13 +00:00
uramer
a2fa1fe0a5 Execute async callbacks on the main Lua stack 2022-10-18 22:12:11 +02:00
uramer
8108fa0724 Merge branch 'fix_7039' into 'master'
Fix #7039: freeze after throwing an error in a queued Lua callback

Closes #7039

See merge request OpenMW/openmw!2469
2022-10-18 19:53:30 +00:00
uramer
b13a4f6b01 Lua coroutine crash tests 2022-10-18 21:11:31 +02:00
Evil Eye
48726eedaa Mark constant methods const 2022-10-18 20:28:35 +02:00
Evil Eye
a207b5e419 Prevent potentially returning garbage flags 2022-10-18 20:28:35 +02:00
Evil Eye
c8a594d9d2 Don't use potentially invalid cache entry 2022-10-18 20:28:35 +02:00
psi29a
bc1e0d3522 Merge branch 'grayscale_dialogue' into 'master'
Fix dialogue issues

Closes #6419 and #7047

See merge request OpenMW/openmw!2478
2022-10-18 15:41:56 +00:00
psi29a
48232bfece Merge branch 'consecutiveseriouspunches' into 'master'
Don't process unexpected hit text keys (bug #7042)

Closes #7042

See merge request OpenMW/openmw!2473
2022-10-17 13:11:02 +00:00
psi29a
fdf1577918 Merge branch 'lua_records' into 'master'
Lua Armor, Static and Light record bindings

See merge request OpenMW/openmw!2341
2022-10-17 13:10:19 +00:00
psi29a
da9cbbce8f add some memory 2022-10-17 13:09:17 +00:00
Evil Eye
a24e9e4c0a Mark constant methods const 2022-10-17 09:43:20 +02:00
Evil Eye
81f138cea0 Prevent potentially returning garbage flags 2022-10-17 09:37:56 +02:00
Evil Eye
1c17260d87 Don't use potentially invalid cache entry 2022-10-17 09:35:43 +02:00
Alexei Kotov
ece7a98e03 Only prevent initially dead actors from floating up (bug #4204) 2022-10-14 19:35:28 +03:00
AnyOldName3
15c51dcbbc Restore false-positive unused includes
They're needed on MacOS as SDL_opengl_gletx.h doesn't define them there.

They don't actually work on MacOS, so long-term, the code that uses
these defines should be changed to use #ifdef to check they're available
before using them.
2022-10-13 00:49:24 +01:00
Alexei Kotov
eadade9dfc Don't process unexpected hit text keys (bug #7042) 2022-10-13 02:07:23 +03:00
AnyOldName3
77de37b1ed Revert "Merge branch 'fix_macos_build' into 'master'"
As well as fixing the MacOS build, it meddled with a bunch of files that
already did the right thing.

This reverts commit 8162541a14, reversing
changes made to e16c451d08.
2022-10-12 22:48:34 +01:00
mpeco
a2ce37b5b0 clang-format 2022-10-11 01:14:17 -03:00
mpeco
af3af6e091 update types.lua 2022-10-11 00:01:11 -03:00
mpeco
90a73b39ce Lua Armor, Static and Light record bindings 2022-10-11 00:01:08 -03:00
Petr Mikheev
395f7f0e9a Fix #7039: freeze after throwing an error in a queued Lua callback 2022-10-10 23:32:17 +02:00
Petr Mikheev
6371e002fd [Lua] More understandable error message when trying to change stats on anything except openmw.self 2022-10-10 22:57:06 +02:00
psi29a
59025f2bc9 Merge branch 'dont_make_me_press_twice' into 'master'
Derive sneaking state from character data

See merge request OpenMW/openmw!2360
2022-10-10 16:49:20 +00:00
psi29a
5dfbf6ffb7 Merge branch 'another_iwyu' into 'master'
Another pass with IWYU

See merge request OpenMW/openmw!2465
2022-10-10 16:48:57 +00:00
jvoisin
cd29c181cf Another pass with IWYU 2022-10-10 15:16:18 +02:00
psi29a
8162541a14 Merge branch 'fix_macos_build' into 'master'
Use separate header to define missing GL constants

See merge request OpenMW/openmw!2464
2022-10-10 07:49:01 +00:00
psi29a
e16c451d08 Merge branch 'l10n' into 'master'
Separate l10n manager from lua

See merge request OpenMW/openmw!2451
2022-10-10 07:34:18 +00:00
psi29a
c164437d91 Merge branch 'classism' into 'master'
Use class service flags for autocalc NPCs

Closes #7044

See merge request OpenMW/openmw!2461
2022-10-10 07:32:46 +00:00
psi29a
c562b0b72c Merge branch 'bootlegcharacter' into 'master'
Nitpicking in CharacterController::update()

See merge request OpenMW/openmw!2460
2022-10-10 07:27:07 +00:00
elsid
c324482338
Use separate header to define missing GL constants 2022-10-09 23:35:55 +02:00
elsid
843753da14
Remove unused includes 2022-10-09 16:44:18 +02:00
jvoisin
3cbf1dc042 First pass with include-what-you-use 2022-10-09 10:39:43 +00:00
Evil Eye
60491cc896 Derive sneaking state from character data 2022-10-08 17:22:33 +02:00
Evil Eye
60c26832d2 Use class service flags for autocalc NPCs 2022-10-08 17:00:33 +02:00
Alexei Kotov
961fe59736 Nitpicking in CharacterController::update() 2022-10-08 07:03:04 +03:00
Petr Mikheev
3697c9266b Separate l10n manager from lua 2022-10-07 17:19:04 +02:00
psi29a
6630dbb9c2 Merge branch 'window_manager_profile' into 'master'
Profile window manager update

See merge request OpenMW/openmw!2458
2022-10-07 07:38:03 +00:00
elsid
2f5adbb083
Profile window manager update 2022-10-06 21:50:31 +02:00
elsid
212c7c7f25
Move LuaWorker to a separate file 2022-10-06 21:50:31 +02:00
elsid
cd18c81e58
Move ScopedProfile to a separate file 2022-10-06 21:50:31 +02:00
elsid
bb8b5e2108
Add META_Node to clang-format StatementMacros 2022-10-06 21:11:52 +02:00
elsid
063fff7fa4
Fix and prevent -Wextra-semi warning 2022-10-06 00:26:43 +02:00
elsid
624d8bc931
Support unsigned settings values 2022-10-04 01:34:53 +02:00
elsid
da15db295e
Fix resetting player's animation on game loading
When game is loaded player's animation is replaced by a new object. Old object
is destructed without explicit removeFromScene call.
2022-10-02 13:50:51 +02:00
psi29a
6e71804048 Merge branch 'keying_in' into 'master'
Add key flag on load

Closes #7034

See merge request OpenMW/openmw!2444
2022-09-30 13:16:14 +00:00
Evil Eye
e6592aa850 Add key flag on load 2022-09-30 12:16:45 +02:00
elsid
4de8ea30c8
Report used memory by Lua interpreter 2022-09-30 02:15:21 +02:00
elsid
b92d80249e
Adjust initial distance when destination is changed for obstacle check
Changed destination may create a situation when the distance actor moved between
2 update calls is less than initial distance because destination has been changed.
This forces actor to take evasive action when there is no actual obstacle.
2022-09-28 22:01:29 +02:00
clang-format-bot
88ec8a9523
Apply clang-format 2022-09-25 18:23:43 +02:00
psi29a
f7da42870e Merge branch 'count' into 'master'
Improve item count handling

See merge request OpenMW/openmw!2430
2022-09-25 13:38:33 +00:00
psi29a
aed0ad6b83 Merge branch 'nifosg_tests' into 'master'
Add tests for NifOsg::Loader

See merge request OpenMW/openmw!2421
2022-09-25 13:37:14 +00:00
psi29a
d05494bfb9 Merge branch 'falling_actors' into 'master'
Do not adjust position for falling actors (#7009)

Closes #7009

See merge request OpenMW/openmw!2416
2022-09-25 13:36:55 +00:00
psi29a
f0e58ef872 Merge branch 'editor_fix' into 'master'
Fix topic infos creation

Closes #6686

See merge request OpenMW/openmw!2432
2022-09-25 13:34:43 +00:00
psi29a
d38c072030 Merge branch 'recall_how_to_recall' into 'master'
Prevent recursive calls to ActiveSpells::update

Closes #7022

See merge request OpenMW/openmw!2426
2022-09-25 13:30:07 +00:00
Andrei Kortunov
3163d9ed56 Fix topic infos creation 2022-09-25 15:17:20 +04:00
Andrei Kortunov
7d23ad29e0 Make count input box larger to fit larger text 2022-09-25 11:54:34 +04:00
Andrei Kortunov
dacb300dfb Improve item count handling 2022-09-25 11:22:17 +04:00
Project579
6fe89ff22b Fix dumb regression, initialize "std::filesystem::file_time_type" with "clock::now()". 2022-09-24 21:52:10 +02:00
Project579
5cf2a958eb Make conversions between std::chrono time_point and string safer by not using "localtime" directly. 2022-09-24 21:47:27 +02:00
elsid
d2e1f18924
Add tests for NifOsg::Loader 2022-09-24 19:10:39 +02:00
elsid
4b760e8846
Do not add redundant nullptr parent
There are no failed tests after this, so this is not really needed.
2022-09-24 19:10:31 +02:00
elsid
83bb2195b0
Move init functions for Nif nodes to a separate file
This will be used in other tests.
2022-09-24 19:10:25 +02:00
elsid
f2fb3d6de8
Separate NIFFileReader from NIFFile
NIFFile might not always be created from a file or stream containing NIF data.
Basically there are 2 different responsibilities for this class:
1. Read NIF file
2. Provide input for nifosg and bulletnifloader.

Remove no longer needed NIFFileMock since the state of NIFFfile can be
initialized independently from reading NIF file.
2022-09-24 19:10:14 +02:00
Evil Eye
d3253cb636 Prevent recursive calls to ActiveSpells::update 2022-09-24 18:13:45 +02:00
elsid
1fc7bd7775
Do not consider falling actors as grounded 2022-09-24 17:49:44 +02:00
elsid
953954ff95
Do not adjust position for falling actors 2022-09-24 17:49:42 +02:00
clang-format-bot
ddb0522bbf
Apply clang-format to code base 2022-09-22 21:35:26 +03:00
psi29a
9a9c7fa7cf Merge branch 'std-filesystem-hotfix' into 'master'
Use std::filesystem for unit tests temporary files path.

See merge request OpenMW/openmw!2402
2022-09-19 20:47:33 +00:00
psi29a
525f81393a Merge branch 'physics_refactor' into 'master'
Small physics refactoring

See merge request OpenMW/openmw!2417
2022-09-19 19:57:23 +00:00
Project579
b82176410b Use std::filesystem for unit tests temporary files path. 2022-09-19 21:42:18 +02:00
Evil Eye
7cc55022a1 Implement sun damage based on the research on the wiki 2022-09-19 19:05:22 +02:00
elsid
feb645d15f
Remove redundant Scene::updatePosition function 2022-09-17 01:14:04 +02:00
elsid
aeb4611d6c
Mark MWPhysics::Actor constructor and assignment operators as deleted 2022-09-17 01:14:04 +02:00
elsid
bceca33699
Do not lock mutex in MWPhysics::Actor constructor 2022-09-17 01:14:04 +02:00
elsid
bd98404890
Initialize PtrHolder::mPtr and positions by its constructor 2022-09-17 01:14:04 +02:00
AnyOldName3
84f8a6848a Renormalise line endings
This should replace accidental CRLF with LF
2022-09-16 00:53:24 +01:00
elsid
a0cfcc50a2
Fix dangling pointer access on clicking save in the main menu
getSignature() returns an object which means expression like:
className = it->getSignature().mPlayerClassName;
assigns a temporary object to className that does not outlive the statement.
Having className a string view such code leads to a dangling pointer.

Return a reference from getSignature to save on redundant copying.

Change getSignature implementation to make it visible that it finds a maximum
element.

Do not call getSignature multiple times when possible to avoid seaching for the
same max element multiple times.
2022-09-15 22:49:20 +02:00
psi29a
d1c79fa8d1 Merge branch 'pre_clang_format_fixes_2' into 'master'
Fixes before applying clang-format 2

See merge request OpenMW/openmw!2401
2022-09-15 08:24:23 +00:00
elsid
9c291535bb
Dump NIFZ and KFFZ sub records by esmtool 2022-09-15 00:01:40 +02:00
elsid
410a2881fe
Add comma to the last array element to prevent putting multiple elements on a single line 2022-09-14 00:36:02 +02:00
elsid
51314db2f1
Remove AI_CNDT from AI package types
AI_CNDT is a label of subrecord containing cell name. It's not AI package type.
2022-09-13 00:05:12 +02:00
psi29a
20abe6dcf5 Merge branch 'esmtool_string_view' into 'master'
Use std::string_view for esmtool labels

See merge request OpenMW/openmw!2396
2022-09-12 20:55:01 +00:00
elsid
52b7b66e9f
Add comma to the last array element to prevent putting multiple elements on a single line 2022-09-12 21:00:51 +02:00
elsid
5b1d6917ef
Add comments to prevent line splitting on formatting 2022-09-12 21:00:51 +02:00
elsid
4698a4cd2d
Use raw string literals to format command usage messages 2022-09-12 21:00:51 +02:00
elsid
f269406061
Do not wrap emit expresison with parenthesis
To avoid warnings like following after clang-format applied:

apps/launcher/utils/profilescombobox.cpp:85:9: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
    emit(signalProfileChanged(mOldProfile, currentText()));
        ^
apps/launcher/utils/profilescombobox.cpp:82:5: note: previous statement is here
    if (index == -1)
    ^
2022-09-12 21:00:51 +02:00
elsid
40e899f56d
Use std::string_view for esmtool labels 2022-09-12 18:58:53 +02:00
elsid
6ae15f08e0
Avoid chained operator() calls to prevent formatting issues 2022-09-12 16:48:15 +02:00
unrelentingtech
1c8fd2ecdb Implement system-scaled HiDPI support (SDL_WINDOW_ALLOW_HIGHDPI - Wayland, macOS, etc) 2022-09-12 08:18:08 +00:00
elsid
a9826342b2
Print ESM4 EditorId and Model by esmtool dump 2022-09-12 01:42:08 +02:00
psi29a
80d52e3da8 Merge branch 'cursor' into 'master'
Support high-resolution cursor textures

Closes #6933

See merge request OpenMW/openmw!2262
2022-09-11 18:32:18 +00:00
psi29a
435eacdaad Merge branch 'debug_draw_commands' into 'master'
API to draw primitives

See merge request OpenMW/openmw!2345
2022-09-11 17:17:16 +00:00
Andrei Kortunov
a2c02d2999 Support high-resolution cursor textures (feature 6933) 2022-09-11 20:54:20 +04:00
florent.teppe
43b0ae1ce7 all debug renders now use the same shader and it works
remove debug draw shader, now that debug and debugdraw serve the same function

remove debug draw code from actors to clean

replaced int uniforms with bool for better readability

clang format

cleanup, remove unused func, and mistake whitespace

fix namespace

added more colors

fixed missing whitespace
2022-09-11 17:54:01 +02:00
florent.teppe
2a980ecb50 cleaned some code and fixed some naming issues
Moved debug draw to components, fixed some whitespace issues, added include guard

fixed uniform name, removed old files

Fixes some more whitespace weirdness
2022-09-11 17:53:53 +02:00
florent.teppe
12b3424dd7 initial work to get lines in
lines need the same synchronisation system as the other primitives

This two points are there because if I resize to 0 it crashes, si I need a pice of line at 0.,0.,0. so there is no crash.Not ideal

Lines are colored

didn't commit updated shader file
2022-09-11 17:53:51 +02:00
florent.teppe
80c97e48bf made code more consistent between cube, cylinder and wirecube, should also fix a clang compilation error
remove include to non existing file

Actors code displays different ways to use debug draw

oups, forgot to remove parameter in function

fix include case sensitivity

Jopefully fixes all linux issues

moves some code pieces, and the debug draw now has a group node to have different types of objects to draw
2022-09-11 17:53:49 +02:00
florent.teppe
76008e1ff8 Multiple shapes to draw
adds wireCube primitive

scale of the command taken into account

shading light is more vertical
2022-09-11 17:53:47 +02:00
florent.teppe
93af569a68 can place a cube at 0,0,0 Useless for now
Arbitrarly draw cubes at certain position with a certain color

Adds exemple of how it looks in the actor update code.

draws a green cube if alive, red else
2022-09-11 17:53:41 +02:00
psi29a
29f3de30c2 Merge branch 'master' into 'cellstore_refactor'
# Conflicts:
#   apps/openmw/mwworld/scene.cpp
2022-09-11 15:03:37 +00:00
Project579
886b8c7af2 Fix build error with stdlibc++ due to includes shuffling. 2022-09-11 14:41:21 +02:00
Project579
9ceafe770d Hard fail on loading BSA with records using unicode paths. 2022-09-11 14:41:21 +02:00
Project579
1a79f098fa Use std::filesystem::create_directories instead of std::filesystem::create_directory to recursively generate directories from the provided path. 2022-09-11 14:41:21 +02:00
Project579
ca14fc00dc Added dedicated functions for conversions between QString and std::filesystem::path. 2022-09-11 14:41:21 +02:00
Project579
c226b35f1f Fix some remaining encoding errors due to std::filesystem transition. 2022-09-11 14:41:20 +02:00
Project579
1fc197e404 Check std::getenv output before using it to construct a std::filesystem::path. 2022-09-11 14:41:20 +02:00
Project579
5456ef1d50 Add new functions and overloads to support std::u8string and std::filesystem::path. 2022-09-11 14:41:20 +02:00
Project579
796911e67d iniimporter: Work around some old MSVC compiler bugs. 2022-09-11 14:41:20 +02:00
Project579
199bf233e8 essimporter: Don't use "std::string" to store paths. 2022-09-11 14:41:20 +02:00
Project579
14a786bab0 iniimporter: Don't convert paths to "std::string". 2022-09-11 14:41:20 +02:00
Project579
4e428dee12 Update some settings that accept paths by "std::string" to accept them as "std::filesystem::path" instead. 2022-09-11 14:41:20 +02:00
Project579
928b131564 Implement std::filesystem::path conversion tests. 2022-09-11 14:41:20 +02:00
Project579
a13709c510 Replace implicit convertions from std::filesystem::path to std::string with correctly converting functions. 2022-09-11 14:41:20 +02:00
Project579
4d47e8d055 openmw-cs: model: world: data: Remove dead code. 2022-09-11 14:41:20 +02:00
Project579
864112b5db Fixed Windows build when using MSVC 14.26 and MacOS build. 2022-09-11 14:41:20 +02:00
Project579
6bf4c7a04f Upgraded "input-file" command line option to Files::MaybeQuotedPath from std::string to allow unicode characters on Windows. 2022-09-11 14:41:20 +02:00
Project579
e5c417c968 Make sure all paths are passed as std::filesystem::path instead of std::string where possible. 2022-09-11 14:41:15 +02:00
Project579
35fe214588 Updated components/misc/timeconvert.hpp to fix the Android build. 2022-09-11 02:20:01 +02:00
Project579
5446571aec Circumvent QT MOC bugs by including the filesystem header in a specific order. 2022-09-11 02:19:07 +02:00
Project579
cf0af87c80 Revert changes from "4c8e1ccf - Fixed windows build and updated tests to reflect changes of escape character from "&" to "\"" in "apps/openmw_test_suite/openmw/options.cpp" 2022-09-11 02:19:07 +02:00
Project579
e97eeca281 Attempt to work around QT MOC bugs caused by the filesystem header. 2022-09-11 02:19:07 +02:00
Project579
cd229a965b Fixed windows build and updated tests to reflect changes of escape character from "&" to "\" 2022-09-11 02:19:07 +02:00
Project579
4bb07282c9 Replace all remaining occurrences of boost::filesystem with std::filesystem. 2022-09-11 02:19:00 +02:00
florent.teppe
9a19bb84a4 fixed Clang and whitespace difference with master 2022-09-10 22:58:15 +02:00
florent.teppe
10de4a5156 created a relationship between the record type and the corresponding state
used in readReferences and writeReferences. Simplifies the calls to those functions
2022-09-10 22:20:47 +02:00
florent.teppe
256d8a699a moves one function from tuplemeta.hpp to newly created tuplehelpers.hpp 2022-09-10 20:13:18 +02:00
florent.teppe
73e3c0adf6 applies some review changes
fixed c style cast
fixed useless includes
fixed callback not last member
fixed situation where type==0 and therefore function call isn't necessary
2022-09-10 19:48:48 +02:00
psi29a
25fa8c3656 Merge branch 'rm_base_esm_reader' into 'master'
Remove ESM::Reader base class

See merge request OpenMW/openmw!2388
2022-09-10 14:38:13 +00:00
psi29a
525b904a44 Merge branch 'reflection-uniform' into 'master'
Added a uniform to indicate whether rendering is occurring in a reflection

See merge request OpenMW/openmw!2340
2022-09-10 14:19:20 +00:00
elsid
ac1688f9c1
Remove ESM::Reader base class
This class does not serve any useful purpose now. It was added as a first step
in attempt to define common interface for ESM3 and ESM4 readers. But this is not
going to happen.
2022-09-10 15:17:49 +02:00
florent.teppe
158eea934d removed more code from the header
simplified forEachInternal function using tupleForEach
moved some function that were in CellStoreImp that didn't need to be
2022-09-10 10:03:13 +02:00
florent.teppe
65bd007baa simplified some big switch/case 2022-09-09 23:40:56 +02:00
psi29a
95f9f00bcc Merge branch 'navigator_rtree' into 'master'
Optimize updating navmesh from the main thread primarily on cell loading

See merge request OpenMW/openmw!2382
2022-09-08 22:18:36 +00:00
florent.teppe
bcc004ecf5 Simplified read reference, by associating the types to the recNameInt using tuple + template + fold expresions magic 2022-09-08 23:39:44 +02:00
florent.teppe
0a5c863f27 fewer header includes 2022-09-08 21:08:59 +02:00
florent.teppe
c7e88344d0 cellstore refactor first version, simply replaces each individual reflist by a tuple and makes the necessary related changes 2022-09-08 20:52:00 +02:00
psi29a
95ad1d91df Merge branch 'esmstore-round-2' into 'master'
More ESMStore cleanup

See merge request OpenMW/openmw!2383
2022-09-08 13:08:26 +00:00
ζeh Matt
aa65df8872
Rename meta.hpp to tuplemeta.hpp 2022-09-08 15:03:01 +03:00
elsid
22ee592dd3
Lock TileCachedRecastMeshManager once per changing a cell
To save time on locking mutex and prevent AsyncNavMeshUpdater to use RecastMesh
for a tile in the middle of objects loading.
2022-09-08 11:06:35 +02:00
psi29a
b9ff117dfe Merge branch 'reuse_actors_positions_buffer' into 'master'
Reuse physics actors positions buffer

See merge request OpenMW/openmw!2384
2022-09-08 06:57:41 +00:00
Andrei Kortunov
6ec9616ddd Localize the 'show effect duration' option 2022-09-08 07:46:56 +04:00
ζeh Matt
c856095562
Use compile time generated indices for tuples types 2022-09-08 03:38:07 +03:00
elsid
cdc9141e2f
Reuse physics actors positions buffer 2022-09-08 01:57:45 +02:00
ζeh Matt
8f7703d5c8
Rename HasMember to TupleHasType and move code into misc/meta.hpp 2022-09-08 00:13:50 +03:00
elsid
d15e1dca84
Use R-tree for objects to be used for navmesh generation
Instead of storing a set of objects per tile.
2022-09-07 22:51:56 +02:00
psi29a
1859c6eded Merge branch 'pcvisionbonus' into 'master'
Implement PCVisionBonus functions

Closes #6983

See merge request OpenMW/openmw!2371
2022-09-07 20:27:22 +00:00
psi29a
1943486812 Merge branch 'savescreenshots' into 'master'
!2358 follow-up (bug #6661)

Closes #6661

See merge request OpenMW/openmw!2376
2022-09-07 20:24:41 +00:00
psi29a
fcd9b78cac Merge branch 'REFACTOR_STORE' into 'master'
Refactoring the ESM store to better support many new ESM4 types

See merge request OpenMW/openmw!2161
2022-09-07 20:22:29 +00:00
florent.teppe
31a14952b7 no more getIdType, only setIdType 2022-09-07 18:45:15 +02:00
Alexei Kotov
81c78f5477 Keep savegame screenshots up-to-date 2022-09-07 16:18:33 +03:00
Alexei Kotov
0d3a1470c9 Fix double quote marks 2022-09-07 16:12:26 +03:00
psi29a
912a4d69ee Merge branch 'reuse_simulations_buffer' into 'master'
Reuse physics simulations buffer (#6588)

Closes #6588

See merge request OpenMW/openmw!2374
2022-09-07 10:30:59 +00:00
elsid
277211c5b4
Reuse physics simulations buffer
To avoid redundant allocations.

Use 2 buffers to make sure there is no overlap between main and the background
threads.
2022-09-07 03:06:59 +02:00
florent.teppe
e961ac6f7c function doesn't need to return int 2022-09-06 23:30:51 +02:00
florent.teppe
b1d5d604be various fixes
fixed naming convention
replaced std::string by string_view when possible
removed unused function and member varaible
replaced type::value by type_v
set default destructor in cpp
function getTypeIndex => getnextindex
2022-09-06 23:10:58 +02:00
elsid
180d609e0d
Check "wait until min distance to player" only for requiredTilesPresent wait condition
allJobsDone should wait even if "wait until min distance to player" is 0.
2022-09-06 21:51:48 +02:00
elsid
955db8f825
Call Navigator::setWorldspace once per changing cell 2022-09-06 21:51:48 +02:00
elsid
204ab6fea3
Use version instead of generation and revision for recast mesh 2022-09-06 21:51:48 +02:00
florent.teppe
7bc506ff86 linux copmile 2022-09-06 14:33:03 +02:00
florent.teppe
564c5d6690 fixed naming convention issue 2022-09-06 14:27:53 +02:00
florent.teppe
e23d9c11a8 moved a bit of code back in the header to avoid many template specialization 2022-09-06 14:19:55 +02:00
florent.teppe
0dd529ab1d With the records include removed from store.hpp, need to include the relevant files accross the codebase.Lots of touched files, but very little done 2022-09-06 13:26:13 +02:00
Evil Eye
6117b10cfa Derive screen brightness from the blind modifier 2022-09-05 20:31:48 +02:00
Evil Eye
489c7a10b6 Implement PCVisionBonus functions 2022-09-05 20:21:19 +02:00
psi29a
8e7cee5861 Merge branch 'shut_it' into 'master'
Make the Sound magic effect make noise

Closes #6986

See merge request OpenMW/openmw!2369
2022-09-05 17:55:49 +00:00
florent.teppe
4bb9a4166d The tuple types declaration is back in the header, but there is no need for implementation details to be known for any of the types 2022-09-05 18:38:59 +02:00
Evil Eye
9484d8ce51 Make the Sound magic effect make noise 2022-09-05 18:04:31 +02:00
florent.teppe
57df51b4a6 fixed made by @ZehMatt in 6abb96250f and cdcf1393fc 2022-09-05 18:04:10 +02:00
florent.teppe
9092c32f2e fixed incompatibilities caused bu merge 2022-09-05 17:57:13 +02:00
florent.teppe
1ed22a298d fix compile 2022-09-05 17:35:36 +02:00
florent.teppe
7bd7105345 code cleanup 2022-09-05 17:35:36 +02:00
florent.teppe
33ea66b86d Type index type error fixed 2022-09-05 17:35:36 +02:00
florent.teppe
85a9edf2ee removes useless make_tuple, and changes type of typeIndex to size_t 2022-09-05 17:35:36 +02:00
florent.teppe
31330c9abc oups 2022-09-05 17:35:36 +02:00
florent.teppe
cbb9b65286 linux compile 2022-09-05 17:35:36 +02:00
florent.teppe
ee06cccbe1 gets rid of the macros, we use a tuple instead, with a mechanism to assign an index to each type.
so the tuple is only defined in the cpp, but we can still have template functions in the header that can ge tthe index with the type
2022-09-05 17:35:36 +02:00
florent.teppe
16482243fa rename StoreBase =>DynamicStore, and create new class Storebase
all stores inherit from base class StoreBase.Storebase is just an empty interface class
2022-09-05 17:35:36 +02:00
florent.teppe
0d84b32d46 Rename member to be clearer and more generic 2022-09-05 17:35:35 +02:00
florent.teppe
0d7bd19119 removes recname type, we use what is already included in ESM types 2022-09-05 17:35:35 +02:00
florent.teppe
bff4096652 Removed macro that didn't serve any real purpose
Renamed member that didn't respect the naming convention
2022-09-05 17:35:35 +02:00
florent.teppe
78ba3f91f3 Binds at compile time esm struct and RecNameInts to automatically populate mESM3RecordToStore
fewer possible mistakes now, one macro takes all the information to create all the stores and maps from RecName to Store
2022-09-05 17:35:35 +02:00
florent.teppe
a7207a9220 Linux compilation 2022-09-05 17:35:35 +02:00
florent.teppe
59ebee634b Very convincing experiment, by associatingg a compiletime index to the esm record, it becomes possible to automate the loop that creates them
it will also be possible to associate AT COMPILETIME the RecNameInt to the esm type, which in the same manner will automatically populate mESM3RecordToStore
2022-09-05 17:35:35 +02:00
florent.teppe
252550d86f Added records for ESM4s the throw std:: logic error ensures at compile time that there is no collision
static_assert doesn't work because the function can be called at run time
2022-09-05 17:35:35 +02:00
florent.teppe
0967c11128 mids and mStaticIds moved to mStoreImp
renamed recordid to storeid
2022-09-05 17:35:35 +02:00
florent.teppe
87224e3007 Fixes a bug with es3overrideRecord, esm3InsertStatic and esm3StoreInsert
This also comes with a change to the mapping from esm3 record name to Store to be more direct with a pointer
and the creation of a map from store pointer to esm3 record type
2022-09-05 17:35:07 +02:00
florent.teppe
dbfbad575b Fixes GCC compilation, hopefully for good 2022-09-05 17:35:07 +02:00
florent.teppe
30549155e0 Removed extra ; that GCC didn't like (fixes pendantic warning treated as error) 2022-09-05 17:35:07 +02:00
florent.teppe
800ada37ae removed getId public function 2022-09-05 17:35:07 +02:00
florent.teppe
c41c67b461 Fixed naming convention problems
removed 2 macros.
 - One is replaced by the underlying code
 - The second one ise replaced by a template function

removed tabulation used as indentation
used getWritable instead of a const_cast
used for( val : cont) loop
removed useless getId function
2022-09-05 17:35:07 +02:00
florent.teppe
0f41ae3b53 Oups forgot an extra ; not liked by Ubuntu GCC 2022-09-05 17:35:06 +02:00
florent.teppe
ede46745b5 Fixed Linux compialtion 2022-09-05 17:35:06 +02:00
florent.teppe
0be4521291 Removed mistakenly added space 2022-09-05 17:35:06 +02:00
florent.teppe
1ced0c912e partially revert "Store: moved all the template specialization to its own heaper file, included where it's needed"
This reverts commit 80a25bcd3021f7ebfaf2f864e34532009b9b8aeb.
It didn't really make sense to do all those changes in the same MR

partially Revert "Store refactoring: more forgotten storeSpecialization.hpp"

This reverts commit 9943a5bc96b9025f06cbaac5bb7f1bf51ebc746f.

removed remaining references to storeSpecialization  CMakeLists.txt,  and landmanager.cpp
2022-09-05 17:35:06 +02:00
florent.teppe
3b6ac53be4 Store refactoring: more forgotten storeSpecialization.hpp 2022-09-05 17:34:40 +02:00
florent.teppe
5ee3cfed57 There is one less necessary macro, it was possible to make a template function that works for all StoreBase stores 2022-09-05 17:34:40 +02:00
florent.teppe
1ed2244298 Store refactor: Now way easier to create new stores, a good chunk of it is automated, only simple macros are used now
The case of indexedStores remains an issue, because they can't be stored with the rest because they don't inherit of store base
2022-09-05 17:34:40 +02:00
florent.teppe
a78db85178 Store refactor: frogot a specialization include 2022-09-05 17:34:40 +02:00
florent.teppe
ae24d62f27 ESM store: new structure that associates each record type to an id, will make it easier to add new stores 2022-09-05 17:34:40 +02:00
florent.teppe
3a62ef3a99 Store added storespecialization to cmakelist, and removed the captial first letter 2022-09-05 17:34:40 +02:00
florent.teppe
0d85e7db7d Store: moved all the template specialization to its own heaper file, included where it's needed
in the esm store a function is defined in the cpp file to not rely on the knowledge of store.hpp in the header file
2022-09-05 17:34:22 +02:00
florent.teppe
0a0b301cc4 ESM Store: no more automatic function implementation that suppose a mId member
All the ESM3 store will continue to work the same, used a macro to quickly define the different functions
2022-09-05 17:33:17 +02:00
florent.teppe
db2b4600aa ESM Store: removed a lot of declarations that became useless
the default implementation of the template<> get() threw a reuntime error, when it is a compile time issue
now all the implementations are in the cpp file
2022-09-05 17:32:56 +02:00
florent.teppe
6467e48be8 ESMStore: greatly simplified the store declaration with a macro 2022-09-05 17:32:56 +02:00
florent.teppe
a4c1bff03d ESMStore: no longer necessary to include the type definitions in the header
For now there still needs to declare all the getters, but a macro may make that easier, or an different method entierly
2022-09-05 17:32:56 +02:00
elsid
e2d566b89d
Store changed tiles in TileCachedRecastMeshManager 2022-09-05 11:49:39 +02:00
psi29a
52ca14d881 Merge branch 'cast_spell' into 'master'
Minor refactor of CastSpell

See merge request OpenMW/openmw!2365
2022-09-04 19:01:50 +00:00
Evil Eye
06d6de50e6 Remove redundant store lookups 2022-09-04 15:42:40 +02:00
Evil Eye
325081dc07 Reuse CastSpell for explosions 2022-09-04 15:09:31 +02:00
Evil Eye
8d66b2e75d Remove redundant params 2022-09-04 14:51:19 +02:00
Evil Eye
4eafe3696c Move explodeSpell out of World 2022-09-04 14:01:36 +02:00
psi29a
647b22e175 Merge branch 'DistantLOD' into 'master'
Support for TES distant LOD

See merge request OpenMW/openmw!1861
2022-09-04 11:36:07 +00:00
psi29a
71cafeae38 Merge branch 'i_like_to_dance_close_to_the_explosion' into 'master'
Always create touch explosions for non-actors

Closes #5714

See merge request OpenMW/openmw!2364
2022-09-04 07:44:23 +00:00
psi29a
10b500da82 Merge branch 'we-use-c++-11-now' into 'master'
Eliminate &thing[0] pattern

See merge request OpenMW/openmw!2361
2022-09-04 07:43:46 +00:00
psi29a
a247bba981 Merge branch 'damage_over_time' into 'master'
Keep showing NPC health while dealing damage

Closes #6427

See merge request OpenMW/openmw!2362
2022-09-03 21:01:11 +00:00
Evil Eye
bd4322360d Always create touch explosions for non-actors 2022-09-03 22:43:29 +02:00
unknown
d5b42bc843 Reflect non-harmful effects as well 2022-09-03 20:02:58 +02:00
unknown
f68e7ce0b5 Keep showing NPC health while dealing damage 2022-09-03 19:49:59 +02:00
Cédric Mocquillon
83ee25711e Use the pattern according to the esm version 2022-09-03 18:55:06 +02:00
Cédric Mocquillon
6a3d27ce82 Add a dictionary to retrieve the LOD mesh name of a mesh cache 2022-09-03 18:52:27 +02:00
AnyOldName3
4e8e2e1c60 Eliminate &thing[0] pattern 2022-09-03 16:41:35 +01:00
Alexei Kotov
10ffacc82f Update saved game dialog debug messages 2022-09-03 09:08:46 +03:00
Alexei Kotov
a8e561d885 Avoid issues with saved games that have no screenshot data 2022-09-02 07:04:02 +03:00
Evil Eye
fcb820f1f7 Appease the evil spirits of C++ 2022-09-01 18:25:41 +02:00
Evil Eye
68d185ad4d Remove forward declarations used by smart pointers 2022-09-01 17:20:15 +02:00
Evil Eye
3c8943c876 Use make_unique 2022-08-31 21:16:03 +02:00
Evil Eye
f4bc06604a Use std::unique_ptr in WindowManager 2022-08-31 21:07:59 +02:00
Evil Eye
1b9da77455 Use std::unique_ptr in SpellWindow 2022-08-31 19:50:30 +02:00
Evil Eye
6d65885bd2 Use std::unique_ptr in QuickKeysMenu 2022-08-31 19:48:23 +02:00
Evil Eye
84911a300b Use std::unique_ptr in MessageBoxManager 2022-08-31 19:44:04 +02:00
Evil Eye
30d320f651 Use std::unique_ptr in MainMenu 2022-08-31 19:05:32 +02:00
Evil Eye
59fab4c9e2 Use std::unique_ptr in ItemView 2022-08-31 19:03:45 +02:00
Evil Eye
837183ec79 Use std::unique_ptr in ProxyItemModel 2022-08-31 18:49:50 +02:00
Evil Eye
fd720c0a7b Use std::unique_ptr in HUD 2022-08-31 18:03:46 +02:00
Evil Eye
b21c77a026 Use std::unique_ptr in EnchantingDialog 2022-08-31 18:02:12 +02:00
psi29a
58d08d402a Merge branch 'navigator_stats' into 'master'
Show stats for writing and reading navmesh db queue jobs

See merge request OpenMW/openmw!2346
2022-08-30 21:12:54 +00:00
psi29a
4ff7f8ddfb Merge branch 'string_viewing' into 'master'
Use string_view in yet more places

See merge request OpenMW/openmw!2348
2022-08-30 21:12:11 +00:00
psi29a
fab5236fcd Merge branch 'fix_ai_wander' into 'master'
Limit AiWander destination by wander distance (#6937)

Closes #6937

See merge request OpenMW/openmw!2353
2022-08-30 21:10:15 +00:00
elsid
709baafd12
Limit AiWander destination by wander distance
From initial actor position.

findRandomPointAroundCircle may return a position outside given range. Use
raycast to choose a different reachable point within a radius but double check
and discard if it's still outside.

Use wander radius instead of wander distance for findRandomPointAroundCircle to
have better chance for a position to be inside wander distance.
2022-08-30 20:51:36 +02:00
Andrei Kortunov
3037f190be Implement per-font resolution 2022-08-30 12:16:30 +04:00
psi29a
945448cdf1 Merge branch 'font_fixes' into 'master'
Improve built-in default fonts

See merge request OpenMW/openmw!2302
2022-08-30 07:54:20 +00:00
Andrei Kortunov
3178868cc3 Improve built-in default fonts 2022-08-30 07:54:20 +00:00
psi29a
a0029cb512 Merge branch 'load_menu' into 'master'
Enlarge character selection widget

See merge request OpenMW/openmw!2350
2022-08-30 07:43:05 +00:00
psi29a
ca90b53c30 Merge branch 'no_shiny_rocks' into 'master'
Only reflect spells that have a caster

Closes #6969

See merge request OpenMW/openmw!2349
2022-08-30 07:41:38 +00:00
Andrei Kortunov
8bac073f9c Enlarge character selection menu to fit long character or class names 2022-08-28 21:35:11 +04:00
Evil Eye
7729ef2e5b Only reflect spells that have a caster 2022-08-28 17:42:55 +02:00
Evil Eye
fb9bc5f535 Use string_view in Fallback::Map 2022-08-28 17:20:49 +02:00
Evil Eye
2222b47e3d Make Settings::Manager::getString return a reference 2022-08-28 16:38:11 +02:00
Evil Eye
dfcd34372d Use more string_view 2022-08-28 15:06:31 +02:00
elsid
c15848932b
Separate reading navigator stats and reporting 2022-08-28 14:52:34 +02:00
Evil Eye
d2a80cf112 Use unique_ptr in MWGui::DialogueWindow 2022-08-28 11:35:39 +02:00
Evil Eye
534994b42a Use more string_view in the character controller 2022-08-27 13:47:15 +02:00
Evil Eye
19bd2f3c3d Use more string_view and const string& 2022-08-27 13:07:59 +02:00
psi29a
d2d2282af5 Merge branch 'null_terminated' into 'master'
Improve format workaround and add unit tests

See merge request OpenMW/openmw!2338
2022-08-26 19:43:57 +00:00
Evil Eye
02bbb0be45 Improve format workaround and add unit tests 2022-08-26 19:43:57 +00:00
Joshua Barretto
df7d2e46c0 Added a uniform to indicate whether rendering is occurring in a reflection 2022-08-25 22:34:50 +01:00
Evil Eye
ac84027b90 Unify soulgems and restore soul text 2022-08-25 21:37:20 +02:00
psi29a
e46be1c220 Merge branch 'rm_get_poly_height_status' into 'master'
Do not check getPolyHeight status (#6964)

Closes #6964

See merge request OpenMW/openmw!2334
2022-08-25 08:55:01 +00:00
psi29a
c260a0d4c2 Merge branch 'string_me_along' into 'master'
Yet another string_view MR

See merge request OpenMW/openmw!2333
2022-08-25 08:53:28 +00:00
elsid
948e2f5db9
Do not use collision shapes with visual only collision to generate navmesh
These collision shapes are not used for actors movement physics simulation.
2022-08-25 00:56:03 +02:00
elsid
ab1ddc690e
Do not check getPolyHeight status
It may fail in some cases depending on a platform without obvious reason.
2022-08-24 23:30:36 +02:00
Evil Eye
4e2e5ad002 Revert format change and ensure string_view args are null-terminated 2022-08-24 23:10:05 +02:00
Evil Eye
1d21330fcc Return string_view from getGameSettingString 2022-08-24 22:16:03 +02:00
jvoisin
e0dbe976bc Merge branch 'qt_signalslot_syntax_update' into 'master'
Migrate to functor-based Qt signal-slot connection syntax

Closes #6948

See merge request OpenMW/openmw!2332
2022-08-24 19:01:35 +00:00
Evil Eye
0cded25033 Remove various string copies 2022-08-24 20:38:52 +02:00
Evil Eye
0df45a90b3 Use string_view in the remaining Class methods and push string_views closer to the MyGUI boundary 2022-08-23 22:14:27 +02:00
mpeco
aa57d04b54 functor-based Qt signal-slot syntax launcher 2022-08-23 17:14:12 -03:00
mpeco
9040209046 functor-based Qt signal-slot syntax construction set: changing visibility of certain slots for connecting on external/derived classes 2022-08-23 17:14:12 -03:00
mpeco
78700eee57 functor-based Qt signal-slot syntax construction set 2022-08-23 17:14:12 -03:00
Mat
405a5c5d25 functor-based Qt signal-slot syntax wizard 2022-08-23 17:14:11 -03:00
Evil Eye
42e59878c5 Use string_view in more animation code 2022-08-23 18:25:25 +02:00
Evil Eye
262b29ed40 Use string_view in modifyBaseInventory 2022-08-23 16:59:03 +02:00
psi29a
1f5277349c Merge branch 'span' into 'master'
Replace Misc::Span by std::span

See merge request OpenMW/openmw!2324
2022-08-22 17:34:51 +00:00
psi29a
9c24d6b390 Merge branch 'ci_starts_with' into 'master'
Replace ciCompareLen with ciStartsWith where possible

See merge request OpenMW/openmw!2325
2022-08-22 17:34:03 +00:00
psi29a
f1e95ad615 Merge branch 'scroll_indices' into 'master'
Properly transform item ID to enchantment ID

Closes #6959

See merge request OpenMW/openmw!2328
2022-08-22 17:18:15 +00:00
Evil Eye
2b9d475e50 Fix #6959 2022-08-22 17:44:49 +02:00
Evil Eye
150d1840d6 Use more string_view and const string& 2022-08-22 16:55:53 +02:00
elsid
5dc612aa54
Replace ciCompareLen with ciStartsWith where possible
`ciCompareLen(a, b, b.size()) == 0` expression is an equivalent of checking for
equality of `a` prefix with size `b.size()` with `b`.

`ciCompareLen(a, b, a.size()) == 0` is also the same thing but `a` is a prefix
`b` should start with.
2022-08-22 09:32:22 +02:00
elsid
e4a254deb7
Replace Misc::Span by std::span 2022-08-21 23:53:27 +02:00
psi29a
bf0865d03d Merge branch 'cherry-pick-0dacbaf31a5e0703c49eead6d6a977a28ec299f3' into 'master'
ActionManager::toggleMainMenu() should close PostProcessor HUD

See merge request OpenMW/openmw!2305
2022-08-21 20:16:36 +00:00
psi29a
36fbef1048 Merge branch 'apple-silicon-arm-build' into 'master'
Get build working on Apple Silicon

See merge request OpenMW/openmw!2286
2022-08-21 20:15:01 +00:00
psi29a
0889635dc7 Merge branch 'cherry-pick-31f0ef45d2bb53e0969962f23eb29350465993dd' into 'master'
Show a message if player attempts to access postprocessor hud when postprocessing is disabled.

See merge request OpenMW/openmw!2306
2022-08-21 20:13:13 +00:00
psi29a
5aa1ab2c62 Merge branch 'clean_includes' into 'master'
Cleanup includes

See merge request OpenMW/openmw!2307
2022-08-21 20:12:41 +00:00
psi29a
2a2268ea8b Merge branch 'optimize_navigator_update' into 'master'
Optimize navigator per frame update

See merge request OpenMW/openmw!2308
2022-08-21 20:12:30 +00:00
psi29a
f36e13444e Merge branch 'font_loading' into 'master'
Cleanup fonts loading

See merge request OpenMW/openmw!2309
2022-08-21 20:11:02 +00:00
psi29a
857dca058b Merge branch 'fix_memory_leak' into 'master'
Fix memory leak on cell loading

See merge request OpenMW/openmw!2318
2022-08-21 20:07:23 +00:00
psi29a
7c899364af Merge branch 'consistently_hostile' into 'master'
Clear the magic queue when unloading actors

Closes #6954

See merge request OpenMW/openmw!2317
2022-08-21 20:05:46 +00:00
psi29a
aa8eba239a Merge branch 'animation_view' into 'master'
Use string_view in animation code

See merge request OpenMW/openmw!2321
2022-08-21 20:05:00 +00:00
psi29a
a99c78c85f Merge branch 'animation_osg_ref_ptr' into 'master'
Avoid using owning raw pointer

See merge request OpenMW/openmw!2322
2022-08-21 20:04:38 +00:00
elsid
1e739ec741
Use std::unique_ptr to manage dialogs lifetime 2022-08-21 21:04:21 +02:00
elsid
838d75a2e2
Avoid using owning raw pointer 2022-08-21 21:00:29 +02:00
elsid
84944a7530
Store RefData::mBaseNode as osg::ref_ptr
Direct leak of 16197408 byte(s) in 56241 object(s) allocated from:
    #0 0x5572356d4d42 in operator new(unsigned long) (/home/elsid/dev/openmw/build/clang/asan/openmw+0xae0d42)
    #1 0x557236938196 in (anonymous namespace)::addObject(MWWorld::Ptr const&, MWWorld::World const&, std::__1::vector<ESM::RefNum, std::__1::allocator<ESM::RefNum> > const&, MWPhysics::PhysicsSystem&, MWRender::RenderingManager&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:119:42
    #2 0x55723692e51b in MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7::operator()(MWWorld::Ptr const&) const /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:913:62
    #3 0x55723692e51b in void (anonymous namespace)::InsertVisitor::insert<MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7>(MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7&&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:230:21
    #4 0x55723692e51b in MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:913:23
    #5 0x55723692d451 in MWWorld::Scene::loadCell(MWWorld::CellStore*, Loading::Listener*, bool, osg::Vec3f const&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:449:9
    #6 0x5572369299f5 in MWWorld::Scene::changeCellGrid(osg::Vec3f const&, int, int, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:612:17
    #7 0x557236928521 in MWWorld::Scene::update(float) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:315:13
    #8 0x5572368d4c98 in MWWorld::World::update(float, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/worldimp.cpp:1833:22
    #9 0x557236ebbb72 in OMW::Engine::frame(float) /home/elsid/dev/openmw/apps/openmw/engine.cpp:418:25
    #10 0x557236ed250a in OMW::Engine::go() /home/elsid/dev/openmw/apps/openmw/engine.cpp:1102:14
    #11 0x557236eb621a in runApplication(int, char**) /home/elsid/dev/openmw/apps/openmw/main.cpp:228:17
    #12 0x55723774d622 in wrapApplication(int (*)(int, char**), int, char**, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, bool) /home/elsid/dev/openmw/components/debug/debugging.cpp:328:19
    #13 0x557236eb651f in main /home/elsid/dev/openmw/apps/openmw/main.cpp:240:12
    #14 0x7fbf58a3f2cf  (/usr/lib/libc.so.6+0x232cf) (BuildId: e637217a46491314667a7a37b2155cb07afc1a40)

Direct leak of 396288 byte(s) in 1376 object(s) allocated from:
    #0 0x5572356d4d42 in operator new(unsigned long) (/home/elsid/dev/openmw/build/clang/asan/openmw+0xae0d42)
    #1 0x557236938196 in (anonymous namespace)::addObject(MWWorld::Ptr const&, MWWorld::World const&, std::__1::vector<ESM::RefNum, std::__1::allocator<ESM::RefNum> > const&, MWPhysics::PhysicsSystem&, MWRender::RenderingManager&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:119:42
    #2 0x55723692e51b in MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7::operator()(MWWorld::Ptr const&) const /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:913:62
    #3 0x55723692e51b in void (anonymous namespace)::InsertVisitor::insert<MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7>(MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7&&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:230:21
    #4 0x55723692e51b in MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:913:23
    #5 0x55723692d451 in MWWorld::Scene::loadCell(MWWorld::CellStore*, Loading::Listener*, bool, osg::Vec3f const&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:449:9
    #6 0x5572369299f5 in MWWorld::Scene::changeCellGrid(osg::Vec3f const&, int, int, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:612:17
    #7 0x557236936eb2 in MWWorld::Scene::changeToExteriorCell(ESM::Position const&, bool, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:888:9
    #8 0x55723689a5ac in MWWorld::World::changeToExteriorCell(ESM::Position const&, bool, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/worldimp.cpp:1003:22
    #9 0x5572368c249d in MWWorld::World::changeToCell(ESM::CellId const&, ESM::Position const&, bool, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/worldimp.cpp:1014:13
    #10 0x557236e9bbce in MWState::StateManager::loadGame(MWState::Character const*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/statemanagerimp.cpp:545:52
    #11 0x557236e998db in MWState::StateManager::loadGame(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/statemanagerimp.cpp:377:17
    #12 0x557236ed18fb in OMW::Engine::go() /home/elsid/dev/openmw/apps/openmw/engine.cpp:1066:24
    #13 0x557236eb621a in runApplication(int, char**) /home/elsid/dev/openmw/apps/openmw/main.cpp:228:17
    #14 0x55723774d622 in wrapApplication(int (*)(int, char**), int, char**, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, bool) /home/elsid/dev/openmw/components/debug/debugging.cpp:328:19
    #15 0x557236eb651f in main /home/elsid/dev/openmw/apps/openmw/main.cpp:240:12
    #16 0x7fbf58a3f2cf  (/usr/lib/libc.so.6+0x232cf) (BuildId: e637217a46491314667a7a37b2155cb07afc1a40)
2022-08-21 20:58:37 +02:00
unknown
206711876d Address feedback 2022-08-21 19:43:29 +02:00
elsid
3057fa6bee
Remove redundant components/esm/records.hpp include 2022-08-21 19:08:30 +02:00
unknown
827a2f0b77 Use string_view in animation code 2022-08-21 18:53:38 +02:00
Evil Eye
443420ea60 CI compare cells 2022-08-21 14:46:13 +02:00
psi29a
5ed9764f3b Merge branch 'effect_indices' into 'master'
Preserve effect indices when applying AoE and targeted spells

Closes #6957

See merge request OpenMW/openmw!2315
2022-08-21 12:03:43 +00:00
psi29a
8ec8e733a1 Merge branch 'unique_summons' into 'master'
Mark summon effects as applied if they have spawned a creature

Closes #6955

See merge request OpenMW/openmw!2316
2022-08-21 12:02:38 +00:00
Evil Eye
afcbb3cb5e Clear the magic queue when unloading actors 2022-08-21 13:33:21 +02:00
Evil Eye
a547608289 Preserve effect indices when applying AoE and targeted spells 2022-08-21 12:44:07 +02:00
Evil Eye
8b02c17ad4 Mark summon effects as applied if they have spawned a creature 2022-08-21 12:41:45 +02:00
Andrei Kortunov
9e1ab590f1 Cleanup fonts loading 2022-08-21 13:19:04 +04:00
psi29a
4078f19c74 Merge branch 'SHADER_HOT_RELOAD' into 'master'
Shaders: Hot reload, togglable by lua debug command

See merge request OpenMW/openmw!2238
2022-08-21 09:08:27 +00:00
elsid
e1bed86d7e
Do single navigator update per frame
Primarily for crossing cell border case. Each Navigator::update call has a cost.
Doing it multiple times per frame increased frame duration on cell loading.

Call Navigator::wait only when cell has changed but do not use
Scene::hasCellChanged because it doesn't always indicates it.
2022-08-20 19:15:55 +02:00
AnyOldName3
17c1053777 Validate near and far clip distances 2022-08-20 16:14:22 +01:00
Mads Buvik Sandvei
5863790c74 Show a message if player attempts to access postprocessor hud when postprocessing is disabled 2022-08-20 16:33:33 +02:00
Mads Buvik Sandvei
642d0ad631 ActionManager::toggleMainMenu() should close PostProcessor HUD. 2022-08-20 16:32:48 +02:00
elsid
226f12528b
Remove redundant .cpp file 2022-08-19 22:06:59 +02:00
elsid
2a79a8074a
Use forward declarations 2022-08-19 22:05:15 +02:00
elsid
73f885db0e
Cleanup includes 2022-08-19 22:05:15 +02:00
elsid
b3882777ab
Cleanup opencs includes 2022-08-19 19:25:03 +02:00
elsid
bf1f4f2117
Mark private template functions defined in cpp as inline 2022-08-19 19:17:21 +02:00
psi29a
ab2931223e Merge branch 'cleanup_openmw_includes_2' into 'master'
Cleanup openmw class and mechanics includes

See merge request OpenMW/openmw!2301
2022-08-19 14:53:00 +00:00
Kindi
da4a72ab19 Sun Damage for QuasiExt 2022-08-19 14:51:52 +00:00
elsid
a66c095ec3
Cleanup openmw class and mechanics includes 2022-08-19 15:46:39 +02:00
psi29a
9761ff14f9 Merge branch 'cleanup_openmw_lua_includes' into 'master'
Cleanup openmw lua includes

See merge request OpenMW/openmw!2293
2022-08-19 13:34:07 +00:00
psi29a
7bb1856b74 Merge branch 'font_fixes' into 'master'
Font fixes

See merge request OpenMW/openmw!2297
2022-08-18 12:53:37 +00:00
Andrei Kortunov
2cd2b42e33 Improve handling of larger font size 2022-08-18 13:29:12 +04:00
Andrei Kortunov
c3d3f3140b Allow to change font settings in the launcher 2022-08-18 13:29:12 +04:00
Alexei Kotov
d458894868 Make getWeaponDrawn return 1 only when the weapon is attached (bug #4816) 2022-08-18 05:04:51 +03:00
elsid
552301c8fb
Cleanup openmw lua includes 2022-08-17 23:47:30 +02:00