psi29a
9c24d6b390
Merge branch 'ci_starts_with' into 'master'
...
Replace ciCompareLen with ciStartsWith where possible
See merge request OpenMW/openmw!2325
2022-08-22 17:34:03 +00:00
psi29a
f1e95ad615
Merge branch 'scroll_indices' into 'master'
...
Properly transform item ID to enchantment ID
Closes #6959
See merge request OpenMW/openmw!2328
2022-08-22 17:18:15 +00:00
Evil Eye
2b9d475e50
Fix #6959
2022-08-22 17:44:49 +02:00
Evil Eye
150d1840d6
Use more string_view and const string&
2022-08-22 16:55:53 +02:00
elsid
5dc612aa54
Replace ciCompareLen with ciStartsWith where possible
...
`ciCompareLen(a, b, b.size()) == 0` expression is an equivalent of checking for
equality of `a` prefix with size `b.size()` with `b`.
`ciCompareLen(a, b, a.size()) == 0` is also the same thing but `a` is a prefix
`b` should start with.
2022-08-22 09:32:22 +02:00
psi29a
5aa1ab2c62
Merge branch 'clean_includes' into 'master'
...
Cleanup includes
See merge request OpenMW/openmw!2307
2022-08-21 20:12:41 +00:00
psi29a
2a2268ea8b
Merge branch 'optimize_navigator_update' into 'master'
...
Optimize navigator per frame update
See merge request OpenMW/openmw!2308
2022-08-21 20:12:30 +00:00
psi29a
857dca058b
Merge branch 'fix_memory_leak' into 'master'
...
Fix memory leak on cell loading
See merge request OpenMW/openmw!2318
2022-08-21 20:07:23 +00:00
psi29a
7c899364af
Merge branch 'consistently_hostile' into 'master'
...
Clear the magic queue when unloading actors
Closes #6954
See merge request OpenMW/openmw!2317
2022-08-21 20:05:46 +00:00
elsid
84944a7530
Store RefData::mBaseNode as osg::ref_ptr
...
Direct leak of 16197408 byte(s) in 56241 object(s) allocated from:
#0 0x5572356d4d42 in operator new(unsigned long) (/home/elsid/dev/openmw/build/clang/asan/openmw+0xae0d42)
#1 0x557236938196 in (anonymous namespace)::addObject(MWWorld::Ptr const&, MWWorld::World const&, std::__1::vector<ESM::RefNum, std::__1::allocator<ESM::RefNum> > const&, MWPhysics::PhysicsSystem&, MWRender::RenderingManager&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:119:42
#2 0x55723692e51b in MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7::operator()(MWWorld::Ptr const&) const /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:913:62
#3 0x55723692e51b in void (anonymous namespace)::InsertVisitor::insert<MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7>(MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7&&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:230:21
#4 0x55723692e51b in MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:913:23
#5 0x55723692d451 in MWWorld::Scene::loadCell(MWWorld::CellStore*, Loading::Listener*, bool, osg::Vec3f const&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:449:9
#6 0x5572369299f5 in MWWorld::Scene::changeCellGrid(osg::Vec3f const&, int, int, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:612:17
#7 0x557236928521 in MWWorld::Scene::update(float) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:315:13
#8 0x5572368d4c98 in MWWorld::World::update(float, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/worldimp.cpp:1833:22
#9 0x557236ebbb72 in OMW::Engine::frame(float) /home/elsid/dev/openmw/apps/openmw/engine.cpp:418:25
#10 0x557236ed250a in OMW::Engine::go() /home/elsid/dev/openmw/apps/openmw/engine.cpp:1102:14
#11 0x557236eb621a in runApplication(int, char**) /home/elsid/dev/openmw/apps/openmw/main.cpp:228:17
#12 0x55723774d622 in wrapApplication(int (*)(int, char**), int, char**, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, bool) /home/elsid/dev/openmw/components/debug/debugging.cpp:328:19
#13 0x557236eb651f in main /home/elsid/dev/openmw/apps/openmw/main.cpp:240:12
#14 0x7fbf58a3f2cf (/usr/lib/libc.so.6+0x232cf) (BuildId: e637217a46491314667a7a37b2155cb07afc1a40)
Direct leak of 396288 byte(s) in 1376 object(s) allocated from:
#0 0x5572356d4d42 in operator new(unsigned long) (/home/elsid/dev/openmw/build/clang/asan/openmw+0xae0d42)
#1 0x557236938196 in (anonymous namespace)::addObject(MWWorld::Ptr const&, MWWorld::World const&, std::__1::vector<ESM::RefNum, std::__1::allocator<ESM::RefNum> > const&, MWPhysics::PhysicsSystem&, MWRender::RenderingManager&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:119:42
#2 0x55723692e51b in MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7::operator()(MWWorld::Ptr const&) const /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:913:62
#3 0x55723692e51b in void (anonymous namespace)::InsertVisitor::insert<MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7>(MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7&&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:230:21
#4 0x55723692e51b in MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:913:23
#5 0x55723692d451 in MWWorld::Scene::loadCell(MWWorld::CellStore*, Loading::Listener*, bool, osg::Vec3f const&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:449:9
#6 0x5572369299f5 in MWWorld::Scene::changeCellGrid(osg::Vec3f const&, int, int, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:612:17
#7 0x557236936eb2 in MWWorld::Scene::changeToExteriorCell(ESM::Position const&, bool, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:888:9
#8 0x55723689a5ac in MWWorld::World::changeToExteriorCell(ESM::Position const&, bool, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/worldimp.cpp:1003:22
#9 0x5572368c249d in MWWorld::World::changeToCell(ESM::CellId const&, ESM::Position const&, bool, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/worldimp.cpp:1014:13
#10 0x557236e9bbce in MWState::StateManager::loadGame(MWState::Character const*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/statemanagerimp.cpp:545:52
#11 0x557236e998db in MWState::StateManager::loadGame(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/statemanagerimp.cpp:377:17
#12 0x557236ed18fb in OMW::Engine::go() /home/elsid/dev/openmw/apps/openmw/engine.cpp:1066:24
#13 0x557236eb621a in runApplication(int, char**) /home/elsid/dev/openmw/apps/openmw/main.cpp:228:17
#14 0x55723774d622 in wrapApplication(int (*)(int, char**), int, char**, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, bool) /home/elsid/dev/openmw/components/debug/debugging.cpp:328:19
#15 0x557236eb651f in main /home/elsid/dev/openmw/apps/openmw/main.cpp:240:12
#16 0x7fbf58a3f2cf (/usr/lib/libc.so.6+0x232cf) (BuildId: e637217a46491314667a7a37b2155cb07afc1a40)
2022-08-21 20:58:37 +02:00
elsid
3057fa6bee
Remove redundant components/esm/records.hpp include
2022-08-21 19:08:30 +02:00
unknown
827a2f0b77
Use string_view in animation code
2022-08-21 18:53:38 +02:00
Evil Eye
443420ea60
CI compare cells
2022-08-21 14:46:13 +02:00
psi29a
5ed9764f3b
Merge branch 'effect_indices' into 'master'
...
Preserve effect indices when applying AoE and targeted spells
Closes #6957
See merge request OpenMW/openmw!2315
2022-08-21 12:03:43 +00:00
Evil Eye
a547608289
Preserve effect indices when applying AoE and targeted spells
2022-08-21 12:44:07 +02:00
Evil Eye
8b02c17ad4
Mark summon effects as applied if they have spawned a creature
2022-08-21 12:41:45 +02:00
elsid
e1bed86d7e
Do single navigator update per frame
...
Primarily for crossing cell border case. Each Navigator::update call has a cost.
Doing it multiple times per frame increased frame duration on cell loading.
Call Navigator::wait only when cell has changed but do not use
Scene::hasCellChanged because it doesn't always indicates it.
2022-08-20 19:15:55 +02:00
Kindi
da4a72ab19
Sun Damage for QuasiExt
2022-08-19 14:51:52 +00:00
psi29a
bf40f9b287
Merge branch 'name_view' into 'master'
...
Make Class::getName return string_view
See merge request OpenMW/openmw!2289
2022-08-17 20:14:27 +00:00
elsid
5498c169e3
Cleanup openmw render, physics, world, dialogue, gui, input includes
2022-08-17 18:45:52 +02:00
psi29a
5b9acd0bb9
Merge branch 'esmstore-fixes' into 'master'
...
Some ESMStore fixes
See merge request OpenMW/openmw!2279
2022-08-17 14:10:54 +00:00
Evil Eye
4ff12d8945
Make Class::getName return string_view
2022-08-16 21:15:03 +02:00
psi29a
b382e92953
Merge branch 'please_dont_copy_my_nfts' into 'master'
...
Prevent various values from being copied
See merge request OpenMW/openmw!2267
2022-08-16 08:36:34 +00:00
elsid
b1fb42a28c
Cleanup detournavigator includes
2022-08-15 19:46:10 +02:00
ζeh Matt
cdcf1393fc
Fix increment of dynamic id when player is inserted
2022-08-15 17:06:01 +03:00
ζeh Matt
6abb96250f
Fix using the wrong id for insertStatic
2022-08-15 17:04:37 +03:00
Evil Eye
eaa108d25d
Return string_view from SoundId methods
2022-08-14 14:39:58 +02:00
Alexei Kotov
7f3d2c18e1
Evaluate melee hits on weapon release (bug #5057 )
2022-08-13 01:15:42 +03:00
Evil Eye
51938f9ef7
Use string_view in Interpreter::Context
2022-08-12 19:42:35 +02:00
Evil Eye
685906afdf
Make getScript return string_view
2022-08-11 22:51:55 +02:00
Evil Eye
de51525c76
Allow string_view lookups in MWWorld::Store and get some use out of that
2022-08-09 20:43:14 +02:00
psi29a
bb9884c024
Merge branch 'split_stringops' into 'master'
...
Split components/misc/stringops.hpp into multiple headers
See merge request OpenMW/openmw!2233
2022-08-09 18:06:40 +00:00
elsid
dffb12ac05
Use std::vector to store paged ref nums
2022-08-06 02:11:58 +02:00
elsid
f99ed6f1db
Split components/misc/stringops.hpp into multiple headers
...
Replace all ciEqual overloads with one having std::string_view as argument.
2022-08-03 22:06:24 +02:00
psi29a
454684bad3
Merge branch 'custom_actor_collision_shape_type' into 'master'
...
Support cylinder and rotating box collision shape types for actors (#6138 )
Closes #6138
See merge request OpenMW/openmw!2043
2022-08-01 11:00:23 +00:00
Alexei Kotov
f9d41fcfe8
Don't stop playing sounds attached to removed objects (bug #6896 )
2022-08-01 04:03:00 +03:00
elsid
8b8e4f78b6
Support cylinder and rotating box collision shape types for actors
...
Cylinder collision shape should give the best consistency between physics
simulation and pathfinding. Rotating box is already used by some actors, so
add it to have the same collision shape type for all actors.
2022-07-30 14:28:21 +02:00
psi29a
79cdc08253
Merge branch 'clean_despawn' into 'master'
...
Remove effects added by unloading cells
Closes #6914
See merge request OpenMW/openmw!2208
2022-07-30 10:09:36 +00:00
Evil Eye
9fc5ced9c9
Remove effects added by unloading cells
2022-07-30 10:59:27 +02:00
psi29a
5cd4dbd9a9
Merge branch 'unrestrictedfailure' into 'master'
...
Spellcasting timing fixes (bug #4227 )
Closes #4227
See merge request OpenMW/openmw!2201
2022-07-30 07:35:46 +00:00
elsid
37b0ff596c
Trace down player on initial cell loading after all cells are loaded
2022-07-29 23:16:25 +02:00
Alexei Kotov
a914d7a9b0
Spellcasting timing fixes (bug #4227 )
...
Play spellcasting animation and VFX (but not hand VFX) if spellcasting failed due to insufficient magicka
Apply spellcasting fatigue loss when the spellcasting starts instead of when the spell is applied
2022-07-29 16:24:28 +03:00
psi29a
17a0063a7c
Merge branch 'async_delete_animation' into 'master'
...
Destruct animation asynchronously when unloading a cell
See merge request OpenMW/openmw!2177
2022-07-26 13:42:43 +00:00
myrix
782cb7699d
use std::string, no unlocalized message, show soul gem id
2022-07-25 02:56:25 +03:00
myrix
3698d96b46
use ciCompareLen, move checks to Miscellaneous::use and ActionSoulgem
2022-07-25 01:47:10 +03:00
elsid
0614b82452
Restore UnrefQueue to destruct animation asynchronously
2022-07-24 21:08:43 +02:00
Petr Mikheev
643e33c11a
Merge branch 'lua_pathfinding_bindings' into 'master'
...
Add bindings for navigator utils functions (#6690 )
See merge request OpenMW/openmw!2128
2022-07-20 23:52:16 +00:00
elsid
27cc901e76
Add bindings for navigator utils functions
2022-07-21 00:04:26 +02:00
ζeh Matt
ddf43ec42f
Move structs into separate headers, cleanup includes, cleanup forwarders
2022-07-18 19:15:03 +03:00
psi29a
79cc55b2a3
Merge branch 'rename-drawstate' into 'master'
...
Rename DrawState_ to DrawState and use enum class
See merge request OpenMW/openmw!2151
2022-07-17 20:24:50 +00:00