1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-16 07:49:56 +00:00
Commit graph

2195 commits

Author SHA1 Message Date
Allofich
502a758eff Use particle texture for "hit" effects 2016-09-08 23:58:00 +09:00
Allofich
fe3a033642 Use particle textures for spell projectiles 2016-09-08 23:56:54 +09:00
scrawl
05e4542d33 Merge pull request #1048 from mrcheko/pathfinding
Pathfinding unification v2
2016-09-06 13:19:18 +02:00
mrcheko
aa441f2648 AiPackage: fix path recalc on cell change
AiTravel: remove unneeded code
2016-09-06 01:11:10 +03:00
mrcheko
a22fc43947 aiwander: reset path on cell change
remove redundant mIsWanderDestReady var
2016-09-05 15:18:34 +03:00
scrawl
fbc9b90ebe Cleanup 2016-09-05 00:04:11 +02:00
Allofich
f8270f6bd5 Consolidations and cleanup for multi-effect spells 2016-09-05 05:30:51 +09:00
Allofich
dbd7c038b2 Add loading code for multi-effect projectiles 2016-09-05 03:45:13 +09:00
Allofich
5a0d3feb98 Use C++ int-to-string conversion 2016-09-05 02:52:44 +09:00
Allofich
60384399ee Fix errors and warnings 2016-09-05 01:39:18 +09:00
Allofich
37f07f7435 Combine into one multi-effect magic projectile 2016-09-04 22:35:29 +09:00
Allofich
10842462c7 Send lists of models and sounds to launchMagicBolt 2016-09-04 17:42:27 +09:00
Allofich
96e1726e4d Fix warnings 2016-09-04 17:42:27 +09:00
Allofich
c4d77b6a8b Casting animation comes from the first effect 2016-09-04 17:42:27 +09:00
Allofich
3300ef5db7 Don't apply projectile effects multiple times 2016-09-04 17:42:27 +09:00
Allofich
f36e5ef403 Use last effect of spell for hand effect color 2016-09-04 17:42:27 +09:00
Allofich
f6c3a62b3e Use average speed for multiple spell projectiles 2016-09-04 17:42:27 +09:00
Allofich
f1a18027f2 Shoot projectiles of spells with multiple effects 2016-09-04 17:42:27 +09:00
Allofich
446c0a4fa8 Play all of a spell's casting effects 2016-09-04 17:42:27 +09:00
Allofich
b4577fe751 Allow multiple spell hit sounds on single target 2016-09-04 17:42:27 +09:00
scrawl
7859e378df Merge pull request #1045 from Allofich/attack
Fix AI melee attack
2016-09-04 00:22:59 +02:00
Allofich
5c2bc515fe Remove overridden code in aicombat 2016-09-04 02:13:09 +09:00
mrcheko
0775ed75ea fix zero div in getXAngleToDir 2016-09-03 17:50:06 +03:00
Allofich
0d63d75bb0 Remove no longer used parameter 2016-09-03 22:40:24 +09:00
Allofich
286e4bb98f Remove attacktype movement 2016-09-03 21:16:59 +09:00
David Cernat
9764dbb8d2 Merge pull request #52 from OpenMW/master
Add OpenMW commits up to 2 Sep
2016-09-02 06:29:34 +03:00
Allofich
154dcc942c Let NPCs use attack type regardless of movement 2016-09-01 22:43:33 +09:00
Allofich
b99c2c54d8 Allow Water Walking on non-submerged creatures 2016-09-01 03:53:53 +09:00
Allofich
22b11c5947 Move Water Walking check into checkEffectTarget() 2016-08-31 23:56:31 +09:00
Allofich
f25c65260c Limit sMagicinvalidEffect to self-cast spells 2016-08-31 17:22:45 +09:00
Allofich
6c3cad238b Use castByPlayer bool 2016-08-31 17:18:23 +09:00
David Cernat
e9dce26f38 Resolve conflicts in pull request #50
# Conflicts:
#	CMakeLists.txt
2016-08-31 07:28:32 +03:00
Allofich
a6216d883f Don't allow casting Water Walking in deep water 2016-08-31 04:37:50 +09:00
Allofich
9e1bfde46f Add comment 2016-08-26 02:42:56 +09:00
Allofich
67bd882bc7 Disable current idle when an action is taken 2016-08-25 23:42:09 +09:00
Allofich
6190ff1f0d Update idle if current idle finishes playing 2016-08-25 21:45:56 +09:00
Allofich
f4cc5d0399 Sometimes play 1st-person weapon idle to Stop key 2016-08-25 21:34:45 +09:00
David Cernat
4d2ca20445 Resolve conflicts in pull request #43
# Conflicts:
#	README.md
2016-08-24 22:03:35 +03:00
Allofich
9b0e5d6b59 Loop mid-animation idles when loading a save game 2016-08-23 19:50:56 +09:00
scrawl
b0dc625b18 Run setLoopingEnabled after the anim queue is updated 2016-08-22 23:33:24 +02:00
scrawl
719e884b7c Remove duplicate code 2016-08-22 23:25:00 +02:00
scrawl
6450c9be27 Simplify condition 2016-08-22 23:22:58 +02:00
Allofich
bf9dc45b2b Emulate vanilla animation loops more closely 2016-08-23 01:42:36 +09:00
mrcheko
612c7f1a2f Revert "Revert "Merge pull request #993 from mrcheko/pathfinding""
This reverts commit 3732979eec.
2016-08-19 22:15:26 +03:00
Allofich
b332a13b4e Don't restart looped animations on repeated calls 2016-08-18 23:23:38 +09:00
David Cernat
436548413e Resolve conflicts in pull request #39
# Conflicts:
#	CMakeLists.txt
2016-08-18 15:10:52 +03:00
Allofich
c05782581e Account for all instances of play() 2016-08-16 02:52:55 +09:00
Allofich
6163c7bb03 Use loopfallback for idle animation groups 2016-08-16 01:15:26 +09:00
David Cernat
d9cfd5bac2 Resolve conflicts with OpenMW 2016-08-15 19:14:13 +03:00
scrawl
3732979eec Revert "Merge pull request #993 from mrcheko/pathfinding"
This reverts commit 5190275b37, reversing
changes made to d7845012bf.
2016-08-14 18:04:33 +02:00
scrawl
30b549124e Fix use-after-free 2016-08-14 16:42:29 +02:00
Allofich
d617651307 Don't allow re-casting of bound equipment spells 2016-08-14 02:05:23 +09:00
Allofich
4b9aff7a03 Glowupdater fix when using shaders 2016-08-10 00:43:14 +09:00
Allofich
9b2cb2fb8c Cleanups 2016-08-10 00:25:33 +09:00
Allofich
775162ccdf Rewrite spell glow implementation 2016-08-09 22:56:53 +09:00
Allofich
35c14bb9bb Minor rewrite, make "open" spells play glow effect 2016-08-09 22:56:53 +09:00
Allofich
e132b52a69 Handle spell glows within updatecallback 2016-08-09 22:56:53 +09:00
Allofich
3841a8fb40 Make non-actors glow when they cast spells 2016-08-09 22:56:53 +09:00
Allofich
dca7b4beb7 Make non-actors also play spell casting sounds 2016-08-09 22:56:53 +09:00
scrawl
5190275b37 Merge pull request #993 from mrcheko/pathfinding
Pathfinding unification
2016-08-09 00:41:03 +02:00
David Cernat
babba95413 Merge pull request #34 from OpenMW/master
Add OpenMW commits from 1st week of August
2016-08-08 15:53:56 +03:00
mrcheko
e2cd87fcc7 fix veritcal aiming 2016-08-07 19:23:08 +03:00
MiroslavR
b65f379b7f Save scripted animation state (Fixes #1931, #2150, #3393) 2016-08-03 03:52:35 +02:00
mrcheko
293a0f768c use real distance to target to determinate 'ready to attack' state 2016-07-27 23:43:32 +03:00
Aesylwinn
b4a000913c Merge remote-tracking branch 'yar/master' into Even
# Conflicts:
#	CMakeLists.txt
#	apps/openmw/mwdialogue/filter.cpp
#	apps/openmw/mwmechanics/character.cpp
#	apps/openmw/mwworld/localscripts.cpp
#	components/CMakeLists.txt
#	components/compiler/exprparser.cpp
#	components/sceneutil/workqueue.cpp
2016-07-17 23:50:52 -04:00
mrcheko
203804ff15 fix AiPackage repeating 2016-07-16 19:08:49 +03:00
mrcheko
59a1a6d117 checkWayIsClear: remove PATHFIND_CAUTION_DIST check 2016-07-16 19:07:48 +03:00
mrcheko
b4e94e2aae Merge remote-tracking branch 'upstream/master' into pathfinding
# Conflicts:
#	apps/openmw/mwmechanics/aipackage.cpp
#	apps/openmw/mwmechanics/aipackage.hpp
2016-07-12 00:45:01 +03:00
mrcheko
8d4f0660ce fix hardcoded melee attack ranges 2016-07-12 00:17:43 +03:00
Allofich
c57d177f1c Trim unneeded code 2016-07-12 04:17:08 +09:00
mrcheko
05794505c8 travis build fix 2016-07-10 17:25:50 +03:00
Allofich
cabe038a97 Make lockpick and probe sounds 3d positional 2016-07-10 22:08:42 +09:00
mrcheko
f57858b750 Merge remote-tracking branch 'upstream/master' into pathfinding
# Conflicts:
#	apps/openmw/mwmechanics/aiactivate.cpp
2016-07-10 14:36:48 +03:00
MiroslavR
b0fcad4cb8 Don't stack effects for scrolls of the same type (Fixes #3466) 2016-07-10 03:49:09 +02:00
MiroslavR
75a66ced20 Fix actors lacking turning animations while in first person mode 2016-07-10 01:48:54 +02:00
mrcheko
d2fe6fe857 Merge remote-tracking branch 'refs/remotes/origin/master' into pathfinding
# Conflicts:
#	apps/openmw/mwmechanics/aiactivate.cpp
#	apps/openmw/mwmechanics/aicombat.cpp
#	apps/openmw/mwmechanics/aicombat.hpp
#	apps/openmw/mwmechanics/aifollow.cpp
#	apps/openmw/mwmechanics/aipackage.cpp
#	apps/openmw/mwmechanics/aipackage.hpp
#	apps/openmw/mwmechanics/aiwander.cpp
#	apps/openmw/mwmechanics/aiwander.hpp
2016-07-09 22:59:54 +03:00
MiroslavR
dc0bc5b68c Implement Face instruction (Feature #1424) 2016-07-09 02:16:47 +02:00
scrawl
6f376bd499 Merge pull request #983 from Allofich/telekinesis
Don't allow telekinesis on actors or teleport doors
2016-07-08 23:47:43 +02:00
Koncord
1b259e2d33 Syncing inventory, animations, position, 8 key attributes
Created Package system
2016-07-07 23:50:48 +08:00
scrawl
e362e3e6a5 Fix cppcheck warnings 2016-07-07 23:50:48 +08:00
Poncho
5b3ac5ff27 Use correct direction multipliers during awareness check 2016-07-07 23:50:48 +08:00
MiroslavR
80f2ae0ca7 Apply magic effects while waiting/sleeping 2016-07-06 00:20:23 +02:00
mrcheko
0793e4a80e refactor pathfinding code in AiWander: use AiPackage::pathTo, reuse AiPackage::ObstacleCheck 2016-07-05 21:38:41 +03:00
Allofich
199607423b Use iMaxActivateDist for AI actors that use Activate packages 2016-07-04 16:06:16 +09:00
MiroslavR
c8b61cb234 Cache magic effects in MWMechanics::Spells 2016-07-02 12:50:00 +02:00
MiroslavR
700dde116e Show remnant corprus effects in magic window 2016-07-02 05:17:24 +02:00
MiroslavR
54f52f7bae Implement effect removal for abilities (Fixes #3455) 2016-07-01 18:50:28 +02:00
Allofich
2290346296 Fix timing of some magicka calculations 2016-06-30 02:59:09 +09:00
scrawl
fc293aa048 Merge pull request #978 from Allofich/fatigue
Fix update of fatigue display
2016-06-27 17:05:05 +02:00
Allofich
1602eb3de8 Fix so that keepPlayerAlive() will not run twice 2016-06-27 21:43:49 +09:00
Allofich
19a20a6871 Fix update of fatigue display 2016-06-27 21:17:06 +09:00
MiroslavR
dfc62c99b4 Show correct class image in level-up dialog (Fixes #3443) 2016-06-26 03:22:58 +02:00
Allofich
dc468dd139 Fix magicka and fatigue calculations from fortifying attributes 2016-06-25 19:21:49 +09:00
Allofich
5d3aebd04b Update disposition check between persuasion attempts 2016-06-22 01:47:09 +09:00
terrorfisch
be25e2ba75 Make NPCs use both hands in weaponless combat. 2016-06-20 10:24:51 +02:00
Allofich
b1be3596dc Cleanup of #include statements 2016-06-18 10:56:28 +09:00
Allofich
4a38fb8650 Use namespace block in aiactivate 2016-06-17 20:59:37 +09:00
scrawl
3ce63c3f6e Merge pull request #967 from Allofich/AIPackageFixes
AI package cleanups
2016-06-16 20:22:51 +02:00
Allofich
c2b51112f2 AI package cleanups 2016-06-16 17:17:56 +09:00
scrawl
693d3cea4a Float to surface fix 2016-06-15 19:38:04 +02:00
scrawl
b5cb11ff07 Split refreshCurrentAnims into multiple functions 2016-06-15 03:14:44 +02:00
scrawl
372f2e2f18 Merge pull request #962 from Allofich/AIPackageFixes
Duration fixes for Follow and Escort
2016-06-14 20:47:32 +02:00
Allofich
3bebbab78e Duration fixes for Follow and Escort 2016-06-15 02:11:30 +09:00
scrawl
3ec4ee6290 Make a copy of map key to work around it being invalidated (Fixes #3329) 2016-06-13 02:06:44 +02:00
scrawl
4acfe1a7e4 Move cleanupSummonedCreature to the mechanics manager (Bug #3439) 2016-06-12 02:43:33 +02:00
scrawl
910ad76e29 Remove spell effects when a summoned creature expires (Bug #3439) 2016-06-12 00:41:13 +02:00
scrawl
b7e45b046d When a summoned creature dies, wait for its death animation to complete before removing it (Bug #3439) 2016-06-12 00:40:55 +02:00
scrawl
a825882c6b Process death events at the end of the death animation (Fixes #1873) 2016-06-12 00:04:50 +02:00
scrawl
37afe966cf Update comment 2016-06-11 21:25:40 +02:00
scrawl
7a30ef5cc1 Do not consider actors following the player as hostiles 2016-06-11 18:26:20 +02:00
scrawl
8fcc1911d9 Use fCombatDistance as the creature attack range 2016-06-10 23:47:01 +02:00
scrawl
166cced22f Merge pull request #957 from svaante/master
Added 1.5 bonus for ranged weapons when weapons are rated
2016-06-10 00:01:05 +02:00
scrawl
a14f1bc222 Merge pull request #954 from Allofich/AIWanderDuration
Improve duration calculations in Wander AI
2016-06-09 23:46:37 +02:00
Allofich
55ac1fab68 Change Wander duration to run on a counter 2016-06-10 04:36:18 +09:00
Daniel Pettersson
256439f884 Added 1.5 bonus for ranged weapons when weapons are rated 2016-06-09 21:23:36 +02:00
scrawl
abcd2219e8 Ignore the calling actor in getEnemiesNearby / getActorsFighting 2016-06-08 22:13:21 +02:00
scrawl
165f048792 Do not count dead NPCs as observers (Fixes #3434) 2016-06-07 22:01:44 +02:00
scrawl
f417d7780a Fix the enemy nearby check (Bug #3423) 2016-06-07 01:55:34 +02:00
scrawl
a45643f150 Merge pull request #949 from Allofich/master
Fix return values for AITravel
2016-06-05 21:16:28 +02:00
Allofich
065d6a391d Don't repeat sequences of only one non-wander AI 2016-06-06 04:12:49 +09:00
Ben Shealy
5085afa3d7 Moved mechanics code from MWGui::TradeWindow to MWMechanics::Trading 2016-06-04 12:28:47 -04:00
Allofich
bce66c629a Change editor-placed AI packages to cycle 2016-05-29 17:34:40 +09:00
scrawl
496cb85b01 Do not cancel Ai packages when on loading (Fixes #3409)
This piece of code was an attempt to fix up save games made before commit d3b76b7006 , but ended up introducing a new bug.
2016-05-28 20:27:05 +02:00
scrawl
0efbdb25ee Improve const-correctness in Animation 2016-05-19 22:30:14 +02:00
scrawl
3749821809 Choose a random death animation for actors that start the game as dead (Fixes #3397) 2016-05-19 21:40:05 +02:00
scrawl
3b31e8f66e Do not set AiPackageDone flag for non-Aipackages (Fixes #3392) 2016-05-14 19:19:37 +02:00
Roman Proskuryakov
d7046878a8 Fix uninitialized values in MWMechanics::AiCombat 2016-05-07 20:41:47 +03:00
Michał Moroz
40cc6a4164 Changed AiSequence::stack to push_back lower priority packages instead of push_front (Bug #3384) 2016-05-04 13:55:36 +02:00
scrawl
93b2f09224 Workaround for some AI functions being incorrectly handled as AI packages (Bug #3378) 2016-04-29 18:07:35 +02:00
scrawl
5edfe8c41c Reduce the wander fast forward overcrowding offset (Fixes #3370) 2016-04-23 22:47:42 +02:00
Austin Salgat
be16857f96 Fix wrong height being used for water detection 2016-04-17 10:46:09 -05:00
Austin Salgat
e9157e9200 Fix idle animation and Fix water creature manual wandering 2016-04-16 20:38:58 -05:00
Austin Salgat
3dec10c686 Update variable to prevent underflowing
While not an issue presently, the variable may be used in the future in a way that could create issues if it underflows.
2016-04-16 17:51:13 -05:00
Austin Salgat
84179c262f Update manual wandering to prevent actor from leaving/entering water
Water creatures will stay in the water, while land creatures will stay on land when wandering.
2016-04-16 16:39:13 -05:00
Austin Salgat
fc03216d48 Refactor to reuse existing obstacle detection 2016-04-16 12:14:00 -05:00
Austin Salgat
34726c24d9 Fix mDistance being reset prematurely
This was causing wandering without pathgrids to become disabled for most wandering units. Additionally, wandering now behaves the same for both NPCs and creatures.
2016-04-15 21:56:41 -05:00
Austin Salgat
92b352989a Add logic for NPC wandering without pathgrids 2016-04-13 20:48:08 -05:00
Austin Salgat
c02881a4f8 Fix creatures not wandering 2016-04-12 21:16:55 -05:00
Austin Salgat
38f5a225ea Refactor PathFinder functions to be useable by AiWander
This avoids having to duplicate the distanceSquared and getClosestPoint functions.
2016-04-10 20:44:08 -05:00
Austin Salgat
96231e17f0 Fix wandering NPCs going off pathgrid
If multiple pathgrids exist in the same cell, sometimes an NPC would port to a different pathgrid that was nearby. This is an issue since it allowed them to do things like travel through walls to inaccessible areas. Now they will only wander along the closest connected pathgrid.
2016-04-10 20:21:18 -05:00
scrawl
79c8f69b24 Clear the class selected / race selected flags when starting a new game (Fixes #3326) 2016-04-03 20:23:28 +02:00
scrawl
e71aa53574 Don't allow playing a sound/soundgen key more than once at the same time on the same object (Fixes #2689) 2016-03-24 19:26:12 +01:00
scrawl
b332704df7 Switch hand-to-hand attack types randomly when "always use best attack" is turned on (Fixes #3259) 2016-03-19 18:03:59 +01:00
scrawl
a6e23d03d3 Don't clamp disposition twice, clamping is already done inside getDerivedDisposition 2016-03-18 00:42:22 +01:00
scrawl
102f9719f7 Remove some garbage 2016-03-18 00:39:27 +01:00
scrawl
79eb2d20e0 Cleanup 2016-03-18 00:39:19 +01:00
scrawl
12ec90f9e7 Change default argument, fix GetDisposition 2016-03-18 00:38:02 +01:00
scrawl
bc5adfa4fe Merge pull request #913 2016-03-18 00:31:55 +01:00
scrawl
14e1911820 Fix memory leaks 2016-03-10 20:38:14 +01:00
ae-g-i-s
c9791c5c1a Add addTemporaryDispositionChange parameter to MechanicsManager::getDerivedDisposition(), adjust callers that previously added temp disposition changes themselves (fixes #3233) 2016-03-08 21:30:28 +01:00
ae-g-i-s
2f1c6c740c Revert "Fix incorrect handling of baseDisposition >= 100 in testDisposition(), enable unbounded getDerivedDisposition() (Fixes #3233)"
This reverts commit 000597236e.
2016-03-08 20:41:39 +01:00
ae-g-i-s
000597236e Fix incorrect handling of baseDisposition >= 100 in testDisposition(), enable unbounded getDerivedDisposition() (Fixes #3233) 2016-03-06 18:29:32 +01:00
scrawl
2821f46a18 Corpse clearing fix 2016-03-01 11:31:08 +01:00
scrawl
7485abe5c3 Use safePlaceObject for summoned creature spawning 2016-02-29 17:27:07 +01:00
scrawl
11f00e3aa9 Rename safePlaceObject to placeObject 2016-02-29 17:05:18 +01:00
scrawl
c3ef387208 Vanilla-compatible creature/NPC respawning (Fixes #2369, Fixes #2467) 2016-02-27 12:53:07 +01:00
scrawl
a97eae864d Fix the ObstacleCheck time step (Fixes #3211) 2016-02-26 13:15:41 +01:00
scrawl
d05603c7fe Directly apply On Target 'When Strikes' enchantments instead of launching a projectile (Fixes #3212) 2016-02-22 19:42:54 +01:00
scrawl
90a99991d1 Use empty() instead of !size() 2016-02-22 19:06:12 +01:00
scrawl
8bd16e4d5a Don't compute the world matrix multiple times 2016-02-22 18:58:19 +01:00
scrawl
c4d38bb42d Fix clang analyzer warnings 2016-02-16 19:17:04 +01:00
scrawl
48ac0bef3e Repair save games affected by bug #3080 (Fixes #3160) 2016-02-11 16:34:02 +01:00
scrawl
a7b217def2 AI: don't cast fortify effects (Fixes #3184) 2016-02-07 01:29:11 +01:00
scrawl
162287b82d AI combat actions: rename 'target' to 'enemy' 2016-02-07 01:29:11 +01:00
scrawl
94c05c6baa AI: don't cast useless resist spells (Fixes #2760) 2016-02-07 01:29:02 +01:00
scrawl
d3415387a5 AI: take into account success chance when rating a spell 2016-02-07 01:18:20 +01:00
scrawl
b9d1d6144a Don't reveal unknown potion effects in alchemy window (Fixes #3146) 2016-02-02 22:50:11 +01:00
scrawl
d3b76b7006 Don't stack Ai packages (Fixes #3101, Fixes #3080, Fixes #2697) 2016-02-02 22:20:56 +01:00
scrawl
7aeafd3bb9 Revert "Apply the AiTravel maxRange to AiEscort as well (Fixes #2697)"
This reverts commit 1f543b4d79.
2016-02-02 22:08:12 +01:00
scrawl
145756c0a1 Partly revert "Avoid directly iterating the actor map (Fixes #3173)"
Caused issues when a summoned creature is removed as part of the magic effect update.

Fixes #3178
2016-02-02 15:57:15 +01:00
scrawl
59d2de118f Avoid directly iterating the actor map (Fixes #3173) 2016-02-02 00:50:21 +01:00
scrawl
50ed061154 AiWander: reset mAllowedNodes on cell change (Fixes #3176, Fixes #3130) 2016-02-02 00:41:40 +01:00
scrawl
dda4273349 Actors that start the game as dead do not float to the surface (Fixes #3177)
This has a minor bug (can you spot it?) that affects the vanilla engine as well, unfortunately not so simple to fix.
2016-02-01 23:18:18 +01:00
scrawl
832eaae27b Do not apply effects with CasterLinked flag when there is no valid caster 2016-02-01 22:57:08 +01:00
scrawl
c34314ae26 When an actor dies purge all spell effects cast by that actor (Fixes #3175) 2016-02-01 22:52:28 +01:00
Tobias Kortkamp
0659687bfb Some fixes for building on FreeBSD 2016-01-25 14:13:16 +01:00
scrawl
b0431833a1 Fix some defects reported by Coverity CI 2016-01-21 16:08:04 +01:00
mrcheko
b304e98568 implement ActionWeapon::getCombatRange (move logic from AiCombat) 2016-01-15 21:49:27 +03:00
scrawl
4e6a60672d When a spell explodes on an actor do not apply it to that actor twice (Fixes #3142) 2016-01-12 00:40:09 +01:00
scrawl
daa94cc50e Fix cppcheck warnings 2016-01-03 20:19:38 +01:00
mrcheko
bcb1f4ed05 refactor AiCombat: remove all pathfinding code, adopt new version of
AiPackage::pathTo;
fix couple of warnings;
2016-01-03 15:33:52 +03:00
Poncho
b1020dcd42 Use correct direction multipliers during awareness check 2016-01-02 12:24:39 -06:00
mrcheko
b960b0af93 rewrite pathTo for clearer logic; reapply Scrawl's aifollow threshold 2016-01-01 16:41:45 +03:00
mrcheko
d7d5cc6689 Merge remote-tracking branch 'upstream/master' into pathfinding
Conflicts:
	apps/openmw/mwmechanics/aicombat.cpp
	apps/openmw/mwmechanics/aifollow.cpp
	apps/openmw/mwmechanics/aipackage.cpp
	apps/openmw/mwmechanics/aipackage.hpp
	apps/openmw/mwmechanics/aiwander.cpp
	apps/openmw/mwmechanics/pathfinding.hpp

Ogre::Vector3->osg::Vec3f; REACTION_INTERVAL->AI_REACTION_TIME; MakeOgreVec3->MakeOsgVec3
2015-12-29 19:15:40 +03:00
scrawl
63b9b075aa Do not allow soul trapping the same creature more than once (Fixes #3102) 2015-12-26 18:47:22 +01:00
scrawl
0bec6e5fbe Fix 'failed to find animation' warnings when a spell was equipped before the werewolf transformation 2015-12-26 18:45:09 +01:00
scrawl
6b67911658 Unset DrawState_Spell when becoming a werewolf 2015-12-26 18:26:55 +01:00
scrawl
f052c05018 Move werewolf functions from World to MechanicsManager 2015-12-26 18:23:13 +01:00
scrawl
29d0f448b4 Add const version of World::getAnimation 2015-12-19 16:15:45 +01:00
scrawl
51c77c5045 Accept a ConstPtr in getDoorState 2015-12-19 16:15:45 +01:00
scrawl
53f4b92426 AiEscort do not follow target through doors
Testing revealed a problem where the guard on the prison ship would incorrectly follow the player outside. Upon further investigation in vanilla MW, it appears that with AiEscort the actor only follows the target through doors once the AiEscort package has completed, *and* no new AI package is running yet.
2015-12-19 15:15:44 +01:00
scrawl
04f7a8f8eb Remove redundant getId function 2015-12-18 16:58:38 +01:00
scrawl
b2add6470b Missing include fix 2015-12-18 02:58:38 +01:00
scrawl
1c8244276d Exception handling improvements (Bug #3090) 2015-12-18 02:36:34 +01:00
scrawl
689dea4cb3 Add instant spell effects to the actor's magic effect list
Via http://forum.openmw.org/viewtopic.php?f=2&t=3212&start=20#p36208
2015-12-17 19:49:37 +01:00
scrawl
375caf037d Don't applyInstantEffect when magnitude is zero 2015-12-15 20:46:05 +01:00
scrawl
4af376133b Don't tick effects when duration is zero 2015-12-15 20:41:00 +01:00
scrawl
572786bff2 Instant effects that were added by a permanent ability are applied every frame
Via http://forum.openmw.org/viewtopic.php?f=2&t=3212&p=36120#p36121
2015-12-14 03:27:49 +01:00
scrawl
a7e0562e1c Fix improper handling of multiple AiFollow packages with the same target (Fixes #3077) 2015-12-13 17:42:11 +01:00
scrawl
f1f82af64e Fix improper swimming animations in first person mode 2015-12-11 01:24:42 +01:00
scrawl
bdae572264 Merge pull request #840 from scrawl/movedrefs
Object movement between cells
2015-12-09 14:10:57 +01:00
scrawl
6f98982bc2 Make sure that health is >= 1 when resurrecting the player (Fixes #2972) 2015-12-09 01:52:20 +01:00
scrawl
34f48d63f3 Apply spell absorption once per effect (Fixes #2942) 2015-12-09 00:35:54 +01:00
scrawl
07b064f616 Rename to lowerCaseInPlace 2015-12-07 22:49:15 +01:00
scrawl
1875aa4a18 Restore getNearbyDoor 2015-12-07 03:53:46 +01:00
scrawl
1f543b4d79 Apply the AiTravel maxRange to AiEscort as well (Fixes #2697) 2015-12-07 00:26:17 +01:00
scrawl
965bea45c0 AiEscort makes the actor side with target in fights (Bug #2697)
Also will follow the player through teleport doors.
2015-12-06 23:38:51 +01:00
scrawl
4e678ce6b3 Handle mCellId in AiEscort 2015-12-06 23:38:51 +01:00
scrawl
0975f60d59 Stub out CellStore::get<T> accessors in preparation of reference movement between cells 2015-12-04 18:29:41 +01:00
scrawl
14b143231c Don't crash OpGetTarget when the target disappeared (Fixes #3048) 2015-11-30 15:26:43 +01:00
Marc Zinnschlag
ff5582e318 Merge remote-tracking branch 'scrawl/ltex' 2015-11-28 09:51:57 +01:00
scrawl
5b8fd79b4b Fix crash when exception is thrown in startNewGame() 2015-11-27 21:38:57 +01:00
Chris Robinson
5f8a09df97 Play player sounds (except footsteps) local to the listener 2015-11-27 02:01:18 -08:00
Marc Zinnschlag
7cc950ed64 Merge remote-tracking branch 'origin/master' 2015-11-27 10:34:22 +01:00
scrawl
44dd62067e Remove some unnecessary per-frame store searches 2015-11-27 02:13:56 +01:00
scrawl
783594033a Optimize MWMechanics::Spells
Use pointers as map keys instead of string IDs. Resolves a nasty performance bottleneck on functions like hasCommonDisease() that previously had to look up all contained spells from the ESM store on every call. hasCommonDisease() is called hundreds of times per frame by the AI target update since it's used to calculate target disposition.

The total cost of hasCommonDisease() was 2.7% of the frame loop, now it's negligible.
2015-11-27 01:07:15 +01:00
Chris Robinson
73448c72f6 Replace Play_NoTrack with playManualSound3D, and rename the latter 2015-11-25 04:24:26 -08:00
scrawl
62169a7039 Use a single-precision PositionAttitudeTransform in speed critical places 2015-11-22 19:54:26 +01:00
scrawl
3453353091 AiCombat distance check takes into account collision box (Fixes #1699) 2015-11-18 19:00:43 +01:00
scrawl
666fbba1e0 Rotations: World::rotateObject takes radians instead of degrees
Cuts down on the amount of redundant degree<->radians conversions in the codebase.
2015-11-12 01:09:39 +01:00
scrawl
6405049add Rotations: move doors via Rotation rather than LocalRotation
Now LocalRotation is unneeded, will remove in next commit.
2015-11-12 00:58:29 +01:00
scrawl
637cd3a628 Adjust the FirstPersonNeckController to follow the camera with a reduced factor (Fixes #1784) 2015-11-10 01:01:41 +01:00
scrawl
3c338b9da9 ObstacleCheck: tweak the stuck detection parameters
The netch_betty wander animation starts up so slowly that the creature thought it was stuck, even though it's not.
2015-11-09 20:35:31 +01:00
scrawl
d233bc483d ObstacleCheck: fix evasion issue
The check if (samePosition... would not work as intended because actors do not move in every frame when the framerate is higher than the physics framerate. In that case the actor would change its evasion direction almost every frame.
2015-11-09 20:35:31 +01:00
scrawl
caa523a959 ObstacleCheck: fix the framerate not being taken into account 2015-11-09 20:35:31 +01:00
scrawl
801dc8eee3 ObstacleCheck: fix weird distance calculation 2015-11-09 20:17:21 +01:00
scrawl
c996702b56 Fix some uninitialised variables found by static analysis 2015-11-04 20:34:50 +01:00
scrawl
46e07e4b19 Head tracking: fall back to target collision box center if the target has no head node 2015-11-03 18:27:15 +01:00
scrawl
b72d5c5190 Don't play idlestorm animation when swimming 2015-11-03 17:48:35 +01:00
scrawl
8459a79a2c Fix AI being able to open locked doors (Fixes #2948) 2015-10-13 19:05:17 +02:00
Marc Zinnschlag
7e7215b3b3 Merge remote-tracking branch 'scrawl/master' 2015-10-07 08:09:27 +02:00
scrawl
7b6fe149f2 getSpellSuccessChance return 0 for used powers (Fixes #2944) 2015-10-05 15:41:43 +02:00
scrawl
77cb438714 Fix potential case smashing issue 2015-10-05 15:41:07 +02:00
artemutin@yandex.ru
ec4fff588d uncomment updateActor call in buildPlayer for magicka recalc 2015-10-05 23:07:13 +10:00
scrawl
387624e158 Add a threshold to AiFollow distance
Idle animations can move the actor around slightly, which sometimes causes AiFollow to constantly toggle between "arrived" and "following" state even when the player isn't moving. Could be observed by summoning a bonelord.
2015-09-26 02:02:50 +02:00
Alexander "Ace" Olofsson
7d4125d97f Fixes for building with unity build 2015-09-24 15:21:42 +02:00
dteviot
60d0ad9283 When stuck, try moving backwards as well as to side. 2015-09-19 16:14:00 +12:00
dteviot
5369d20682 Moved pathfinding logic from AiCombat to Pathfinding. 2015-09-19 15:34:02 +12:00
Marc Zinnschlag
b58a63e14e Merge remote-tracking branch 'scrawl/deathanim' 2015-09-17 14:54:29 +02:00
Marc Zinnschlag
96880b4dfe Merge remote-tracking branch 'scrawl/tabs' 2015-09-17 09:30:31 +02:00
Marc Zinnschlag
c35ce88ee7 Merge remote-tracking branch 'scrawl/aiming' 2015-09-17 09:25:33 +02:00
scrawl
a7f898057b Don't activate the initial death animation when skipAnim is set (Fixes #2513) 2015-09-17 04:38:42 +02:00
scrawl
c4b5a41ac3 Improve combat AI vertical aiming (Fixes #1366, Fixes #1330) 2015-09-17 03:41:15 +02:00
scrawl
a47617c21f Fix tab indentations in apps/ and components/ 2015-09-16 20:45:37 +02:00
scrawl
126960261f Keep playing IdleSneak on the lower body when casting spells / using weapons 2015-09-16 16:14:17 +02:00
scrawl
5692ef1eae Add convenience operator [] to AnimPriority 2015-09-16 15:43:42 +02:00
scrawl
84747fbdd7 Use the actual sneak state to determine visibility of indicator (Fixes #2915) 2015-09-16 15:37:36 +02:00
dteviot
0feae19140 AiCombat use evadeObstacles() from AiPackage. 2015-09-14 19:57:22 +12:00
dteviot
8e2fe1985d Fixed errors pointed out by Zini.
1. Removed "Actor" from name of function  isActorNearInactiveCell().
2. Corrected case of CoordinateConverter member function names.
2015-09-12 14:17:46 +12:00
dteviot
10eabc9d51 actorutil.hpp includes mwworld/ptr.hpp
As pointed out by Scrawl, fixes compiler error if getPlayer() is called before MWWorld::Ptr is defined, because getPlayer() returns a Ptr by value.
2015-09-11 18:43:06 +12:00