florent.teppe
f3d5f6345e
Fixed large lambdas that affected readability.
2023-02-04 17:16:42 +01:00
florent.teppe
1caed2de2a
Applies some review comments.
...
Proper visit for ESM::CellVariant
Fixed MWWorldCell constructor
2023-02-04 17:09:54 +01:00
Evil Eye
31b2112e4a
Don't lowerCase twice when getting globals
2023-02-01 18:15:49 +01:00
florent.teppe
4e7cde5d72
applied some review changes.
...
crashfix tests
2023-01-30 20:49:34 +01:00
glassmancody.info
897ee702d1
move water normal to vfs
2023-01-29 11:14:08 -08:00
florent.teppe
144e0197fb
fix charge int + struct vs class mismatch
2023-01-29 12:27:41 +01:00
florent.teppe
ebfee18e35
implements std::visit for CellVariant, fixes struct vs class forward decl
2023-01-29 11:28:39 +01:00
florent.teppe
0723c32428
flags no longer bitfield
2023-01-29 10:59:39 +01:00
florent.teppe
aa29f86efe
fixed struct vs class.
2023-01-29 10:59:39 +01:00
fteppe
808c7367c9
Fix compile
2023-01-29 10:54:21 +01:00
florent.teppe
9054722f4a
std::visit everywhere!
2023-01-28 19:21:13 +01:00
florent.teppe
f9da66e9ee
Greatly improved how the variant on MWWorld::CellRef works
2023-01-28 18:57:55 +01:00
florent.teppe
216ca71149
Applied review comments
...
getEditorName => getNameId
restored cosntructor in CoordinateConverter
2023-01-28 12:14:00 +01:00
florent.teppe
e6e27413d9
gives MWWorld::CellRef the MWWorld::Cell treatment
...
MWWorld::CellRef now has a variant, and datas that are part of the intersection of both ESM4::Reference and ESM::CellRef are part of MWWorld::CellRef
For ESM4 most data isn't filled in, so it returns default values.
2023-01-27 19:40:45 +01:00
florent.teppe
23614ae2ae
Renamed esm3esm4bridge => esmbridge
2023-01-27 18:40:15 +01:00
florent.teppe
5037dcf9bc
Fixes a crash on launch and some compile issue
...
also uses std::visit in cellstore comparison to avoid missing combinasion
split loadrefs in loadref of ESM4 and ESM3.
2023-01-27 16:41:00 +01:00
florent.teppe
cb8cdd8831
ESM::CellVariant aans MWWorld:Cell now take reference in constructor: signals that nullptr isn't accepted.
...
also applied other review comments.
2023-01-27 14:07:50 +01:00
florent.teppe
531e55e04c
Better handling of the esm3 vs esm4 cell problem
...
Common attribute are in one structure that has two constructors, one for ESM3 vs ESM4 Cell
Mood part of MWWorld::Cell
2023-01-27 13:39:39 +01:00
florent.teppe
6d25d4bc13
It loads cells and palce sstatics in them
...
Many missing meshes, no lights etc... But can coc into interior cells and see them.
2023-01-26 22:37:32 +01:00
florent.teppe
3515c8e61a
Static references are created as refcells, nothing displayed yet.
2023-01-26 22:37:32 +01:00
florent.teppe
c896a2ca48
Crashfix on launch
2023-01-26 22:37:32 +01:00
florent.teppe
0018bcf7de
Should make cellvariant safer to use.
...
Hopefully clang tidy agrees.
2023-01-26 22:37:32 +01:00
florent.teppe
562e129bd0
encapsulations of esm3 cell and esm4 cells.
2023-01-26 22:37:31 +01:00
florent.teppe
08b68fcd48
Cannot load a cell yet, but getting more necessary parts in
2023-01-26 22:36:11 +01:00
florent.teppe
cddf6f29d6
Nothing can be loaded yet. Just foundations.
2023-01-26 22:36:11 +01:00
Evil Eye
7ca25e6467
Fix more case issues with cells
2023-01-25 20:59:10 +01:00
fteppe
889de35b99
fix coc search extbyname
2023-01-23 22:49:01 +01: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
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
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
3780033837
Reverts Cell name to a string
2023-01-21 18:39:42 +01: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
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
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
Petr Mikheev
2b4e613522
Add missing initializer in mwworld/worldmodel.cpp ( fixes #7135 )
2023-01-08 21:55:42 +01: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
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
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
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
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
elsid
755067f0f3
Remove redundant ESM::RefId member functions
2022-12-30 00:32:47 +01:00