1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-21 06:23:53 +00:00
Commit graph

19516 commits

Author SHA1 Message Date
florent.teppe
31a14952b7 no more getIdType, only setIdType 2022-09-07 18:45:15 +02:00
Alexei Kotov
81c78f5477 Keep savegame screenshots up-to-date 2022-09-07 16:18:33 +03:00
Alexei Kotov
0d3a1470c9 Fix double quote marks 2022-09-07 16:12:26 +03:00
psi29a
912a4d69ee Merge branch 'reuse_simulations_buffer' into 'master'
Reuse physics simulations buffer (#6588)

Closes #6588

See merge request OpenMW/openmw!2374
2022-09-07 10:30:59 +00:00
elsid
277211c5b4
Reuse physics simulations buffer
To avoid redundant allocations.

Use 2 buffers to make sure there is no overlap between main and the background
threads.
2022-09-07 03:06:59 +02:00
florent.teppe
e961ac6f7c function doesn't need to return int 2022-09-06 23:30:51 +02:00
florent.teppe
b1d5d604be various fixes
fixed naming convention
replaced std::string by string_view when possible
removed unused function and member varaible
replaced type::value by type_v
set default destructor in cpp
function getTypeIndex => getnextindex
2022-09-06 23:10:58 +02:00
elsid
180d609e0d
Check "wait until min distance to player" only for requiredTilesPresent wait condition
allJobsDone should wait even if "wait until min distance to player" is 0.
2022-09-06 21:51:48 +02:00
elsid
955db8f825
Call Navigator::setWorldspace once per changing cell 2022-09-06 21:51:48 +02:00
elsid
204ab6fea3
Use version instead of generation and revision for recast mesh 2022-09-06 21:51:48 +02:00
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
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
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
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
florent.teppe
db2b4600aa ESM Store: removed a lot of declarations that became useless
the default implementation of the template<> get() threw a reuntime error, when it is a compile time issue
now all the implementations are in the cpp file
2022-09-05 17:32:56 +02:00
florent.teppe
6467e48be8 ESMStore: greatly simplified the store declaration with a macro 2022-09-05 17:32:56 +02:00
florent.teppe
a4c1bff03d ESMStore: no longer necessary to include the type definitions in the header
For now there still needs to declare all the getters, but a macro may make that easier, or an different method entierly
2022-09-05 17:32:56 +02:00
elsid
e2d566b89d
Store changed tiles in TileCachedRecastMeshManager 2022-09-05 11:49:39 +02:00
psi29a
52ca14d881 Merge branch 'cast_spell' into 'master'
Minor refactor of CastSpell

See merge request OpenMW/openmw!2365
2022-09-04 19:01:50 +00:00
Evil Eye
06d6de50e6 Remove redundant store lookups 2022-09-04 15:42:40 +02:00
Evil Eye
325081dc07 Reuse CastSpell for explosions 2022-09-04 15:09:31 +02:00
Evil Eye
8d66b2e75d Remove redundant params 2022-09-04 14:51:19 +02:00
Evil Eye
4eafe3696c Move explodeSpell out of World 2022-09-04 14:01:36 +02:00
psi29a
647b22e175 Merge branch 'DistantLOD' into 'master'
Support for TES distant LOD

See merge request OpenMW/openmw!1861
2022-09-04 11:36:07 +00:00
psi29a
71cafeae38 Merge branch 'i_like_to_dance_close_to_the_explosion' into 'master'
Always create touch explosions for non-actors

Closes #5714

See merge request OpenMW/openmw!2364
2022-09-04 07:44:23 +00:00
psi29a
10b500da82 Merge branch 'we-use-c++-11-now' into 'master'
Eliminate &thing[0] pattern

See merge request OpenMW/openmw!2361
2022-09-04 07:43:46 +00:00
psi29a
a247bba981 Merge branch 'damage_over_time' into 'master'
Keep showing NPC health while dealing damage

Closes #6427

See merge request OpenMW/openmw!2362
2022-09-03 21:01:11 +00:00
Evil Eye
bd4322360d Always create touch explosions for non-actors 2022-09-03 22:43:29 +02:00
unknown
d5b42bc843 Reflect non-harmful effects as well 2022-09-03 20:02:58 +02:00
unknown
f68e7ce0b5 Keep showing NPC health while dealing damage 2022-09-03 19:49:59 +02:00
Cédric Mocquillon
83ee25711e Use the pattern according to the esm version 2022-09-03 18:55:06 +02:00
Cédric Mocquillon
6a3d27ce82 Add a dictionary to retrieve the LOD mesh name of a mesh cache 2022-09-03 18:52:27 +02:00
AnyOldName3
4e8e2e1c60 Eliminate &thing[0] pattern 2022-09-03 16:41:35 +01:00
Alexei Kotov
10ffacc82f Update saved game dialog debug messages 2022-09-03 09:08:46 +03:00
Alexei Kotov
a8e561d885 Avoid issues with saved games that have no screenshot data 2022-09-02 07:04:02 +03:00
Evil Eye
fcb820f1f7 Appease the evil spirits of C++ 2022-09-01 18:25:41 +02:00
Evil Eye
68d185ad4d Remove forward declarations used by smart pointers 2022-09-01 17:20:15 +02:00
Evil Eye
3c8943c876 Use make_unique 2022-08-31 21:16:03 +02:00
Evil Eye
f4bc06604a Use std::unique_ptr in WindowManager 2022-08-31 21:07:59 +02:00
Evil Eye
1b9da77455 Use std::unique_ptr in SpellWindow 2022-08-31 19:50:30 +02:00
Evil Eye
6d65885bd2 Use std::unique_ptr in QuickKeysMenu 2022-08-31 19:48:23 +02:00
Evil Eye
84911a300b Use std::unique_ptr in MessageBoxManager 2022-08-31 19:44:04 +02:00
Evil Eye
30d320f651 Use std::unique_ptr in MainMenu 2022-08-31 19:05:32 +02:00
Evil Eye
59fab4c9e2 Use std::unique_ptr in ItemView 2022-08-31 19:03:45 +02:00
Evil Eye
837183ec79 Use std::unique_ptr in ProxyItemModel 2022-08-31 18:49:50 +02:00
Evil Eye
fd720c0a7b Use std::unique_ptr in HUD 2022-08-31 18:03:46 +02:00
Evil Eye
b21c77a026 Use std::unique_ptr in EnchantingDialog 2022-08-31 18:02:12 +02:00
psi29a
58d08d402a Merge branch 'navigator_stats' into 'master'
Show stats for writing and reading navmesh db queue jobs

See merge request OpenMW/openmw!2346
2022-08-30 21:12:54 +00:00
psi29a
4ff7f8ddfb Merge branch 'string_viewing' into 'master'
Use string_view in yet more places

See merge request OpenMW/openmw!2348
2022-08-30 21:12:11 +00:00
psi29a
fab5236fcd Merge branch 'fix_ai_wander' into 'master'
Limit AiWander destination by wander distance (#6937)

Closes #6937

See merge request OpenMW/openmw!2353
2022-08-30 21:10:15 +00:00
elsid
709baafd12
Limit AiWander destination by wander distance
From initial actor position.

findRandomPointAroundCircle may return a position outside given range. Use
raycast to choose a different reachable point within a radius but double check
and discard if it's still outside.

Use wander radius instead of wander distance for findRandomPointAroundCircle to
have better chance for a position to be inside wander distance.
2022-08-30 20:51:36 +02:00
Andrei Kortunov
3037f190be Implement per-font resolution 2022-08-30 12:16:30 +04:00
psi29a
945448cdf1 Merge branch 'font_fixes' into 'master'
Improve built-in default fonts

See merge request OpenMW/openmw!2302
2022-08-30 07:54:20 +00:00
Andrei Kortunov
3178868cc3 Improve built-in default fonts 2022-08-30 07:54:20 +00:00
psi29a
a0029cb512 Merge branch 'load_menu' into 'master'
Enlarge character selection widget

See merge request OpenMW/openmw!2350
2022-08-30 07:43:05 +00:00
psi29a
ca90b53c30 Merge branch 'no_shiny_rocks' into 'master'
Only reflect spells that have a caster

Closes #6969

See merge request OpenMW/openmw!2349
2022-08-30 07:41:38 +00:00
Andrei Kortunov
8bac073f9c Enlarge character selection menu to fit long character or class names 2022-08-28 21:35:11 +04:00
Evil Eye
7729ef2e5b Only reflect spells that have a caster 2022-08-28 17:42:55 +02:00
Evil Eye
fb9bc5f535 Use string_view in Fallback::Map 2022-08-28 17:20:49 +02:00
Evil Eye
2222b47e3d Make Settings::Manager::getString return a reference 2022-08-28 16:38:11 +02:00