mrcheko
203804ff15
fix AiPackage repeating
2016-07-16 19:08:49 +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
Allofich
c57d177f1c
Trim unneeded code
2016-07-12 04:17:08 +09: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
mrcheko
0793e4a80e
refactor pathfinding code in AiWander: use AiPackage::pathTo, reuse AiPackage::ObstacleCheck
2016-07-05 21:38:41 +03:00
Allofich
b1be3596dc
Cleanup of #include statements
2016-06-18 10:56:28 +09:00
Allofich
065d6a391d
Don't repeat sequences of only one non-wander AI
2016-06-06 04:12:49 +09:00
Allofich
bce66c629a
Change editor-placed AI packages to cycle
2016-05-29 17:34:40 +09:00
scrawl
c4d38bb42d
Fix clang analyzer warnings
2016-02-16 19:17:04 +01:00
scrawl
d3b76b7006
Don't stack Ai packages ( Fixes #3101 , Fixes #3080 , Fixes #2697 )
2016-02-02 22:20:56 +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
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
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
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
8459a79a2c
Fix AI being able to open locked doors ( Fixes #2948 )
2015-10-13 19:05:17 +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
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
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
dteviot
77a1d947cc
extracted MWMechanics::getPlayer()
2015-08-21 21:12:39 +12:00
dteviot
55e3aaaa35
made variable const.
2015-08-10 20:30:43 +12:00
dteviot
0884a3796f
extracted function isTargetMagicallyHidden().
2015-08-09 14:20:55 +12:00
scrawl
278076e609
Include cleanup
2015-07-25 04:14:22 +02:00
dteviot
1ed6e95c07
Got rid of some radians to degrees to radians conversions.
2015-07-19 18:01:25 +12:00
mrcheko
c773ed9f9a
move checkWayIsClear to pathfinding; move shortcut logic to separate func (AiPackage::shortcutPath); rework AiPackage::pathTo
2015-07-04 18:00:16 +03:00
scrawl
cad18969e3
Merge branch 'master' of https://github.com/OpenMW/openmw into osg
...
Conflicts:
apps/openmw/mwmechanics/aicombat.cpp
apps/openmw/mwmechanics/aitravel.cpp
2015-06-14 16:32:13 +02:00
dteviot
cb8ca2f03a
Moved logic for building a Sync'ed path from AiCombat to PathFinding.
...
Is now used by AiFollow, which should fix "running in circles" bug caused when recalc a path and closest way point is the one NPC has just passed.
2015-06-11 18:31:35 +12:00
dteviot
6d7e6cd30c
AiTravel logic merged into AiPackage.
2015-06-11 18:28:31 +12:00
scrawl
4bb3cbf0fb
Remove last remains of Ogre
2015-06-03 23:04:35 +02:00
scrawl
7bacb9418d
Various math code ported to osg
2015-06-03 19:41:19 +02:00
dteviot
eb1090a1b6
Waypoint check only considers X & Y distance ( Fixes #2423 )
...
When pathfinder checks if actor has reached a waypoint, ignore actor's altitude.
2015-03-23 20:09:46 +13:00
dteviot
ca8c8c6aa4
fixing MSVC 2013 warning C4244: & C4305
...
conversion from 'const float' to 'int', possible loss of data
conversion from 'double' to 'int', possible loss of data
conversion from 'float' to 'int', possible loss of data
2015-03-08 17:42:07 +13:00
scrawl
f3d4b63aaf
Fix AI moving load doors and throw an exception when trying to do this ( Fixes #1907 )
2014-09-11 05:53:56 +02:00
scrawl
0077296c91
Take actor's speed into account in stuck check
...
The Winged Twilight's walking animation was so slow that it incorrectly detects being stuck.
2014-07-28 15:57:16 +02:00
scrawl
a54ac579a5
Savegame: Store AiSequence
2014-06-13 02:26:52 +02:00
scrawl
039398c8ae
Basic RefData and CellRef change tracking
...
Wrapped item charge handling in getItemHealth function
2014-05-25 14:30:07 +02:00
Thomas
d2aada95b4
Fixed AiPursue by fixing underlying issue is Pathto()
2014-05-14 14:11:34 -04:00
Thomas
cbcf0f6039
Changed AiEScort to use new PathTo function
2014-05-14 01:44:11 -04:00
Thomas
7cd4c93fa4
Changed getNearbyDoor to use MWWorld::Ptr
2014-05-13 23:46:00 -04:00
Thomas
58bf7624be
Made code a bit more efficient
2014-05-13 21:52:05 -04:00
Thomas
203ef580cf
Fixed moving activatable object being incorrectly activated.
2014-05-13 20:32:29 -04:00
Thomas
2db3c89a9e
Ensures destination is far enough to care about getting stuck
2014-05-13 04:09:21 -04:00
Thomas
cbfa282f8d
Changed implementations of aifollow/pursue/activate slightly, added ability for NPCs to go through unlocked doors (They even try locked ones), and step back from opening doors (Although it still needs some work)
...
Notes - When the door hits them while it's about to finish closing they will try to walk through the door.
- Considerably more works is needed in making the NPC work out troublesome areas where they get stuck
2014-05-13 03:58:32 -04:00
Thomas
2c74ea381e
Moved pathfinding code to aiPackage, implemented it's use with aiFollow and aiPursue
2014-05-12 21:05:32 -04:00
Marc Zinnschlag
345eec1135
Issue #389 : added AI package base class and AI packages management class
2012-09-04 13:25:53 +02:00