Evil Eye
03c791e61a
Move animation handling to NpcAnimation
2024-01-01 13:58:55 +01:00
Evil Eye
84c15344ee
Address feedback
2024-01-01 13:07:43 +01:00
Evil Eye
5bd5c84018
Replace missing NPC races and default animations
2024-01-01 13:07:43 +01:00
Alexei Kotov
876f6ea2da
Validate enchantment records (bug #7654 )
...
Clean up spell validation
Fix a flaw in spell effect tooltip code
2023-11-03 15:08:16 +03:00
Alexei Kotov
3f4591eb3b
Add movable static and ESM4 land texture stores
2023-10-27 22:53:40 +03:00
Evil Eye
23bf6ed878
Remove missing scripts from actors much like is done for items
2023-10-24 20:59:45 +02:00
Alexei Kotov
7e360df6c0
Place ESM4::Flora instances to the scene
2023-09-24 10:25:44 +03:00
Zackhasacat
3e8a1cce7c
Load ESM4 Terminal objects, add lua bindings for them
2023-08-15 06:23:38 +00:00
Petr Mikheev
957880d515
Add to ESMStore the records that are needed to render ESM4 actors; cleanup usage of records.hpp
2023-08-05 13:18:09 +02:00
Petr Mikheev
9b511fdf7a
Load ESM4 actors
2023-07-26 11:47:50 +02:00
psi29a
d8463a34d3
Merge branch 'quotes' into 'master'
...
Remove redundant quotes
See merge request OpenMW/openmw!3091
2023-06-04 11:28:14 +00:00
psi29a
d41c7bcaf4
Merge branch 'fix_esmstore_double_initialization' into 'master'
...
Fix the bug "ESMStore::setUp() is called twice" that causes duplicated objects in ESM4 cells
See merge request OpenMW/openmw!3084
2023-06-02 07:31:02 +00:00
psi29a
0bb652d7ce
Merge branch 'clickbait' into 'master'
...
Resolve Attribute GMSTs
See merge request OpenMW/openmw!3090
2023-06-02 07:30:40 +00:00
Petr Mikheev
420916327d
Fix the bug "ESMStore::setUp() is called twice" that causes duplicated objects in ESM4 cells
2023-06-01 11:58:03 +02:00
psi29a
27a879de9a
Merge branch 'tree_and_furniture' into 'master'
...
Load ESM4::Tree and ESM4::Furniture
See merge request OpenMW/openmw!3040
2023-06-01 09:15:46 +00:00
Andrei Kortunov
9001dc8f88
Remove redundant single quotes
2023-06-01 09:38:08 +04:00
Evil Eye
7b0680de5f
Resolve attribute GMST members
2023-05-31 17:02:18 +02:00
Petr Mikheev
1b669db017
Load ESM4::Tree and ESM4::Furniture
2023-05-29 18:47:27 +02:00
Evil Eye
9c60a6fa4d
Replace sSkillNameIds with ESM::Skill::mName
2023-05-29 17:56:14 +02:00
florent.teppe
d0211acf9e
Fixes bug in terrain loading + collision heightmap works
...
although terrain rendering is 100% broken right now
2023-05-29 11:32:13 +02:00
florent.teppe
c35c7b3640
ESM4::Land loaded, added to store and to land objects
...
it does not work yet. Some things are displayed, but it looks all wrong.
2023-05-29 11:31:37 +02:00
Petr Mikheev
4ed283bb15
Merge branch 'create_record_types' into 'master'
...
Allow creating Activator, Armor, Clothing, Misc, Weapon records via lua
See merge request OpenMW/openmw!2944
2023-05-25 08:00:13 +00:00
Zackhasacat
ef004e5eba
Allow creating Activator, Armor, Clothing, Misc, Weapon records via lua
2023-05-25 08:00:12 +00:00
Mads Buvik Sandvei
410e8b100a
Elsid comments
2023-05-23 19:30:29 +02:00
Mads Buvik Sandvei
9a59330561
refactor effect names in loadmgef. Added a map from effect index to non-gmst effect name for use in lua scripts.
2023-05-23 18:11:59 +02:00
Petr Mikheev
ac65246389
Speedup ESM4 cell loading; load objects from permanent cells (exterior doors in particular)
2023-05-18 00:38:41 +02:00
florent.teppe
a62e75fd19
Initial attempt at loading esm4 exteriors
2023-05-12 22:05:52 +02:00
Petr Mikheev
3546d2b3e5
Make Store<ESM4::Reference> to use FormId instead of RefId
2023-04-20 01:47:16 +02:00
Petr Mikheev
ff774d6406
Load more ESM4 records
2023-04-09 18:52:11 +02:00
elsid
86293af084
Support generated RefId as std::uint64_t
2023-03-19 17:20:48 +01:00
elsid
069d4255b9
Make ESM::RefId to be fixed size cheap to copy
...
Use std::variant. Store refId strings in unordered_set and use pointer to an
item there. Inserts to unordered_set do not invalidate pointers to values so the
pointer is always valid. Elements are not removed. Assume there is finite number
of string refIds.
2023-03-19 17:20:43 +01:00
elsid
e032214fcb
Use common info ordering implementation for engine and editor
2023-03-13 21:57:41 +01:00
elsid
0577d2751b
Set up Store<ESM::Dialogue> once
...
Store<ESM::Dialogue> is derived from DynamicStore and setUp is called for it
along with other setUp calls for stores derived from DynamicStore.
2023-03-12 15:31: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
florent.teppe
a71a86e64a
Load light models in the engine. Doesn't emit light
2023-02-06 20:22:17 +01:00
florent.teppe
3515c8e61a
Static references are created as refcells, nothing displayed yet.
2023-01-26 22:37:32 +01: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
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
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
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
fteppe
09d461a8cd
fixed Topic selected event
...
Fix rebase
2022-12-27 19:15:56 +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
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