florent.teppe
214cb8d8fe
Only loads ESM4::reference when they are needed
...
and only those from the cell they are a part of.
The cell stores where it starts in the file for quick access later.
2023-03-04 23:40:41 +01:00
elsid
3975003778
Use ESM::RefId as key for Globals::mVariables
2023-03-03 15:44:18 +01:00
elsid
dfcea389be
Add helper functions for string comparison to RefId
2023-03-03 00:39:55 +01:00
Alexei Dobrohotov
540fa00f12
Don't use ESM4::Lighting fog power as fog density
2023-02-27 05:50:58 +03:00
Petr Mikheev
1c2f24d1ca
Remove unused searchInContainers in WorldModel::getPtr
2023-02-23 01:57:23 +01:00
Petr Mikheev
47b7c71c73
Remove unused functions
2023-02-23 01:57:23 +01:00
Cédric Mocquillon
6e23ad82d5
Load esm files from vfs
2023-02-19 21:58:19 +01:00
elsid
b5ec584be2
Replace ESM::RefId::sEmpty by default constructed RefId where possible
...
Static const is only required to provide a reference or a pointer when it is not
possible with default constructed temporary.
2023-02-18 01:07:15 +01:00
elsid
996153f78d
Convert RefId to class
2023-02-15 23:20:44 +01:00
Evil Eye
8cabc1bf3b
Use the teleported Ptr to determine if water walking should be canceled
2023-02-13 16:38:39 +01:00
Alexei Kotov
0485b23b5f
Reimplement region for TES3 cells
2023-02-11 09:36:15 +03:00
elsid
080700f8fe
Name all custom ESM format versions and add tests
2023-02-10 19:54:15 +01:00
psi29a
944931c9bf
Merge branch 'load_esm4_lights' into 'master'
...
Adds ESM4 light into ESM4 Cells
See merge request OpenMW/openmw!2692
2023-02-07 16:50:10 +00:00
florent.teppe
dc961e3189
Adds the light into the scene.
...
Common struct for ESM3 and ESM4 light
2023-02-07 10:07:59 +01:00
elsid
f09789002a
Define hardcoded global variable names as constants
2023-02-07 00:47:34 +01:00
florent.teppe
a71a86e64a
Load light models in the engine. Doesn't emit light
2023-02-06 20:22:17 +01:00
psi29a
4032c447e9
Merge branch 'load-ESM4-Cell' into 'master'
...
Can load and coc into an interrior oblivion cell
See merge request OpenMW/openmw!2647
2023-02-06 08:56:23 +00:00
psi29a
8b0e55dd5f
Merge branch 'remove-water-walking-teleport-underwater' into 'master'
...
teleporting to an underwater marked location will remove water walking spell effects from actor
Closes #7122
See merge request OpenMW/openmw!2656
2023-02-04 23:41:29 +00:00
florent.teppe
084207af64
Avoids a lot a special cases for ESM3 vs ESM4 cells.
2023-02-04 23:25:06 +01:00
James-Deciutiis
273a2ae323
teleporting to an underwater marked location will remove water walking spell effects from actor
...
fix formatting
addressing hasWaterWalking comment
refactor to address remaining comments
clean up formatter changes
adding suggested condition to if statement
move isWaterWalking check into if statement
refactor if block to see if actor needs to have water walking purged
added entry to changelog.md and authors.md
removing redundant check from if statement
Sort previous changelog entry
2023-02-04 11:30:37 -08:00
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