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

236 commits

Author SHA1 Message Date
Allofich
a6dae51d87 Require line of sight for AI attacks (Fixes #3646) 2016-12-07 01:35:30 +09:00
MiroslavR
5e46121046 Implement fleeing AI (Closes #1118) 2016-11-16 20:15:25 +01:00
Martijn Bakker
45ffdbb284 fixed a segmentation fault when entering a cell which contains someone already attacking you 2016-09-30 00:40:13 +01:00
Allofich
04c13ffab3 Add unarmed attack selection to chooseBestAttack() 2016-09-22 00:45:54 +09:00
mrcheko
229cb4b386 remove dynamic_cast to ActionPotion 2016-09-20 23:00:00 +03:00
mrcheko
48765f2ff2 fix using potion as weapon 2016-09-19 23:43:26 +03:00
scrawl
65dc12cdd6 Remove unused parameter 2016-09-13 02:48:36 +02:00
Allofich
3bbde312b9 Remove unneeded code 2016-09-12 19:54:06 +09:00
Allofich
c98d4e0473 Allow dodging for bipedal creatures 2016-09-10 23:56:31 +09:00
Allofich
7bc4535c0d Make NPCs dodge according to target's weapon reach 2016-09-10 23:30:46 +09:00
scrawl
05e4542d33 Merge pull request #1048 from mrcheko/pathfinding
Pathfinding unification v2
2016-09-06 13:19:18 +02:00
Allofich
5c2bc515fe Remove overridden code in aicombat 2016-09-04 02:13:09 +09: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
Allofich
154dcc942c Let NPCs use attack type regardless of movement 2016-09-01 22:43:33 +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
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
mrcheko
e2cd87fcc7 fix veritcal aiming 2016-08-07 19:23:08 +03:00
mrcheko
293a0f768c use real distance to target to determinate 'ready to attack' state 2016-07-27 23:43:32 +03:00
mrcheko
8d4f0660ce fix hardcoded melee attack ranges 2016-07-12 00:17:43 +03: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
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
scrawl
8fcc1911d9 Use fCombatDistance as the creature attack range 2016-06-10 23:47:01 +02:00
Roman Proskuryakov
d7046878a8 Fix uninitialized values in MWMechanics::AiCombat 2016-05-07 20:41:47 +03:00
mrcheko
b304e98568 implement ActionWeapon::getCombatRange (move logic from AiCombat) 2016-01-15 21:49:27 +03: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
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
3453353091 AiCombat distance check takes into account collision box (Fixes #1699) 2015-11-18 19:00:43 +01:00
dteviot
5369d20682 Moved pathfinding logic from AiCombat to Pathfinding. 2015-09-19 15:34:02 +12:00
Marc Zinnschlag
96880b4dfe Merge remote-tracking branch 'scrawl/tabs' 2015-09-17 09:30:31 +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
dteviot
0feae19140 AiCombat use evadeObstacles() from AiPackage. 2015-09-14 19:57:22 +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
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
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
b3d5b47fea extracted function UpdateActorsMovement(). 2015-07-26 17:23:45 +12:00
dteviot
aba7225817 Removed some duplicated operations. 2015-07-26 11:15:21 +12:00
scrawl
b3f5ac5dbb Include cleanup 2015-07-25 02:11:49 +02:00
scrawl
e6b28d84f0 Outdated comment fix 2015-07-25 00:28:47 +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
6bcea21e14 Use fCombatDelayCreature, fCombatDelayNpc for random delays between aicombat attacks (Bug #1876) 2015-07-04 05:19:05 +02:00
scrawl
a7bd050928 Accurate attack timings in AiCombat 2015-07-03 05:58:12 +02:00
scrawl
82740c1645 Remove completely broken code 2015-07-03 02:29:42 +02:00
scrawl
d07b176b36 Take into account hit recovery, knockdown and other animations for AiCombat attack timing 2015-07-03 02:18:35 +02:00
scrawl
520a832a9a Remove an already resolved todo comment 2015-07-02 22:24:23 +02:00
scrawl
a1432b0255 Move attackingOrSpell flag to the CharacterController 2015-07-02 19:14:28 +02:00
scrawl
59db9664ba Pass the CharacterController to AiPackage::execute 2015-06-26 17:47:04 +02: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
scrawl
a0b0ae9bd1 Remove an unused variable 2015-06-04 21:51:24 +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
scrawl
58ebf57154 Apply a comment that got lost in the endless depths of my git stash 2015-06-02 17:13:30 +02:00
scrawl
22f01b1232 Merge branch 'master' of https://github.com/OpenMW/openmw into osg
Conflicts:
	apps/launcher/graphicspage.cpp
	apps/opencs/editor.cpp
	apps/opencs/model/doc/document.cpp
	apps/opencs/view/render/cell.cpp
	apps/opencs/view/render/mousestate.cpp
	apps/opencs/view/render/textoverlay.cpp
	apps/opencs/view/render/worldspacewidget.cpp
	apps/openmw/mwclass/creature.cpp
	apps/openmw/mwclass/npc.cpp
	apps/openmw/mwgui/inventorywindow.cpp
	apps/openmw/mwgui/loadingscreen.cpp
	apps/openmw/mwgui/mapwindow.cpp
	apps/openmw/mwgui/pickpocketitemmodel.cpp
	apps/openmw/mwgui/waitdialog.cpp
	apps/openmw/mwmechanics/combat.cpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
	apps/openmw/mwrender/globalmap.cpp
	apps/openmw/mwworld/physicssystem.cpp
	apps/openmw/mwworld/refdata.cpp
	apps/openmw/mwworld/scene.cpp
	apps/openmw/mwworld/worldimp.cpp
	components/sdlutil/sdlinputwrapper.cpp
	extern/shiny/Main/Factory.cpp
	extern/shiny/Main/MaterialInstance.cpp
	extern/shiny/Main/Platform.cpp
	extern/shiny/Main/ShaderSet.cpp
2015-05-23 20:33:44 +02:00
Rohit Nirmal
396fba7fa9 Silence -Wreorder warnings, and remove -Wno-reorder. 2015-05-21 22:46:44 -05:00
scrawl
ccab8cc9a1 Register Player in the PhysicsSystem 2015-05-12 17:40:42 +02:00
scrawl
8c810e3620 Move rng to components 2015-04-22 17:58:55 +02:00
scrawl
4e69e7cc0f OpenMW compiles and runs w/o render window 2015-04-01 17:02:15 +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
3f28634d1f consolidate random number logic
Note, I suspect Rng::rollClosedProbability() is not needed.  The only difference between it and rollProbability() is that one time in 37k (on Windows), it will give an output of 1.0.
On some versions of Linux, the value of 1.0 will occur about 1 time in 4 billion.
2015-03-15 14:07:47 +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
81925645a3 Unreachable enemies combat AI fix (Fixes #2271) 2015-02-14 16:51:54 +01:00
scrawl
f35c9b7a69 Clang warning fixes (thanks hemite) 2015-01-27 23:12:20 +01:00
dteviot
458b82c308 Centralized "fish can't attack non-swimmer" logic. 2015-01-11 14:25:46 +13:00
dteviot
7fe2f86d06 Slaughter fish attacks when player only knee deep in water (Fixes #2076) 2015-01-09 21:40:53 +13:00
scrawl
a17252eab3 Remove unused checkWaypoint function
It was an almost exact copy of the checkPathCompleted function anyway.
2015-01-07 02:34:28 +01:00
scrawl
a58bc9f2f7 Remove sneaking effect on combat AI (Fixes #2237) 2014-12-28 14:45:20 +01:00
Paulo Viadanna
bfa048e687 Fix #1734: AI will stop combat if target disappear 2014-12-02 17:38:25 -02:00
terrorfisch
4eb1668467 references now initialized when they are needed 2014-10-10 23:32:15 +02: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
4c36c67fb8 Updated AiCombat:
-moved everything except target to temporary storage
-removed the Pathfinder since present in baseclass
-cleaned some trigonometric mess
2014-10-08 23:00:36 +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
07cd647e75 Fix broken AI for creatures with OnTarget spells (Bug #1927) 2014-09-18 03:19:13 +02:00
scrawl
233e221de2 Terminate AI packages when target is disabled or deleted (Fixes #1910) 2014-09-14 10:49:33 +02:00
scrawl
0f43592237 Another invalid iterator fix 2014-08-28 16:47:54 +02:00
scrawl
f8f4d2dfdb Another invalid iterator fix 2014-08-28 02:14:30 +02:00
scrawl
1a98f8ca93 Invalid iterator fix 2014-08-28 02:09:00 +02:00
scrawl
0fe9612afb Implement basic spellcasting AI (Fixes #961)
Select a weapon to attack with in AiCombat and equip it (Fixes #1609, Fixes #1772)
2014-08-28 00:55:37 +02:00
scrawl
4773d754c6 Remove redundant isHostile flag (Fixes #1652) 2014-07-28 16:41:12 +02:00
scrawl
d81e9cfefd Implement actors fighting for the actor they are following (Fixes #1141) 2014-07-27 20:33:45 +02:00
Lukasz Gromanowski
171c61022d Added initialization of weapRange in AiCombat::execute().
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2014-07-21 21:17:12 +02:00
scrawl
523c2715e3 AiCombat: Handle Start to Min and Min to Max durations of 0 (found in Riekling animation) 2014-06-28 01:31:34 +02:00
scrawl
4f9ebd148c Fix broken AI movement on Z axis 2014-06-17 15:25:54 +02:00
Marc Zinnschlag
01c90a3434 Merge remote-tracking branch 'mrcheko/master' 2014-06-15 14:12:38 +02:00
scrawl
832f1a4857 Fix merge mistake 2014-06-14 02:31:01 +02:00
mrcheko
c4e5872620 fix bug http://bugs.openmw.org/issues/1470 2014-06-13 23:22:00 +04:00
scrawl
fe5bbfce3c Merge branch 'master' of https://github.com/OpenMW/openmw
Conflicts:
	apps/openmw/mwmechanics/aicombat.cpp
2014-06-13 19:31:33 +02:00
scrawl
a54ac579a5 Savegame: Store AiSequence 2014-06-13 02:26:52 +02:00