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
florent.teppe
445d91d85d
adds missing include
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
psi29a
9472998bad
Merge branch 'ori' into 'master'
...
Implement the full version of the ori command
See merge request OpenMW/openmw!2368
2022-09-05 17:55:21 +00:00
psi29a
8b19424cf6
Merge branch 'navigator_changed_tiles' into 'master'
...
Store changed tiles in TileCachedRecastMeshManager
See merge request OpenMW/openmw!2367
2022-09-05 17:54:42 +00:00
jvoisin
9f62f0c292
Reserve the output buffer in lowerCaseUtf8
...
Since lowercasing an utf8 string shouldn't change its size very much,
it does make sense to reserve the output buffer, to reduce
memory allocations.
2022-09-05 19:46:39 +02: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
3cbd0e0762
Fixed naming convention
2022-09-05 17:35:36 +02:00
florent.teppe
9e40550a4a
improved readability of esm3Recname and esm4Recname
2022-09-05 17:35:36 +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