florent.teppe
7c6471b0dc
getExteriorCellLocation() added to MWWorld::Cell
2023-05-12 23:24:36 +02:00
florent.teppe
a3bd6e7e47
ESM::ExteriorCellIndex => ESM::ExteriorCellLocation
2023-05-12 22:05:55 +02:00
florent.teppe
393357abc0
ESM::Cell::positionToCellIndex returns a ESM::ExteriorCellIndex
...
and takes a worldspace id as input
ESM::getCellSize takes a wordspace as input.
removed useless static in static inline funcs
2023-05-12 22:05:55 +02:00
florent.teppe
559830f59a
applies review comments
...
Removes ToLowercase after .serializeText
removed unused variable
!ptr => ptr == nullptr
better indentation + error message on throw
friend struct std::hash<...> useless on struct with all public fields.
2023-05-12 22:05:55 +02:00
florent.teppe
39cfe9c2fb
Removed unused variable, factorised code.
2023-05-12 22:05:55 +02:00
florent.teppe
3d06cabf6a
indexToPosition moved from world -> esm/util.hpp
2023-05-12 22:05:55 +02:00
florent.teppe
1cf0cd5628
moved mwworld/cellutils.hpp -> esm/util.hpp
2023-05-12 22:05:54 +02:00
florent.teppe
f261f59809
World::indexToPosition is modified to be less error prone.
2023-05-12 22:05:54 +02:00
florent.teppe
1fdecaaa34
seperate permanent and non permanent exterior cells.
2023-05-12 22:05:54 +02:00
florent.teppe
f731c5eadb
preloader compatible with esm4 exteriors.
2023-05-12 22:05:54 +02:00
florent.teppe
75561abfca
Factorises code and fixes preload bug.
2023-05-12 22:05:54 +02:00
florent.teppe
5648e03e9e
function to get cellsize depending on the context.
2023-05-12 22:05:54 +02:00
florent.teppe
3de08e654f
Better handling of water levels for exterior cells.
...
Especially for skyrim and it's weird water level values in exteriors.
If we don't have a valid exterior water level we use the world's water level
2023-05-12 22:05:54 +02:00
florent.teppe
56cb2a83ec
removed sDefaultWorldspace, only sDefaultWorldspaceId now.
...
sDefaultWorldspaceId is a StringRefId to be able to getvalue easily.
2023-05-12 22:05:53 +02:00
florent.teppe
141878f30d
int x, int y , ESM::RefId worldspace => ESM::ExteriorCellIndex
...
also removed the changeToExteriorCell that only took a position as input, didn't work with esm4.
2023-05-12 22:05:53 +02:00
florent.teppe
43e247d458
fixes tests
...
fix linux build + clang-tidy
2023-05-12 22:05:53 +02:00
florent.teppe
1d03b54694
maps with tuple key instead of map of map
...
instead of using a map with key as exterior and map of <int ,int >, Cell as value we use a single map with a tuple x,y,exterior as key
2023-05-12 22:05:53 +02:00
florent.teppe
d8a782425b
can actually load and teleport to esm4 exterior spaces
2023-05-12 22:05:53 +02:00
florent.teppe
eb48f8724f
change grid and preload takes the right exterior
...
also fixes some crashes
2023-05-12 22:05:53 +02:00
florent.teppe
81d9686541
crashfix dynamic exterior cells
2023-05-12 22:05:53 +02:00
florent.teppe
a62e75fd19
Initial attempt at loading esm4 exteriors
2023-05-12 22:05:52 +02:00
psi29a
242ac21b38
Merge branch 'fix_local_map_update' into 'master'
...
Update cell local map on different neighbour cells (#7140 )
See merge request OpenMW/openmw!3012
2023-05-11 12:13:35 +00:00
elsid
aa9fb33a18
Update cell local map on different neighbour cells
...
Save which neighbour cells were active when local map for a cell is rendered.
Update when intersection of currently loaded cells is different from stored. If
map was rendered when all neighbours were loaded no more updates will happen.
2023-05-11 10:41:15 +02:00
elsid
f7ebd9b9b4
Avoid old C-style cast
2023-05-11 10:27:33 +02:00
elsid
fd249b46c0
Remove redundant member function
...
mActive is public.
2023-05-11 10:27:33 +02:00
elsid
b2f7fc70a6
Remove redundant MapSegment constructor and destructor
2023-05-11 10:27:32 +02:00
elsid
d927aaad14
Avoid redundant getCell()->getGrid* calls
2023-05-11 10:26:41 +02:00
elsid
1324256440
Avoid redundant lookup
2023-05-11 10:26:39 +02:00
elsid
624ffef4fe
Reduce block nesting
2023-05-11 10:26:18 +02:00
Petr Mikheev
f3adcab9c5
Update CellStore::mMergedRefs lazily.
2023-05-11 01:00:50 +02:00
Petr Mikheev
93342af1f9
Remove CellStore::searchViaRefNum (replaced with WorldModel::getPtr)
2023-05-11 00:17:22 +02:00
Petr Mikheev
270ead937b
Remove check in cellstore.cpp that causes Lua teleport command to fail.
2023-05-11 00:17:22 +02:00
Elias Howell
bf8fafa79a
fixed some typos and spelling errors
2023-05-09 20:07:08 -04:00
Petr Mikheev
3a8a4e8bff
Revert "Replace rayTest
with convexSweepTest
MovementSolver::traceDown
. Needed to prevent teleporting down through sewer grates."
...
This reverts commit 917132e326
.
2023-05-09 01:20:02 +02:00
Alexei Kotov
4394970894
Merge branch 'gui_view' into 'master'
...
Use string_view in journal code
See merge request OpenMW/openmw!3005
2023-05-08 17:37:46 +00:00
Evil Eye
f93d41d9ce
Use string_view instead of const char*
2023-05-08 17:18:18 +02:00
Evil Eye
ad3195488b
Remove unimplemented method declaration
2023-05-08 16:57:57 +02:00
psi29a
0a8c801d66
Merge branch 'lua_getters' into 'master'
...
Rename some functions in Lua API from `aaa` to `getAaa` (for consistency with `setAaa`)
Closes #7356
See merge request OpenMW/openmw!3004
2023-05-08 10:25:27 +00:00
psi29a
753696583e
Merge branch 'trace_down' into 'master'
...
Replace `rayTest` in `MovementSolver::traceDown` with `convexSweepTest`
See merge request OpenMW/openmw!3003
2023-05-08 09:31:53 +00:00
Petr Mikheev
067df2d07e
Rename some functions in Lua API from aaa
to getAaa
(for consistency with setAaa
)
2023-05-08 00:49:06 +02:00
psi29a
1f0aede634
Merge branch 'celloverride' into 'master'
...
Fix cell overrides and remove unused, incomplete erase method
See merge request OpenMW/openmw!3001
2023-05-07 19:50:36 +00:00
Petr Mikheev
917132e326
Replace rayTest
with convexSweepTest
MovementSolver::traceDown
. Needed to prevent teleporting down through sewer grates.
2023-05-07 21:13:14 +02:00
Evil Eye
22ba0a1cf0
Improve variable names
2023-05-07 17:27:28 +02:00
Petr Mikheev
86fce41a39
Keep refnum when moving objects to/from inventory ( #6148 )
2023-05-07 17:19:44 +02:00
elsid
188de0d8d4
Merge branch 'journalcase' into 'master'
...
Remove dialogue related instances of getRefIdString
See merge request OpenMW/openmw!2999
2023-05-07 14:49:49 +00:00
elsid
6de335dd77
Pass path to startup script as std::filesystem::path
2023-05-06 13:58:39 +02:00
Evil Eye
2a48642fe3
Fix cell overrides and remove unused, incomplete erase method
2023-05-05 16:39:24 +02:00
Evil Eye
3cf0977c0b
Remove dialogue related instances of getRefIdString
2023-05-04 19:46:49 +02:00
Tobias Tribble
43544e7d30
Fixed teleport function to use rotation flags
2023-05-03 18:29:50 -05:00
elsid
c5ab0c8b73
Avoid using Settings::Manager::set* functions directly
2023-05-03 22:11:44 +02:00
elsid
258ae9d98e
Add settings index to provide lookup by category and name
2023-05-03 22:11:44 +02:00
psi29a
cdc753df70
Merge branch 'lua_refactoring' into 'master'
...
MWLua refactoring
See merge request OpenMW/openmw!2956
2023-05-02 19:48:21 +00:00
psi29a
dacbbc1d20
Merge branch 'dehardcode_steal' into 'master'
...
Remove Content file check when stealing
See merge request OpenMW/openmw!2987
2023-05-02 19:45:51 +00:00
jvoisin
5299065cad
Simplify a funny-written function
2023-05-01 21:13:15 +02:00
psi29a
83203ae4d9
Merge branch 'minor_header_cleanup_clion' into 'master'
...
Minor header cleanup
See merge request OpenMW/openmw!2991
2023-05-01 10:46:55 +00:00
psi29a
67c0138aee
Merge branch 'fix-7335-bis' into 'master'
...
OpenCS fixes the issues with the addon's saving
See merge request OpenMW/openmw!2952
2023-04-30 23:01:47 +00:00
jvoisin
c7a3f43915
Minor header cleanup
...
This has been done via CLion's "unused include directive",
set to "detect completely unused".
2023-04-30 16:26:03 +02:00
Tobias Tribble
2c887d82d0
Removed Content file check
2023-04-28 11:46:22 -05:00
Zackhasacat
c4246159af
Fix gameObject.teleport function, previously would not work with items in inventories
2023-04-27 19:37:38 +00:00
jvoisin
c752c8950f
Merge branch 'use_std_locale' into 'master'
...
make use of std::wstring_convert to replace boost::locale::conv::utf_to_utf
See merge request OpenMW/openmw!2969
2023-04-27 12:24:23 +00:00
psi29a
130fd387ea
make use of std::wstring_convert to replace boost::locale::conv::utf_to_utf
2023-04-27 12:24:22 +00:00
psi29a
3bd72e9c5d
Merge branch 'no_automagick' into 'master'
...
Add missing `sol::is_automagical : std::false_type` in magicbindings.cpp
See merge request OpenMW/openmw!2982
2023-04-26 21:51:16 +00:00
psi29a
39a40f3a73
Merge branch 'rm_ref_id_empty' into 'master'
...
Remove ESM::RefId::sEmpty
See merge request OpenMW/openmw!2981
2023-04-26 21:48:51 +00:00
Petr Mikheev
d1d1a280d0
Add missing sol::is_automagical : std::false_type
in magicbindings.cpp
2023-04-26 21:50:42 +02:00
elsid
0601d7213e
Remove ESM::RefId::sEmpty
...
This variable is only required to return empty RefId as const reference. There
is no point in doing so for a type cheap to copy.
2023-04-26 21:15:16 +02:00
Tobias Tribble
b52ab04c43
Added soulValue to creatureRecord, added documentation
2023-04-26 12:01:59 -05:00
psi29a
0cf9fe0e2e
Merge branch 'lua_casting_error' into 'master'
...
Fix crash on sol::object type mismatch in invalid Lua script
See merge request OpenMW/openmw!2975
2023-04-25 22:19:45 +00:00
psi29a
0b976232e9
Merge branch 'deprecated_qt' into 'master'
...
Fix a qt deprecation warning in cmake
See merge request OpenMW/openmw!2974
2023-04-25 21:59:16 +00:00
Petr Mikheev
31eb3e6f5d
Use typed settings storage for Lua settings
2023-04-25 23:51:37 +02:00
Petr Mikheev
003f611bdb
Remove LuaManager::Action
2023-04-25 23:51:37 +02:00
Petr Mikheev
4562b8c06b
Add headers for all .cpp
files in mwlua; move packages initilaization from LuaManager to luabindings.cpp
2023-04-25 23:24:51 +02:00
Zackhasacat
f6fb05d1ca
Add functionality for lua to view and modify ownership data for GameObjects
2023-04-25 21:20:43 +00:00
Petr Mikheev
c362b2efa6
Use LuaUtil::cast for casting sol::object to prevent crashing on type mismatch in Lua scripts.
2023-04-25 22:11:04 +02:00
jvoisin
222365b5e3
Fix a qt deprecation warning in cmake
2023-04-25 22:00:20 +02:00
Petr Mikheev
61578ca39b
Add function LuaUtil::cast
2023-04-25 21:51:05 +02:00
Bret Curtis
0db31207dc
remove remaining boost::filesystem cruft
2023-04-25 16:15:04 +02:00
psi29a
94e467caa3
Merge branch 'settings_access_bench' into 'master'
...
Run openmw_settings_access_benchmark in CI
See merge request OpenMW/openmw!2967
2023-04-25 11:42:47 +00:00
Bret Curtis
249986b6e0
pathToQString makes things shorter
2023-04-25 11:21:16 +02:00
Bret Curtis
afc4e064cb
make use of pathToUnicodeString
2023-04-25 10:34:29 +02:00
Bret Curtis
3581f1b724
fix msvc build
2023-04-25 09:08:51 +02:00
elsid
35f4bcd31e
Run openmw_settings_access_benchmark in CI
...
Add benchmarks to access 2 and 3 settings. Use settings with max memory address
distance assuming Settings::Values is single memory location object.
Use settings-default.cfg from the source code repository to initialize settings.
2023-04-24 22:30:49 +02:00
psi29a
9f4322951f
Merge branch 'use_qt_lockfile' into 'master'
...
make use of QLockFile
Closes #7345
See merge request OpenMW/openmw!2966
2023-04-24 13:34:06 +00:00
psi29a
2e1820fefd
make use of QLockFile
2023-04-24 13:34:06 +00:00
psi29a
8e8a539cb7
Merge branch 'lua_fix' into 'master'
...
Bugfix: add missing type validation in mwlua/objectvariant.hpp
See merge request OpenMW/openmw!2963
2023-04-24 12:11:14 +00:00
psi29a
406eb1f9cc
Merge branch 'replace_boost' into 'master'
...
replace boost where not needed
See merge request OpenMW/openmw!2962
2023-04-23 19:46:29 +00:00
psi29a
71aaa56ae3
replace boost where not needed
2023-04-23 19:46:29 +00:00
Petr Mikheev
073e379057
Add missing type validation in mwlua/objectvariant.hpp
2023-04-23 20:47:24 +02:00
elsid
499d086cc1
Add tests for Settings::Values
2023-04-23 15:21:58 +02:00
elsid
1fbf50fb13
Use PROJECT_SOURCE_DIR in tests
2023-04-23 15:11:17 +02:00
elsid
39e867781e
Avoid using Settings::Manager::mDefaultSettings directly
2023-04-22 21:02:16 +02:00
elsid
7a7c20d49e
Define single UpdateGuard type in a separate file
2023-04-22 13:22:07 +02:00
psi29a
675dfb9725
Merge branch 'simplify_world' into 'master'
...
Refactoring. Put ESMStore to Environment; remove `createRecord` from World.
See merge request OpenMW/openmw!2947
2023-04-21 13:28:43 +00:00
florent.teppe
b5f774ae64
fixes the issues with the addons
...
the OpenCS reference's cellId uses a string to be sure it is coherent with the cell's Id type in the editor.
2023-04-21 14:55:24 +02:00
Andrei Kortunov
6ce0d9e9b9
Localize testcells/testinteriorcells progress text
2023-04-21 09:46:02 +04:00
Petr Mikheev
f1beaa7b8c
Put ESMStore to Environment
2023-04-20 21:45:49 +02:00
Petr Mikheev
227a993b94
Remove createRecord
functions from World because the only forward the argument to ESMStore that can be used directly.
2023-04-20 21:45:49 +02:00
Petr Mikheev
90397662bc
Lua bindings for magic. Based on the work made by @bharbich in !2765 .
2023-04-20 18:48:34 +02:00
florent.teppe
5bb9bfd224
CellPreloader::preload(CellStore&
2023-04-20 16:58:19 +02:00
florent.teppe
a3a2685b9a
More MWWorld::CellStore* -> MWWorld::CellStore&
2023-04-20 16:16:17 +02:00
florent.teppe
53cc9f3614
functions return reference instead of ptr
...
because the function can never return an nullptr, we return a reference.
2023-04-20 15:55:40 +02:00