elsid
ec3674b40a
Use unique_ptr instead of shared_ptr
...
for MWWorld::Action, ProjectileManager and ESSImport::Converter.
shared_ptr has additional cost of reference counter and requires additional
allocation when constructed as shared_ptr<T>(new T).
2022-04-08 16:12:36 +02:00
elsid
dc20e799e1
Use static object to register classes
2022-04-06 16:49:25 +02:00
elsid
6e0d660dd5
Check whether model is empty before trying to insert object
2022-04-03 17:38:33 +00:00
ζeh Matt
08fae7be6e
Pass the prng from world where appropriate
2022-03-21 17:49:42 +02:00
Bret Curtis
74e7cfc023
remove unused includes: part1
...
remove unused imports: part2
revert one tidy we will keep for c++20
2022-01-23 17:30:25 +01:00
Bret Curtis
d1fb854521
move most of the files from esm to esm3, keep common code in esm; this is make space for a future with esm4
...
esm typo
esm typo
2022-01-23 17:04:48 +01:00
Bo Svensson
ef906cbfa8
improves MWClass mapping ( #3166 )
...
Currently, we use a peculiar mapping of ESM classes by their std::type_info::name. This mapping is an undefined behaviour because std::type_info::name is strictly implementation defined. It could return a non-unique value on some platforms. With this PR we use the unsigned int sRecordId of the ESM class as a more efficient lookup type that does not build on undefined behaviour. We can expect marginally faster save-game loading with these changes as well.
2021-10-11 13:46:21 +02:00
Bret Curtis
8309910d9d
Restore the cell grid to its former non-exorbitant size, reducing stutter and also threw in a simple alternative fix for the actor position adjustment issue.
2021-09-30 22:58:40 +02:00
jvoisin
74fab99b89
Use a const-ref for an osg::Quat
...
Since an osg::Quat contains at least 4 floats,
it should be worth it to use a const-ref instead
of passing it by value.
2021-07-22 21:33:18 +02:00
Evil Eye
0a15d7740a
Delay physics for objects created by scripts
2021-07-05 18:34:06 +02: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
bd33fa76b6
Use CRTP to define CustomData clone function
2021-04-05 11:53:07 +02:00
elsid
045bb7cbd7
Store CustomData and ContainerStore as unique_ptr
2021-04-05 11:52:52 +02:00
Andrei Kortunov
7b727e4d70
Revert "Remove physics dependency on basenode"
...
This reverts commit 165c7314928dc281a364fa1a0143c45fd6d2adfd.
2021-01-29 16:51:13 +04:00
fredzio
165c731492
Remove physics dependency on basenode
...
Necessary to be able to load physics objects from inactive cells.
2021-01-24 14:10:27 +01:00
Evil Eye
275b9aea4d
rename setting
2020-12-07 21:56:41 +01:00
Evil Eye
e62fff5f2e
Add a setting to disable graphical herbalism
2020-12-07 19:04:32 +01:00
psi29a
09373a757d
Merge branch 'radioactive' into 'master'
...
Container base record mutations
See merge request OpenMW/openmw!353
(cherry picked from commit 8b33765dd414680f0074b3e115b52b291b4cb7cb)
275908a0 mutate container base records
16fca11d add changelog entry
2020-10-20 16:56:22 +00:00
Andrei Kortunov
8e647aa72a
Fix crash on saving
2020-10-14 09:16:01 +04:00
Assumeru
72549651e0
Rework container resolution ( #3006 )
...
* Rework container resolution
* add optional argument to getCount
* remove now-redundant changes
* undo worldimp changes
* move save-fixing code to InventoryState
* replace Rng instances with Seeds
2020-10-13 17:46:32 +02:00
Capostrophic
5dc8da5f67
Only disarm traps with keys when the door is locked (bug #5370 )
2020-04-13 20:26:51 +03:00
Andrei Kortunov
dea2018d9f
Do not use dynamic casts when using ObjectState
2020-03-17 15:18:40 +04:00
Evil Eye
32de86d114
merge master
2019-09-17 20:31:53 +02:00
Evil Eye
7c8b82f45c
move locking behaviour to cellref
2019-09-17 20:30:37 +02:00
Andrei Kortunov
4a6d2cbaff
Do not allow player to take items from evidence chests (bug #3609 )
2019-09-17 19:08:33 +04:00
Capostrophic
718dbd3f9a
Use object ID as the substitution for their name (bug #5158 )
2019-09-11 00:06:50 +03:00
Capostrophic
6b74630f6e
Preparation work
...
Phase out canBeActivated() to unify activation checks
Use getName() for the name caption in tooltips
Always use tooltips for non-activator objects
Invert hasTooltip default value
2019-09-10 23:38:16 +03:00
Evil Eye
a86a8ecc0e
Allow locking/picking just about everything
2019-09-10 21:53:26 +02:00
Evil Eye
56b6a7ada4
Fix #5155
2019-09-09 22:29:59 +02:00
capostrophic
e5331aab28
Escape number signs in object names for tooltips
2019-08-17 21:53:52 +03:00
Andrei Kortunov
29cfd2c583
Do not respawn container if player did not touch it
2019-05-04 14:09:09 +04:00
Andrei Kortunov
861d41f4a4
Native graphics herbalism support (feature #5010 )
2019-05-02 23:03:47 +04:00
Vladimir Panteleev
12bbecacfd
Reuse a previously-saved value
2019-03-04 16:23:57 +00:00
Andrei Kortunov
3032b177a1
Remove redundant includes
2019-02-23 08:02:12 +04:00
Andrei Kortunov
e06f0b797a
Replace all NULLs to nullptr
2018-10-09 10:21:12 +04:00
Andrei Kortunov
5fd3ec1035
Implement unlockable locks with 'lock 0' console command
2018-06-19 14:17:33 +04:00
Andrei Kortunov
81b78a82e8
AI: try to open doors every AI_REACTION_TIME seconds (bug #4454 )
2018-06-13 17:47:32 +04:00
Chris Robinson
780e82480d
Make the PlayMode and PlayType enums scoped
...
Also shorten them by putting them in the MWSound namespace
2017-09-15 02:36:59 -07:00
Bret Curtis
d785344fad
purge all instances of <boost/shared_ptr.hpp>, clean up unused headers
2017-06-09 19:08:53 +02:00
Ewan Higgs
38a2de3c51
convert std::autor_ptr to std::unique_ptr, originally by Ewan Higgs and updated by Bret Curtis
2017-06-09 16:49:25 +02:00
scrawl
1692b7f38e
Merge pull request #1209 from dhustkoder/master
...
Added ConstContainerStoreIterator (Task #3092 )
2017-03-02 18:36:21 +01:00
scrawl
22482b7eec
Don't use xmesh.nif over mesh.nif for classes that don't make use of the separated keyframes
2017-02-20 19:04:02 +01:00
Rafael Moura
9963601484
Porting code to ConstContainerStoreIterator #1
2017-02-19 15:18:35 +00:00
Rafael Moura
ecbde7b11e
Added ConstContainerStoreIterator
...
using base template for ContainerStoreIterators
less template arguments for ContainerStoreIteratorBase
2017-02-18 13:47:18 +00:00
Allofich
cb9bb92b26
Play locked sounds on locked objects instead of actors
2016-08-10 21:31:14 +09:00
Allofich
599e6708ec
Allow using keys to open trapped objects of lock level 0
2016-07-10 23:08:11 +09:00
Allofich
249918612d
Play trap disarm sound when key used on trapped object
2016-07-10 22:06:35 +09:00
Allofich
d4e656ceaf
Play trap activation sound on trapped object, not actor
2016-07-10 21:39:53 +09:00
scrawl
32d5dece58
Add count argument to getToolTipInfo
2015-12-19 16:29:07 +01:00
scrawl
b0894ea20d
Accept a ConstPtr in hasToolTip
2015-12-19 16:15:45 +01:00