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
dteviot
6f97187bb6
Fix travis warning about no newline at end of file.
2015-09-10 22:26:33 +12:00
dteviot
573a14993a
Moved isActorNearInactiveCell() logic to own function.
...
Also, triggers when actor is near edge of cell, not when less than 1/2 way to edge.
2015-09-10 21:53:31 +12:00
dteviot
e9c796166a
Added MWMechanics::isPlayerInCombat()
2015-09-10 18:48:34 +12:00
dteviot
96e3933ee9
Fixed bug in smoothTurn()
...
Now correctly handles changing direction from 178 to -178 degrees.
2015-09-06 17:39:48 +12:00
dteviot
1dfe438a5d
reduce "reset if stuck" AiWander timeout.
...
Now is about 14 seconds, instead of 300.
2015-08-30 16:43:35 +12:00
dteviot
39c2ba8efe
Pathfinding bugfix.
...
Observed at Ebonheart (coe 1, -13). Especially at the western tower. Guards try to walk though tower door.
Cause: buildPath() adds destination (even when unreachable) when only using single node from pathgrid.
2015-08-30 16:12:51 +12:00
dteviot
f2c9b9351f
Try going right and left to "unstick" actor.
2015-08-30 10:06:09 +12:00
dteviot
31d82b6b0c
Unifiy evadeObstacles() logic between AiWander and AiPackage
...
Can't use same code, but logic is now same.
2015-08-30 08:32:47 +12:00
dteviot
f59e918a3b
removed useless code.
...
zTurn ignores turns < 0.0087 radians.
2015-08-29 17:34:33 +12:00
dteviot
0677799839
movement logic in AiPackage uses ObstacleCheck.
2015-08-29 17:21:18 +12:00
Marc Zinnschlag
a52b947efe
Merge remote-tracking branch 'dteviot/MagicEffectsRefactorDraft3'
2015-08-23 12:11:30 +02:00
Marc Zinnschlag
50ec8b10f5
Merge remote-tracking branch 'dteviot/Bug2871'
2015-08-22 10:37:43 +02:00
dteviot
5dd0ad6841
Fixed rest of travis errors.
2015-08-21 22:41:31 +12:00
dteviot
77a1d947cc
extracted MWMechanics::getPlayer()
2015-08-21 21:12:39 +12:00
dteviot
85bc41dedb
replaced FLT_MAX with numeric_limits.
2015-08-21 19:34:28 +12:00
dteviot
3b231b85bb
removed incorrect optimization.
...
Now it fixes #2871
2015-08-21 06:55:54 +12:00
Marc Zinnschlag
08325d14ca
Merge remote-tracking branch 'dteviot/Bug2871'
2015-08-20 20:42:35 +02:00
Marc Zinnschlag
5cb0353b5c
Merge remote-tracking branch 'jeffreyhaines/npcsdontscream'
2015-08-20 20:28:36 +02:00
dteviot
c0d3804b4f
Correctly handle disjoint pathgrid ( Fixes #2871 )
...
Bugfix:
When
1. Cell has multiple subgrids (i.e. path grid is disjoint)
2. Distance between destination and pathgrid point 0 is less than distance to points of subgrid closest to start point
Then getClosestReachablePoint() returns pathgrid point 0 as the end point.
This is invalid, this end point cannot be reached from the start point.
2015-08-20 21:50:58 +12:00
dteviot
0ee7407101
extracted common sub-expressions.
2015-08-20 18:17:02 +12:00
dteviot
ff5ef7055e
extracted function CreatureStats::isParalyzed()
2015-08-20 18:12:37 +12:00
Marc Zinnschlag
9918b57341
Merge remote-tracking branch 'origin/master'
2015-08-19 16:03:01 +02:00
Jeffrey Haines
e1baf1ea48
NPCs scream when they die
2015-08-19 09:51:04 -04:00
scrawl
232dfdc07e
Make an error message slightly more helpful
2015-08-19 01:24:54 +02:00
scrawl
67bd6cd708
Remove empty line at the beginning of files
...
git ls-files -z | xargs -0 sed -i '1{/^$/d}'
2015-08-18 23:06:12 +02:00
scrawl
dca08b0b42
Remove a firing assert ( Fixes #2871 )
2015-08-18 14:51:32 +02:00
Marc Zinnschlag
3992125b61
Merge remote-tracking branch 'scrawl/master'
2015-08-17 14:05:51 +02:00
Marc Zinnschlag
dc72b24f4e
Merge remote-tracking branch 'dteviot/PathfindingRefactorDraft'
2015-08-17 14:04:56 +02:00
Jordan Ayers
be7bd9529d
Classes shouldn't use MWBase::Environment to access their own members.
2015-08-16 16:56:44 -05:00
dteviot
4d9d8a060d
Pathing bugfix.
...
When path contains one one point from path grid, point is no longer being discarded.
2015-08-16 18:56:28 +12:00
dteviot
942a987d52
centralize the world/cell coordinate conversion logic.
2015-08-16 18:55:02 +12:00
dteviot
5049c9ab6a
removed unnecessary tests.
2015-08-16 17:41:33 +12:00
scrawl
8241976368
Don't attempt to play non-existing hit animations ( Fixes #2856 )
2015-08-15 23:27:37 +02:00
scrawl
d76fb2d266
Apply disintegrate only to weapons and armor ( Fixes #2853 )
2015-08-14 13:38:39 +02:00
Marc Zinnschlag
5aeabe22f0
Merge remote-tracking branch 'dteviot/PathfindingRefactor'
2015-08-14 10:13:04 +02:00
scrawl
1e18a73b1c
Don't play magic effect sounds & visual effects for unsuitable targets ( Fixes #2811 )
2015-08-13 17:08:21 +02:00
scrawl
211deeb63e
Don't attempt to lock or unlock unsuitable objects ( Fixes #2826 )
2015-08-13 17:08:21 +02:00
dteviot
55e3aaaa35
made variable const.
2015-08-10 20:30:43 +12:00
dteviot
e42a2478dc
Removed tests that are not necessary.
2015-08-09 17:58:40 +12:00
dteviot
2b9e22f593
extracted function stopAttack().
2015-08-09 14:29:38 +12:00
dteviot
0884a3796f
extracted function isTargetMagicallyHidden().
2015-08-09 14:20:55 +12:00
dteviot
038851420d
Removed unneeded temp variables.
...
Corrected case of function names.
2015-08-09 14:18:55 +12:00
dteviot
50ddcd1953
more attack logic moved into AiCombatStorage.
2015-08-09 14:10:08 +12:00
dteviot
0735e3e06e
move start attack logic to AiCombatStorage.
...
Basically, copied from mrchenko's 1d4be08f6e4c2dbd89cc0c3408a8231ee4497277
2015-08-09 14:08:42 +12:00
dteviot
1676bf917e
CombatMove logic moved into AiCombatStorage.
...
Basically, copied from mrcheko's 1d4be08f6e4c2dbd89cc0c3408a8231ee4497277
2015-08-09 14:06:52 +12:00
Marc Zinnschlag
d29862eac3
Merge remote-tracking branch 'emperorarthur/anim_fail'
2015-08-08 10:47:46 +02:00
dteviot
58f732ebc9
Update path following checks each frame in AiCombat.
2015-08-04 18:20:05 +12:00
dteviot
ad9bab0b68
Removed redundant if.
2015-08-04 18:17:08 +12:00
dteviot
4256e151b1
Fixed error in deciding type of attack
2015-08-04 18:15:58 +12:00
dteviot
21e249cb92
pass parameters as const &
2015-08-04 18:14:36 +12:00
Arthur Moore
08d5aaf0fc
Remove more comments
2015-07-31 18:23:07 -04:00
Arthur Moore
6fce49bfb5
Don't warn twice when unable to play an idle animation
2015-07-31 18:01:02 -04:00
Arthur Moore
61c3835637
Don't try to play animations we know are bad
...
Prevents log spam
2015-07-31 18:01:02 -04:00
scrawl
7644a46ded
Creatures with no movement should not attempt to start combat ( Fixes #2786 )
2015-07-31 01:26:26 +02:00
scrawl
f326b8e5d2
Fix weapon animations playing on the lowerbody when swimming
2015-07-31 00:52:34 +02:00
scrawl
e8cbdcfb1e
Play swimming animation fallback on the upper body when possible
2015-07-31 00:35:41 +02:00
Arthur Moore
5ea596f38d
Refactor onChooseActionStatePerFrameActions
...
This prevents playIdle errors from tyring to play idleAnimation 0
2015-07-30 08:15:45 -04:00
Arthur Moore
f69de1f263
Alert the user if trying to play a non-idle animation
...
Continue to propagate success/failure up the call stack.
2015-07-30 08:08:58 -04:00
Arthur Moore
5e6fcc2aef
Alert the user if attempting to play an animation fails
...
This is mostly propogating the error up the stack so the game can do something about it.
Working on avoiding log spam from calling an animation that doesn't exist every frame.
2015-07-30 08:00:26 -04:00
Marc Zinnschlag
26ea3aa1ad
Merge remote-tracking branch 'dteviot/refactoringAiWander'
2015-07-30 10:26:40 +02:00
dteviot
04aee1fe20
extracted function reactionTimeActions().
2015-07-26 17:32:29 +12:00
dteviot
c7aacaee70
extracted function returnToStartLocation().
2015-07-26 17:29:32 +12:00
dteviot
5e519ef550
extract function isPackageFinished().
2015-07-26 17:29:01 +12:00
dteviot
ad0d807103
extracted function reactionTimeActions().
2015-07-26 17:28:32 +12:00
dteviot
9c0e3d6c28
extracted functions doPerFrameActionsForState() and onChooseActionStatePerFrameActions().
2015-07-26 17:25:44 +12:00
dteviot
76f95eafe7
extract function onWalkingStatePerFrameActions().
2015-07-26 17:25:00 +12:00
dteviot
5ec310dfba
extract function onIdleStatePerFrameActions().
2015-07-26 17:24:33 +12:00
dteviot
b3d5b47fea
extracted function UpdateActorsMovement().
2015-07-26 17:23:45 +12:00
scrawl
dff84adf7e
Fix weapon animation priority
2015-07-26 01:35:36 +02:00
dteviot
aba7225817
Removed some duplicated operations.
2015-07-26 11:15:21 +12:00