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
elsid
49f8445f87
Move AiSetting out of MWMechanics::CreatureStats
...
To replace creaturestats.hpp include in mwworld/class.hpp with forward
declaration reducing total size of preprocessed code.
2022-07-16 16:43:33 +02:00
uramer
c3c48f21d7
Consolidate item consumption code
2022-06-18 11:13:54 +02:00
Evil Eye
3c83117e99
Replace new with make_unique in openmw
2022-05-29 13:24:48 +02:00
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
ζ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
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
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
psi29a
f90a049702
Merge branch 'movement_refactoring' into 'master'
...
Refactoring related to "smooth movement"
See merge request OpenMW/openmw!285
(cherry picked from commit 6eaf0a389d5aed3b74ab1a7cf89574612f964bdf)
e847b4c8 Split getSpeed() to getMaxSpeed() and getCurrentSpeed()
a96c46bc Refactor calculation of movement.mSpeedFactor
03ee9090 Use getMaxSpeed instead of getCurrentSpeed where it makes sense.
a178af5c Create helper functions `normalizeAngle` and `rotateVec2f`
2020-08-27 11:54:30 +00:00
Evil Eye
040a92c373
implement additem/removeitem for non-unique actors
2020-07-26 11:07:18 +02:00
elsid
374b85a00d
Add Class methods to get walk, run, swim speed
2020-06-13 02:24:51 +02:00
Andrei Kortunov
5468fcb29f
Store attributes and skills values as floats (bug #4021 )
2020-06-03 17:34:15 +04:00
Evil Eye
4d7947d27c
Mutate base records when editing AI settings ( #2798 )
2020-06-02 21:59:37 +02: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
Evil Eye
85d52ec183
oops
2019-09-11 22:05:24 +02: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
elsid
16170131b7
Add enum type for door state
2019-08-25 15:21:00 +02:00
Andrei Kortunov
4c92f0c4e1
Move getEnchantmentColor() from Animation to Class
2019-08-07 08:51:46 +04:00
elsid
5405efd3b5
Do not build path by navigator for pure water and flying creatures
...
They don't need to move by surfaces and to open/close doors.
2019-03-05 22:45:05 +03:00
Andrei Kortunov
3032b177a1
Remove redundant includes
2019-02-23 08:02:12 +04:00
Capostrophic
54bd7b2dcf
Implement getItemNormalizedHealth() method and use it
2018-10-25 15:45:31 +03:00
Andrei Kortunov
c77c50e92b
Make Equip console command to bypass most of restrictions (bug #4460 )
2018-07-11 00:06:21 +04:00
Capostrophic
409d466e42
Make 0/0 encumbrance 0% encumbrance
2018-05-13 17:18:45 +03:00
Bret Curtis
d785344fad
purge all instances of <boost/shared_ptr.hpp>, clean up unused headers
2017-06-09 19:08:53 +02: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
MiroslavR
f883951d75
Fix incorrect calculation of armor rating (Bug #3754 )
2017-02-17 03:11:37 +01:00
MiroslavR
5e46121046
Implement fleeing AI ( Closes #1118 )
2016-11-16 20:15:25 +01:00
MiroslavR
52e00f5fef
Do not show uncarriable lights in item views
2016-09-24 18:01:31 +02:00
MiroslavR
f323f231db
Allow activating actors without a name ( Fixes #3551 )
2016-09-15 16:47:50 +02:00
Allofich
34851349de
Pass hitPosition by const reference
2016-09-13 00:59:56 +09:00
Allofich
bce0166931
Don't play blood effects for resisted hits
2016-09-12 22:46:32 +09:00
scrawl
effe022bb2
Move preload model list to MWClass, preload NPC head/hair
2016-02-08 20:52:32 +01:00
scrawl
e5d9ee30f4
Add count argument to copyObjectToCell
...
Fixes the gold bug introduced in c9ca5bc94658508920dbbef1f1a29101ab20ec4f
2015-12-19 16:48:32 +01: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
scrawl
51c77c5045
Accept a ConstPtr in getDoorState
2015-12-19 16:15:45 +01:00
scrawl
04f7a8f8eb
Remove redundant getId function
2015-12-18 16:58:38 +01:00
scrawl
266fbbef48
Accept a ConstPtr in canLock
2015-12-18 16:50:32 +01:00
scrawl
c43f80633a
Accept a ConstPtr in getEnchantmentPoints
2015-12-18 16:48:19 +01:00
scrawl
303521002d
Accept a ConstPtr in adjustScale
2015-12-18 16:46:02 +01:00