1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2026-01-04 14:43:06 +00:00
Commit graph

17533 commits

Author SHA1 Message Date
Petr Mikheev
9e168fd9cc Add Lua/LuaJit and sol3 to openmw 2021-07-09 19:27:00 +02:00
psi29a
c94339f248 Merge branch 'OpenMW_Bug6067_take3' into 'master'
Make Object Paging to ignore moved references.  (Issue #6139)

See merge request OpenMW/openmw!1001
2021-07-09 16:05:53 +00:00
psi29a
d8bed73ada Merge branch 'local_crache' into 'master'
Cache failed compilation when getting locals

Closes #6123

See merge request OpenMW/openmw!988
2021-07-08 22:16:15 +00:00
psi29a
c774a68439 Merge branch 'system_benchmark' into 'master'
Support system Google Benchmark

See merge request OpenMW/openmw!1000
2021-07-08 22:15:26 +00:00
elsid
d8cd5b361a
Hide message boxes when HUD is hidden 2021-07-08 21:14:01 +02:00
elsid
4259f7f230
Add setting to enable/disabled notification for saved screenshots 2021-07-08 21:14:01 +02:00
elsid
5103120eef
Notify about saved screenshot
Show message about saved screenshot via schedule message box. Since screenshot
saving happens not in the main thread calling messageBox directly is unsafe.
WindowManager::scheduleMessageBox delays message box showing until next update
in the main thread.
2021-07-08 21:14:01 +02:00
elsid
f7a6be053d
Stop engine work queue before destructing environment
To avoid access to null and dangling pointers from active work items on
quitting.
2021-07-08 21:14:01 +02:00
elsid
f8e02000ec
Write screenshots to file asynchronously 2021-07-08 21:13:57 +02:00
elsid
33aa4d0822
Move WriteScreenshotToFileOperation to components 2021-07-08 20:27:19 +02:00
elsid
8d2d24ce65
Store screen capture operation as osg::ref_ptr 2021-07-08 20:27:19 +02:00
psi29a
6cc5dc5bf0 Merge branch 'halp' into 'master'
Implement the help command

Closes #2780

See merge request OpenMW/openmw!1002
2021-07-07 20:49:41 +00:00
Evil Eye
eced6f2126 Implement the help command 2021-07-07 18:48:25 +02:00
psi29a
103f5943cf Merge branch 'endl' into 'master'
Remplace a ton of std::endl with \n

See merge request OpenMW/openmw!978
2021-07-07 10:42:52 +00:00
cc9cii
16e1398819 Quick solution to add logic to getNextRef() calls so that moved references are ignored. Currently it is assumed that MVRF records have been all read before the ESM reader context was saved, which is false assumption. Should resolve Issue #6139. 2021-07-07 08:18:38 +10:00
elsid
d85cbe4069
Support system Google Benchmark 2021-07-06 19:33:26 +02:00
Evil Eye
1196e0cfe6 Change disposition to work like vanilla 2021-07-06 17:03:56 +02:00
psi29a
126cf40848 Merge branch 'filter' into 'master'
Add a default filter to CS tables

See merge request OpenMW/openmw!958
2021-07-06 14:16:45 +00:00
psi29a
3c0a0ba9e1 Merge branch 'master' into 'touch_my_crank'
# Conflicts:
#   CHANGELOG.md
2021-07-06 09:18:12 +00:00
psi29a
c372c239a6 Merge branch 'master' into 'OpenCS_Bug6017'
# Conflicts:
#   CHANGELOG.md
2021-07-06 07:52:49 +00:00
psi29a
cda0c7ed44 Merge branch 'ghd' into 'master'
Great House Dagoth

See merge request OpenMW/openmw!638
2021-07-06 07:22:29 +00:00
cc9cii
ae4ddd810f More dead code removal. 2021-07-06 14:45:45 +10:00
cc9cii
ec457a09c3 Fix Npc edit widget index out of bounds due to a removed column. 2021-07-06 13:45:58 +10:00
cc9cii
f68c81e631 Merge branch 'master' into 'OpenCS_Bug6017' 2021-07-06 03:10:46 +00:00
cc9cii
4b3de46bfa Use enums in place of magic numbers. Ensure Creature and NPC cell references are always saved as persistent. 2021-07-06 12:37:02 +10:00
cc9cii
1f5b20ef7d test fix for missing refs 2021-07-06 11:43:30 +10:00
Evil Eye
796617fa0c Allow activators to be activated using telekinesis 2021-07-05 22:00:43 +02:00
Evil Eye
18f297a4e0 Allow a missing implicit argument for GetDistance 2021-07-05 18:34:09 +02:00
Evil Eye
0a15d7740a Delay physics for objects created by scripts 2021-07-05 18:34:06 +02:00
jvoisin
3925c0fecf Remplace a ton of std::endl with \n
endl is calling flush, which is really nuking performances,
and I care about esmtool's performances because I'm
using it for fuzzing.
2021-07-05 18:27:43 +02:00
psi29a
7cc4e5afa1 Merge branch 'more_magical_stamina' into 'master'
Make fatigue and magicka recalculation behave the same way

Closes #6107

See merge request OpenMW/openmw!968
2021-07-05 13:24:09 +00:00
elsid
7498a86abe
Remove redundant semicolons 2021-07-05 13:11:54 +02:00
psi29a
3588bfcb17 Merge branch 'OpenMW_Bug6067' into 'master'
Support moved references records in any order. (Issue #6067)

See merge request OpenMW/openmw!982
2021-07-05 08:20:37 +00:00
psi29a
6a4eeeb39b Merge branch 'fix_door_freeze' into 'master'
Fix slow AiPackage::getTarget calls (#6136)

Closes #6136

See merge request OpenMW/openmw!990
2021-07-05 08:17:46 +00:00
psi29a
9123db3a59 Merge branch 'fix_navmesh_update' into 'master'
Fix navmesh update on opening/closing door

See merge request OpenMW/openmw!995
2021-07-05 07:30:32 +00:00
elsid
c7c0d11cab
Trigger navmesh update when any navigator object has been updated
Set World::mShouldUpdateNavigator to true when this happens. Previously
assignment to true was missing for object rotation and moving.
2021-07-05 00:20:57 +02:00
elsid
09f9075842
Use RecastMeshBuilder once to create RecastMesh
This allows to move all data out of the object instead of copying.
2021-07-04 22:18:05 +02:00
elsid
8d1eb7e2e6
Fix slow AiPackage::getTarget calls
Assume there are no cell refs with empty ref id.
2021-07-04 14:09:11 +02:00
Evil Eye
9a7c07173d Cache failed compilation when getting locals 2021-07-04 10:58:12 +02:00
Andreas Stöckel
b1fa0e9560 Fix Avatar Preview Coordinate Transformations in the Inventory (Issues #6129, #6131) 2021-07-04 08:36:59 +00:00
cc9cii
42bcbe34de Cell references that teleport (Doors) should be placed in the "persistent" group when saving. 2021-07-04 16:18:47 +10:00
NeveHanter
6bb030aa55 Ignore actors siding with player in awarness check to allow training the sneaking or knowing whether player is detected by other actors in the siding actor line of sight 2021-07-03 13:40:36 +02:00
Evil Eye
5e4beb217a Make fatigue and magicka recalculation behave the same way 2021-07-03 10:47:26 +02:00
Dobrohotov Alexei
3cab69c389 Fix ShowMap partial match filtering (bug #6115) 2021-07-03 01:04:22 +03:00
psi29a
07c3ed16d0 Merge branch 'base64-fixes' into 'master'
Base64 fixes

Closes #6111

See merge request OpenMW/openmw!965
2021-07-02 06:27:17 +00:00
jvoisin
2cb9482893 Use a std::vector instead of a std::list in hypertextparser.cpp 2021-07-01 23:09:08 +00:00
elsid
5624fe1911
Consider path not found when there is navmesh query error
Fix a specific case when the guard at the start of the game fails to find path
due to failed getPolyHeight call that results into a partial path to the
target.
2021-06-30 20:13:27 +02:00
cc9cii
6575b95448 Support moved references (i.e. with MVRF sub-records) that do not occur at the beginning of the cell references block. 2021-06-30 15:34:40 +10:00
cc9cii
2d8dd9be32 Fix using incorrect id to search for record flags. Eliminate inefficient double-loop in saving cell references. 2021-06-30 10:46:51 +10:00
cc9cii
47ef98ca1b Clean up RefIdData code for better legibility. 2021-06-30 10:09:56 +10:00
cc9cii
f2a301653c Remove redundant mPersistent member from ESM::NPC and ESM::Creature, replaced by mRecordFlags. Fixed the editing of the persistence flag value. 2021-06-30 08:20:29 +10:00
cc9cii
2a76634f5f Moved persistence flag from references to the header flags of referenceables (e.g. Static, Weapon, etc). Editing widget is not fully working. 2021-06-29 23:25:26 +10:00
cc9cii
f6eab52a1b Added "Persistent" column to references table. 2021-06-29 19:45:02 +10:00
cc9cii
024ad3276b Partial fix for #6017. The persistence flag of the references are saved but it is not yet possible to modify it via OpenCS. 2021-06-29 19:20:01 +10:00
Evil Eye
4f264af5a9 Merge branch 'staticsload' into 'master'
Loads statics before actors II (#5379)

See merge request OpenMW/openmw!588
2021-06-28 20:25:51 +00:00
psi29a
67f32263b2 Merge branch 'fix_malexa_escape' into 'master'
Inscribe physical bounding box into navmesh agent cylinder (#6114)

Closes #6114

See merge request OpenMW/openmw!967
2021-06-28 14:26:08 +00:00
fredzio
c795e0bce6 Some actors are supposed to spawn on an object that belongs to an adjacent cell.
Since actors can be active in 3x3 grid around the player, we need to
first load all objects in a 5x5 grid around the player.

Split load and unloading in 2 phases. Add an mInactiveCells set into the
scene, which contains all cells inside the aforementioned 5x5 grid.
These cells contains only heightfields and non-animated physics objects.

Animated objects are tied to the scene graph, which doesn't exists yet
in these cells, so we skip them.
2021-06-28 09:36:04 +02:00
elsid
8d2cdedc87
Show number of pathgrid node in a tooltip
To allow users faster understand what node it is.
2021-06-28 00:34:49 +02:00
elsid
84d6dea277
Inscribe physical bounding box into navmesh agent cylinder
To disallow too narrow navmesh for a bounding box.
2021-06-27 13:44:38 +02:00
AnyOldName3
d38126ef1c Pack default CS config
*Technically* it was already being loaded as if it were packed, but it
made no difference because it's supposed to be empty.
2021-06-26 20:00:25 +01:00
Evil Eye
1f658209f8 Merge branch 'DoNotCopyFullDialogue' into 'master'
Do not copy full dialogue as we only want to return its id

See merge request OpenMW/openmw!856
2021-06-26 11:59:37 +00:00
Alexey Sokolov
ec576b36f1 Add a default filter to CS tables
This fixes the single most annoying issue of OpenMW-CS: inability for
users to filter records in the table if they don't happen to know by
heart the syntax of the very powerful filter engine. Because simply
typing the text into the search field did not work. Now, existence of .*
suggests that regex is used, and users still can replace the text with a
custom filter if they wish.
2021-06-25 11:45:43 +01:00
psi29a
7d8949ec3f Merge branch 'positively_glowing' into 'master'
Detach objects from the active grid when attempting to get their animation

Closes #6105

See merge request OpenMW/openmw!951
2021-06-25 09:20:25 +00:00
Evil Eye
2be27da791 Merge branch 'const_refs' into 'master'
Add a ton of const refs

See merge request OpenMW/openmw!954
2021-06-24 18:57:41 +00:00
Evil Eye
9f7980ecd7 Merge branch 'refenreces' into 'master'
Sprinkle some references where it makes sense

See merge request OpenMW/openmw!952
2021-06-24 17:40:36 +00:00
Evil Eye
7e9785941c Merge branch 'default' into 'master'
Use `default` instead of empty constructors/destructors

See merge request OpenMW/openmw!957
2021-06-24 17:19:02 +00:00
jvoisin
cf11870b1c Sprinkle some references where it makes sense 2021-06-24 00:28:09 +02:00
jvoisin
5840279f16 Use default instead of empty constructors/destructors
See https://pvs-studio.com/en/docs/warnings/v832/ for details
2021-06-24 00:26:15 +02:00
jvoisin
b2c170efa0 Use initialization lists where possible 2021-06-23 23:36:43 +02:00
jvoisin
1123dc46ee Add a ton of const refs 2021-06-23 23:13:59 +02:00
Evil Eye
692615fd3c Detach objects from the active grid when attempting to get their animation 2021-06-23 18:08:49 +02:00
Evil Eye
7377568f01 Merge branch 'modernize_use_override_openmw_cs' into 'master'
Using override keyword in OpenMW CS

See merge request OpenMW/openmw!888
2021-06-22 18:04:40 +00:00
Evil Eye
f264a8d90a Merge branch 'vfx' into 'master'
Calculate magic VFX vertical offset (bug #5453)

Closes #5453

See merge request OpenMW/openmw!909
2021-06-22 17:15:29 +00:00
Alexey Yaryshev
2577047b59 Fixed an issue #6101 (https://gitlab.com/OpenMW/openmw/-/issues/6101) 2021-06-22 14:51:49 +00:00
Dobrohotov Alexei
870cdd0130 Calculate magic VFX vertical offset (bug #5453) 2021-06-21 23:29:45 +03:00
psi29a
9c3117d2d4 Merge branch 'fix_smooth_movement' into 'master'
Validate almost straight shortcuts by navmesh raycast (#6102)

Closes #6102

See merge request OpenMW/openmw!947
2021-06-21 19:54:17 +00:00
Evil Eye
b2acb322af Merge branch 'modernize_use_override_for_most_apps' into 'master'
Using override keyword in most apps

See merge request OpenMW/openmw!886
2021-06-21 18:47:45 +00:00
elsid
e7d68d3d1b
Validate almost straight shortcuts by navmesh raycast
Check whether it's possible to actually move over navmesh by such shortcut.
2021-06-21 18:50:45 +02:00
Léo Peltier
5c4e1252e9 Handle AutoCalc flag when getting spell cost
Fixes #5483

This only applies to "base game" spells.
When adding an AutoCalc spell with TES:CS its cost is computed and
stored inside game files. This stored cost was being used by OpenMW and
the actual cost was never recomputed at runtime whereas Morrowind.exe
discards the stored cost.
While this worked fine in vanilla, mods can update AutoCalc spell
effects without ever updating the stored cost.

The formula was mostly there already but there was a few differences,
namely a 1 second offset in duration.
2021-06-20 13:42:28 +02:00
psi29a
6a9f2fdb17 Merge branch 'underground' into 'master'
Get The Underground 2 running

See merge request OpenMW/openmw!608
2021-06-19 21:06:15 +00:00
Evil Eye
690e5ef757 Don't resolve a script's target just to get the ID 2021-06-19 19:26:57 +02:00
Evil Eye
67c8d73fe0 Allow scripts to fail per target 2021-06-19 19:26:55 +02:00
Evil Eye
879e66a043 Don't autoequip items when implicitely adding an item using equip 2021-06-19 19:26:53 +02:00
Evil Eye
382d458f9c Ignore wrong reference class for SetHello 2021-06-19 19:26:53 +02:00
elsid
e5e04b85c1
Consider time to destination when try to avoid collision
Actor may reach destination before collision. Get next path point from active
packet pathfinder and use point tolerance to reduce distance.

Use maximum of last destination tolerance and DEFAULT_TOLERANCE because
there are 2 checks made for path completion. First checks whether actor is
close enough to the destination and second drop last path point when actor is
closer than DEFAULT_TOLERANCE.
2021-06-19 14:11:20 +02:00
elsid
56e6305345
Revert "Merge branch 'fix_new_game_guard' into 'master'"
This reverts commit a487295d39.
2021-06-19 14:06:46 +02:00
psi29a
b7886bc036 Merge branch 'SpeedUpInteriorCheck' into 'master'
Speedup searching for exterior cells

See merge request OpenMW/openmw!857
2021-06-19 00:29:47 +00:00
psi29a
047d993cf4 Merge branch 'at' into 'master'
Use operator[] instead of at() when the idx is checked

See merge request OpenMW/openmw!916
2021-06-19 00:26:48 +00:00
psi29a
f66196588c Merge branch 'object_paging_min_size_combo_box' into 'master'
Adding Object Paging Min Size combo box to Advanced -> Visuals

See merge request OpenMW/openmw!917
2021-06-19 00:20:29 +00:00
psi29a
5aa1f7b3d0 Merge branch 'remove_useless' into 'master'
Remove some useless variables from esmtool

See merge request OpenMW/openmw!925
2021-06-19 00:17:58 +00:00
psi29a
3794e6d4b2 Merge branch 'fix-ffmpeg-api-const' into 'master'
Fix future FFMpeg API changes

See merge request OpenMW/openmw!922
2021-06-19 00:15:16 +00:00
psi29a
4d95855dd5 Merge branch 'reduce_esmreader' into 'master'
Reduce a bit std::stringstream's code bloat in hot/small functions

See merge request OpenMW/openmw!933
2021-06-18 22:53:25 +00:00
psi29a
071786aff6 Merge branch 'UseSameDistanceForAllLodsOfTheCurrentChunk' into 'master'
Use same distance for all lods of the current chunk

Closes #6061

See merge request OpenMW/openmw!940
2021-06-16 11:47:30 +00:00
psi29a
329ec8f044 Merge branch 'dont_bury_me_plz' into 'master'
Don't unsummon creatures not found within the active cells

Closes #6070

See merge request OpenMW/openmw!926
2021-06-16 09:43:53 +00:00
psi29a
c39c0266a9 Merge branch 'free_from_bondage' into 'master'
Do not assume the bound item cache is valid after loading a save

Closes #6069

See merge request OpenMW/openmw!931
2021-06-16 09:43:14 +00:00
jvoisin
22153cca7b Reduce a bit the code bloat in hot paths/small functions
There is no need to bloat hot/small functions with
a ton of function calls and involving locales
for simple error messages.
2021-06-15 17:57:14 +02:00
unknown
7d756d997e Rebuild the cache in readState 2021-06-12 18:18:52 +02:00
CedricMocquillon
7fa67ff675 Use same distance for all lod instances of a chunk 2021-06-12 15:34:15 +02:00
fredzio
7d0483d7ad Cast spell even if target Ptr is empty. It happens when enchanted arrows
hit water or ground.
2021-06-11 05:55:37 +02:00
Evil Eye
90fa8dca35 Do not assume the bound item cache is valid after loading a save 2021-06-06 18:10:55 +02:00