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

66 commits

Author SHA1 Message Date
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
Arthur Moore
61c3835637 Don't try to play animations we know are bad
Prevents log spam
2015-07-31 18:01:02 -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
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
2a4d35b98c fixed "comma at end of enumerator list" warning. 2015-07-20 18:20:57 +12:00
dteviot
00eef585af renamed mPlayedIdle to mIdleAnimation. 2015-07-19 18:04:42 +12:00
dteviot
22f49128cc replaced multiple booleans with single state variable. 2015-07-19 18:02:13 +12:00
dteviot
3ebe9fb34f renamed mRotate to mTurnActorGivingGreetingToFacePlayer 2015-07-19 18:00:49 +12:00
dteviot
e294cd95cd extracted function playIdleDialogueRandomly() 2015-07-12 17:15:14 +12:00
dteviot
0b089a5564 extracted function evadeObstacles() 2015-07-12 16:38:36 +12:00
dteviot
1ef78b1e56 extracted playGreetingIfPlayerGetsTooClose() 2015-07-12 16:37:31 +12:00
dteviot
df421fce92 extracted function setPathToAnAllowedNode() 2015-07-12 16:35:15 +12:00
dteviot
b508846a64 Renamed mStoredAvailableNodes to mPopulateAvailableNodes.
Don't call getAllowedNodes() needlessly.
2015-07-12 16:32:48 +12:00
dteviot
f1774ee7c3 Fixed compile failing on OSX and Linux. 2015-07-08 19:34:33 +12:00
dteviot
52cf8541f5 End point tolerance restored to 64 units.
Corrected problem pointed out by Scrawl.
Destination needs tolerance of 64 to avoid overcrowding.
2015-07-08 18:41:03 +12:00
dteviot
1239667cb4 AiWander uses points between PathGrid points (Fixes #1317)
When there is only on PathGrid point within a NPC's wander distance, expand possible wander destinations by using positions between PathGrid points.
2015-07-05 18:21:35 +12:00
dteviot
eb2aa965b9 Extracted function SetCurrentNodeToClosestAllowedNode() 2015-07-05 18:17:18 +12:00
dteviot
9a02a85a24 Pulled duplicate code into function. 2015-07-05 18:07:14 +12:00
dteviot
46a654286b Remove fix for #1317
Expanding the AiWander distance for path grid nodes causes bigger problems than it solved.
2015-07-04 18:57:56 +12:00
scrawl
59db9664ba Pass the CharacterController to AiPackage::execute 2015-06-26 17:47:04 +02: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
be6ee927b9 AiWander, use closest two points if distance is too small (Fixes #1317)
In AiWander, if wander distance is set too small to get two points, take the closest two points.
2015-03-28 20:05:54 +13:00
dteviot
63ab856024 Removed duplicated code. 2015-03-23 20:57:36 +13:00
dteviot
407cd50890 fixed warning C4099:
type name first seen using 'class' now seen using 'struct'
2015-03-06 21:36:42 +13:00
Alexander "Ace" Olofsson
8c49812d56 Remove unneeded include in obstacle.hpp 2015-02-09 15:12:10 +01:00
scrawl
01652bbcc5 Store original actor position in AiWander package (Fixes #2200) 2015-01-01 03:38:49 +01:00
scrawl
a8ae0dec52 Implement AiWander fast-forward (Feature #1125) 2014-12-31 18:41:57 +01:00
scrawl
61d1aa78ce Move AiWander path finder to temporary storage (Fixes #2082) 2014-12-01 23:09:46 +01:00
terrorfisch
730abf6841 Moved all variables in temporary storage for AiCombat and some more for AiWander.
+Buxfix for previous AiWander changes
2014-10-10 00:16:17 +02:00
terrorfisch
4391c1fd00 Addded the parts of AiWander that I fully understand to the temporary storage.
The rest should be done by someone who has a clearer overview over the class.
2014-10-08 22:11:45 +02:00
terrorfisch
0871d45790 Draft how to move temporary package state to CharacterController.
Example for a few values shown in AiWander.
2014-10-08 10:58:52 +02:00
scrawl
1bb82c710c Fix use of uninitialized memory in AiWander::init 2014-08-14 18:55:54 +02:00
Michał Ściubidło
bd3729a6cb Add grace periods for player greeting.
Add delay for NPC greating. NPC ignores greeted player after some time.
Fixes bug 1503.
2014-07-28 23:45:26 +01:00
Michał Ściubidło
d47bfbe69c Implement AI greeting states.
Greeting consist of 3 phases:
- none - default one, greeting state can only change to "in progress"
  when near enough and some time passes
- in progress - NPC says his greating and rotates toward player,
  state can only change to "done" after some time
- done - rotation is stoped, after idling can go away from player,
  state can only change to "none" when player and NPC are faraway
2014-07-28 23:45:26 +01:00
scrawl
a54ac579a5 Savegame: Store AiSequence 2014-06-13 02:26:52 +02:00
Thomas
10a5bb9464 Made code a bit more standardized and added a good bit of documentation. 2014-04-29 23:40:59 -04:00
scrawl
1fd7a07b5e Merge branch 'master' of https://github.com/OpenMW/openmw into return
Conflicts:
	apps/openmw/mwmechanics/aisequence.cpp
	apps/openmw/mwmechanics/aiwander.cpp
2014-04-29 09:14:13 +02:00
scrawl
9b36a13821 Feature #1289: NPCs return to default position
Make stationary NPCs return to their previous position once combat/crime AI finishes.
2014-04-29 09:09:51 +02:00
cc9cii
1fb2c8d87b NPC turning is less hacky but still not perfect. NPC's should walk away after a period of non-action by the player (vanilla behaviour) - not yet implemented. 2014-04-27 07:38:31 +10:00
cc9cii
6a1435c49e Remove rotation check that was freezing NPC's. 2014-04-20 17:59:08 +10:00
cc9cii
000afa48b7 An attempt at making turning animation smoother. Copied some code from AiCombat for rotation. 2014-04-20 11:59:47 +10:00
cc9cii
9bd31b6236 Added reaction time and moved game setting variables init to the constructor. 2014-04-20 10:06:03 +10:00
cc9cii
c652cb1568 More cleaning up. 2014-04-18 15:19:22 +10:00
cc9cii
d3be725ee7 Actors are moved on if idling near a closed interior door. Unreachable pathgrid points due to a closed door are removed from the allowed set of points. 2014-04-18 14:41:43 +10:00