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

1409 commits

Author SHA1 Message Date
scrawl
28ef236f0e Don't allow setting a new return position if there already is one and we haven't reached it yet 2014-04-29 11:17:07 +02:00
Marc Zinnschlag
8fea2cfa2a Merge remote-tracking branch 'mrcheko/master' 2014-04-29 10:03:29 +02: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
Thomas
885228ec02 Merge remote-tracking branch 'upstream/master'
Conflicts:
	apps/openmw/mwmechanics/actors.cpp
2014-04-28 12:27:57 -04:00
Marc Zinnschlag
421679b319 Merge remote-tracking branch 'scrawl/master' 2014-04-28 15:13:09 +02:00
mrcheko
35c1724d39 unblock vertical aiming for combatants 2014-04-28 16:34:49 +04:00
scrawl
0796815da0 Ignore dead actors in getActorsFollowing/Fighting
Prevents dead enemies from disallowing resting near them
2014-04-28 11:44:56 +02:00
Marc Zinnschlag
0b2371a05d Merge remote-tracking branch 'thoronador/fix-minor-stuff' 2014-04-28 10:59:34 +02:00
Marc Zinnschlag
af322a9f77 Merge remote-tracking branch 'scrawl/master' 2014-04-28 10:48:57 +02:00
scrawl
1da99d9fc7 Remove unused variable 2014-04-28 10:26:24 +02:00
Thomas
dc54bd5a5f Merge remote-tracking branch 'upstream/master' 2014-04-27 20:56:45 -04:00
Thomas
c2127845af Added onKnockdown command 2014-04-27 20:54:22 -04:00
mrcheko
22cdb166f2 warning fix, vars renaming 2014-04-27 22:38:04 +04:00
Thoronador
1b8c975d5b minor performance improvements in apps/openmw
Checking for emptiness using size() might be inefficient, because
it can take linear time, while empty() is guaranteed to take only
constant time.

For non-primitive types, postfix ++ operators are inefficient
compared to prefix ++ operators, because post-increment usually
involves keeping a copy of the previous value around.
2014-04-27 19:10:23 +02:00
Marc Zinnschlag
ca097e146b Merge remote-tracking branch 'jeffreyhaines/master' 2014-04-27 17:35:10 +02:00
Jeffrey Haines
edbc319c42 fixed logic. || 2014-04-27 10:05:34 -04:00
Jeffrey Haines
52bb7c3f69 fixed logic. ! 2014-04-27 09:55:38 -04:00
Jeffrey Haines
7599b26d30 Fixed: creatures won't witness crimes
and potential crash.
2014-04-27 09:37:43 -04:00
Jeffrey Haines
0409e18a0e revert 2014-04-27 09:35:49 -04:00
Jeffrey Haines
b9bd4bc126 broken 2014-04-27 09:34:59 -04:00
Jeffrey Haines
ce106d3bec Revert "NPCs detect crime exclusively"
This reverts commit 54d9615d85ae856ad4fdd2c130ac9cb0cd847c72.

Conflicts:
apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
2014-04-27 09:34:33 -04:00
mrcheko
82121e0401 some checks reworked 2014-04-27 16:59:21 +04:00
scrawl
e42855d522 Minor fix for spell icon 2014-04-27 12:54:18 +02:00
mrcheko
6a3dddfb9a merge master 2014-04-27 13:49:31 +04:00
scrawl
3eb1e4e117 Fixes #1241: Removed disposition-based combat conditions
The information for this code came from UESP, which in turn cites a (extremely vague) section from the TES-CS help text, so no surprise that it wasn't accurate.

The guard on the boat has a fight rating of 70, so with the old code it would attack on sight if the disposition is low enough. BTB-Character.esp includes something (not sure what) that drops his disposition to 35 when playing as a Khajiit, making him attack.

Testing in Vanilla it appears that disposition has no effect on combat engagement at all. Even with disposition 0 and fight 70 the NPCs don't attack.

Setting an NPCs fight rating to 70 or less still has a meaning, because the higher it is, the easier it becomes to raise the fight rating to 80 (by taunting, for example).
2014-04-27 09:43:54 +02:00
scrawl
e8210c92c6 Fixes #1240: Don't hardcode drowning time 2014-04-27 04:27:26 +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
Thomas
c2b692e124 getActorsFollowing/Fighting no longer returns dead actors 2014-04-26 17:21:53 -04:00
mrcheko
dbe1307de0 code refining + minor fixes 2014-04-26 22:21:20 +04:00
scrawl
04964595ef Fixes #1270, Fixes #1201: Update active weapon/spell icons every frame 2014-04-26 16:44:20 +02:00
scrawl
ef39b0f6ab Fixes #1291: Faction rank saving issue
A value of 0 is the first rank, -1 means not a member
2014-04-26 11:41:44 +02:00
scrawl
91e50585ff AiWander: make sure to walk, not run 2014-04-26 05:01:26 +02:00
mrcheko
f3626adc86 remake of z-moving in combat for flying/swimming enemies 2014-04-26 00:20:55 +04:00
Marc Zinnschlag
c63d6437c0 Merge remote-tracking branch 'jeffreyhaines/master'
Conflicts:
	apps/openmw/mwbase/mechanicsmanager.hpp
2014-04-25 15:29:23 +02:00
Thomas
f3272c941f Fix for bug #1080, can't read/repair/make potions/use soul gems/rest/sleep while in combat.
The radius for being in combat with the player is fAlarmDistance, which looked like the only pertinent thing.
2014-04-24 22:47:45 -04:00
Jeffrey Haines
42b879a9a5 Reworked the accusation of actors 2014-04-24 22:41:05 -04:00
Jeffrey Haines
c3e08916da Sneak: Added support for state checking
I need advice one what I should do in order to pass mActors over to the
player. Particularly line 139 in player.cpp
2014-04-24 20:40:17 -04:00
Thomas
f6deca7c80 Fixed various issues caused by late-night coding. Also added "unlock" message to unlocked doors 2014-04-23 13:02:51 -04:00
Thomas
61341d4206 Removed mLocked, kept it as "Negative lock level means unlocked" 2014-04-23 10:00:18 -04:00
Thomas
cac8e52154 Seperated locked and lock level, to allow for relocking doors to previous lock level.
The data is stored in the esm as -lockLevel if unlocked; lockLevel if locked. While not tested, it should not present any problems.
2014-04-23 05:12:07 -04:00
Thomas
e71a119c23 Made aifollowers run when long distances (800 or 10000, depending) from what they're following. 2014-04-23 02:57:48 -04:00
mrcheko
fbd0ffe86f enable z-moving for flying/water combatants 2014-04-22 22:59:39 +04:00
mrcheko
f811abb752 pathgrid shortcutting extended 2014-04-20 20:35:07 +04:00
Marc Zinnschlag
a91b386381 Merge remote-tracking branch 'jeffreyhaines/master' 2014-04-20 13:34:58 +02:00
cc9cii
6a1435c49e Remove rotation check that was freezing NPC's. 2014-04-20 17:59:08 +10:00
cc9cii
e17fab891d Suppress travis warning and one more tweak. 2014-04-20 16:49:57 +10:00
cc9cii
2b544d550b Fixed the rotation animation glitch. 2014-04-20 14:27:18 +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
3d26702f5e Make idle actors face the player. Turning animation is not smooth. 2014-04-20 10:36:01 +10:00
cc9cii
9bd31b6236 Added reaction time and moved game setting variables init to the constructor. 2014-04-20 10:06:03 +10:00
Jeffrey Haines
3484df0743 Fixed garage value found in beta's static analysis
Source: https://forum.openmw.org/viewtopic.php?f=6&t=2059#p23844
2014-04-19 19:42:49 -04:00
Jeffrey Haines
6733a1541e Fixes to Crime System
Victimless crimes were removed because victims may not exist in the
case of stealing items.

Is class now uses case insensitive comparison.

Fixed issue with confiscation of stolen items.
2014-04-19 19:03:31 -04:00
cc9cii
3dfd08cf2d Cleanup and little tweaking. 2014-04-20 08:31:02 +10:00
cc9cii
479a94b35d Backing off closed doors working, needs cleanup and tweaking. 2014-04-20 08:14:54 +10:00
Marc Zinnschlag
7eb6a2e52d Merge remote-tracking branch 'scrawl/alarm' 2014-04-18 16:19:28 +02:00
Marc Zinnschlag
34092f9f5d Merge remote-tracking branch 'scrawl/master' 2014-04-18 15:08:30 +02:00
scrawl
b3916e7744 Crime: mark witnesses as alarmed.
Fixes guard dialogue to properly detect if the player turned himself in.
2014-04-18 13:44:09 +02:00
scrawl
4625adfb7f Fix typo in a condition. 2014-04-18 11:43:37 +02:00
cc9cii
7437647f70 Forgot to add a guard :-( 2014-04-18 16:45:31 +10:00
cc9cii
a0fc514df7 Suppress compiler warning. 2014-04-18 15:45:39 +10:00
cc9cii
c652cb1568 More cleaning up. 2014-04-18 15:19:22 +10:00
cc9cii
2447f0f4aa Cleaned up logging statements. 2014-04-18 14:41:44 +10:00
cc9cii
aad13d315c Fixed issue where allowed nodes were being erased. PathFinder was returning an empty path if the closest pathgrid point to the start was also the closest pathgrid point to the goal. Still need to clean up and remove logging statements. 2014-04-18 14:41:44 +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
cc9cii
1ceeeb4a22 Fix movement glitches for actors with low speeds (e.g. a rat). Was caused by false detection of being stuck. 2014-04-18 14:41:43 +10:00
Marc Zinnschlag
86e65944b8 Merge remote-tracking branch 'jeffreyhaines/master'
Conflicts:
	apps/openmw/CMakeLists.txt
2014-04-15 11:31:48 +02:00
Jeffrey Haines
e2fab228f9 Save state is handled correctly now. 2014-04-14 18:11:04 -04:00
Marc Zinnschlag
03b3487f1b minor cleanup 2014-04-07 09:56:36 +02:00
Marc Zinnschlag
fafb7501e3 Merge remote-tracking branch 'cc9cii/PathFinder-split' 2014-04-07 09:48:15 +02:00
Marc Zinnschlag
c7f2cfeca0 Merge remote-tracking branch 'gus/AIFix2' 2014-04-06 15:13:30 +02:00
Jeffrey Haines
a274b48f2f States are saved. Crime is reacted to.
Issues where some crime is ignored. Needs a lot more work
2014-04-05 22:45:40 -04:00
Jeffrey Haines
940c88d2ec Cleaned up code, implemented crime ids
There is a problem with my game freezing. ToggleAi stops my character
2014-04-05 10:26:14 -04:00
Jeffrey Haines
df5cbe5dec Minor changes 2014-04-04 08:10:35 -04:00
cc9cii
28f7c42fb7 One more comment fix. 2014-04-04 18:17:42 +11:00
cc9cii
f59226265a Remove redundant parameter from aStarSearch. Also update some comments. 2014-04-04 18:10:06 +11:00
Jeffrey Haines
70919ba60a Removed witnesses and minor changes 2014-04-03 16:13:14 -04:00
cc9cii
5cf8e7e933 Remove logging. 2014-04-04 06:16:26 +11:00
cc9cii
040d4f8fc4 Move PathgridGraph into separate files. 2014-04-04 06:13:47 +11:00
Jeffrey Haines
0c957a3cde Added witnesses to the mix 2014-04-03 14:53:31 -04:00
cc9cii
a8b2eb1fe9 Make Travis happy. 2014-04-03 22:49:22 +11:00
cc9cii
325d0616bb Cleanup debug statements. 2014-04-03 22:17:45 +11:00
cc9cii
98f77714ce Per-cell pathgrid data and calculation moved off PathFinder. Now the edge cost calculations and strongly connected component searches are done only once per cell. Per-actor data and methods still remain with PathFinder.
This version still has debugging statements and needs cleaning up.
2014-04-03 21:43:44 +11:00
Jeffrey Haines
b1abef7a38 Cleaned up code 2014-04-03 01:07:56 -04:00
Jeffrey Haines
58b135a2be Crime is now checked every frame call 2014-04-03 00:50:09 -04:00
cc9cii
f597d3e88b Use duration rather than frame counts. Stops false detection of being "stuck" with high frame rates (e.g. indoors). 2014-04-03 07:46:26 +11:00
Jeffrey Haines
6f1211dd8d Moved mWitnesses into Player. resetCrime for paying fine. 2014-04-02 12:23:38 -04:00
Jeffrey Haines
7c0b51fb7e Ai pursue now controls guards pursuit of crimes
Should extend AiActivate in the future
2014-04-02 00:18:22 -04:00
Jeffrey Haines
50dac98a2b Feature 1154 & 73: Crime and NPC reactions 2014-04-01 20:24:25 -04:00
Jeffrey Haines
4037f3705e Feature 1154 & 73: NPCs react to crime 2014-04-01 14:15:55 -04:00
megaton
50af9bc0d3 General perfomance optimizations. 2014-03-30 19:45:27 +04:00
Jeffrey Haines
8ce938c6f1 Revert 6b28c06..98fd381
This rolls back to commit 6b28c06b2c.
2014-03-29 22:26:53 -04:00
Jeffrey Haines
98fd381564 Feature #1154 Not all NPCs get aggressive when one is attacked
Compiling fix
2014-03-29 21:25:20 -04:00
Jeffrey Haines
6c866deb1b Feature #1154 Not all NPCs get aggressive when one is attacked
Partially implemented
2014-03-29 21:23:34 -04:00
gus
d9ea7107b7 compile fix. 2014-03-29 18:36:32 +01:00
gus
bee057346b Merge branch 'master' of https://github.com/OpenMW/openmw.git into AIFix2
Conflicts:
	apps/openmw/mwmechanics/aifollow.cpp
2014-03-29 18:05:56 +01:00
Marc Zinnschlag
c7b969821f silenced a warning 2014-03-29 11:11:43 +01:00
cc9cii
ebb1813b9b Minor comment clarification. 2014-03-29 20:17:04 +11:00
cc9cii
07fd801d94 My previous analysis of the pathfinding issue was incorrect. It was in fact caused due to some of the pathgrid points being unreachable. Instead of returning an empty path in such a scenario, incorrect path + requested destination were being returned. There was also a defect where past cost was being used for selecting open points.
There is still an unresolved issue where mGraph and mSCComp are being rebuilt unnecessarily.  The check mCell != cell in buildPath() is being triggered frequently. Not sure why.
2014-03-29 19:35:52 +11:00
cc9cii
267855c44e Prevent NPC suicides off silt the strider platform in Seyda Neen. Added some comments as well. There may be opportunities for some optimization but left that out for now. 2014-03-29 19:35:52 +11:00
cc9cii
90a813ad2c Allow interrupting a walking NPC to trigger a greeting. 2014-03-29 19:35:52 +11:00
Marc Zinnschlag
2c2106205d Merge remote-tracking branch 'scrawl/master' 2014-03-28 09:56:35 +01:00
Jeffrey Haines
2a8bf46607 Trader Gold Reset Delay
Implemented traded gold reset delay.

Note:
Traders gold pool is still in inventory.
2014-03-27 01:23:56 -04:00
scrawl
793649c854 ToggleAI: Report current status on toggle 2014-03-26 19:55:52 +01:00
scrawl
688415ce54 Play deathknockout/deathknockdown animations when appropriate 2014-03-26 18:55:16 +01:00
scrawl
394284d0f8 Fixes #1209: Tarhiel never falls
There are a few pitfalls with this code:
 - Gravity is only considered when applying queued movement. Therefore, make sure to queue some movement every frame. (Could be refactored in the future?)
 - The character controller never detects being in free fall (!World::isOnGround) unless movement has been applied.
2014-03-22 02:08:04 +01:00
scrawl
c8c0e5de38 Fixed code issues found with unity build. Missing include guards, duplicated functions, ... 2014-03-16 23:49:06 +01:00
cc9cii
e6977d00e8 Oops. Fix typo picked up by Zini. 2014-03-15 08:16:35 +11:00
cc9cii
b2e3fa70c2 Fix spelling errors in comments. 2014-03-14 07:04:39 +11:00
cc9cii
d54ae58ec9 Bug #900 fix - minor update to comments 2014-03-14 00:09:03 +11:00
cc9cii
d92740efc9 Bug #900 fix - only fixed AiWonder, AiCombat, AiTravel and others may need a different strategy to this. 2014-03-13 23:44:52 +11:00
scrawl
072dc6d438 Feature #50: Implement marksman mechanics. 2014-03-08 06:03:45 +01:00
scrawl
12de0afb03 Feature #50: Spawn projectiles
Fix a bug in copyObjectToCell.
Make actor rotations more consistent.
2014-03-08 01:31:27 +01:00
scrawl
edb5a54092 Include some more required Ogre headers explicitely. 2014-03-05 21:46:37 +01:00
gus
d84319300a fix 2014-03-05 11:27:16 +01:00
gus
f4879dacd5 add AIfollow to summoned creatures 2014-03-05 11:24:39 +01:00
Marc Zinnschlag
f9d2fde783 Merge branch 'openmw-29'
Conflicts:
	apps/openmw/mwmechanics/aicombat.cpp
2014-03-04 09:34:38 +01:00
cc9cii
5b48ca114f aicombat pathfinding fix - check the correct list 2014-02-25 08:31:14 +01:00
cc9cii
85c467f00f Minor cleanup for aicombat pathfinding workaround. 2014-02-25 08:30:52 +01:00
Marc Zinnschlag
367919200f moved CellRefList into a separate file 2014-02-23 20:11:05 +01:00
gus
95ff869163 Merge branch 'openmw-29' of https://github.com/zinnschlag/openmw.git into AIFix2 2014-02-23 17:07:49 +01:00
cc9cii
1bd2664cb0 aicombat pathfinding workaround 2014-02-23 11:47:25 +01:00
Marc Zinnschlag
7693f712bc started making CellStore into a proper class; encapsulated mCell member 2014-02-21 11:35:46 +01:00
scrawl
d25b3ad9cb Fix AiCombat for creatures with weapons 2014-02-19 11:23:03 +01:00
gus
d8f24ac499 bug fix 2014-02-17 15:49:49 +01:00
Marc Zinnschlag
ea16f79d77 Merge remote-tracking branch 'gus/AIFix2' 2014-02-17 10:54:07 +01:00
gus
84959eea28 woops, thanks scrawl 2014-02-17 10:50:10 +01:00
gus
6e1425321b remove cout spam 2014-02-17 10:43:09 +01:00
Marc Zinnschlag
c18c3e51ee handle IDs that don't exist anymore after loading 2014-02-16 16:23:05 +01:00
Marc Zinnschlag
9788bbcab9 partially store creature state in saved game files (only attributes and dynamics for now) 2014-02-16 15:56:36 +01:00
Marc Zinnschlag
b0532e0c85 store NPC state in saved game files 2014-02-16 15:51:45 +01:00
gus
a315d5cc2b aiactivate works. Bug when you try to use it on a reference that doesn't exist. Need to clran up door.cpp 2014-02-14 12:55:14 +01:00
gus
7c6e27e4f9 Merge branch 'master' of https://github.com/zinnschlag/openmw.git into AIFix2
Conflicts:
	apps/openmw/mwmechanics/aitravel.cpp
2014-02-13 12:59:04 +01:00
Emanuel Guevel
8824af30b4 Allow to display message box outside of dialogue window 2014-02-11 18:26:57 +01:00
Marc Zinnschlag
ffd1783690 Merge remote-tracking branch 'mrcheko/master' 2014-02-11 17:03:50 +01:00
Emanuel Guevel
6a4820c0f7 Show a message when the player attempts to cast a disabled spell 2014-02-11 14:52:58 +01:00
mrcheko
a6be72673c improves animation-controlled velocity check 2014-02-08 16:59:15 +02:00
scrawl
6ce499f0e6 Fixes #848: Use hardcoded animation velocity for first person movement 2014-02-06 04:05:22 +01:00
gus
632834ce10 WIP 2014-02-05 16:12:50 +01:00
scrawl
677fc84223 Refactor actors update 2014-02-05 09:50:21 +01:00
scrawl
7907181c0c Fix uninitialized member 2014-02-05 05:18:11 +01:00
scrawl
ffe19e7a52 Feature #50: Handle attach & release of projectiles 2014-02-05 05:18:11 +01:00
scrawl
8b8fb931a0 Feature #50: Don't allow ranged weapon attack when ammunition is empty 2014-02-05 05:18:10 +01:00
scrawl
a07eaa0c0d Feature #50: Allow body pitch in third person for ranged weapon aiming 2014-02-05 05:18:10 +01:00
scrawl
5ee105c812 Fix typo 2014-02-05 05:18:10 +01:00
scrawl
7cf22391a5 Feature #50: Handle weapon controllers (i.e. bowstring animations, etc) 2014-02-05 05:18:10 +01:00
scrawl
df78357e05 Handle knockout separately (Closes #1151) 2014-02-05 05:18:09 +01:00
mrcheko
688f359a33 discard creatures speed and negative fatique changes 2014-02-03 23:09:26 +02:00
mrcheko
761f13d3ce activate whole-body attack animations 2014-02-02 16:29:51 +02:00
mrcheko
b85a4dd35e pos accum without conformity with animation bug/creature speed 2014-02-02 15:01:49 +02:00
scrawl
49e26415be Don't call loadGame() from within the MWMechanics::Actors update sequence 2014-02-01 18:42:00 +01:00
Marc Zinnschlag
1b5301eec0 Merge branch 'savedgame'
Conflicts:
	apps/openmw/mwbase/mechanicsmanager.hpp
	apps/openmw/mwbase/soundmanager.hpp
	apps/openmw/mwgui/mapwindow.hpp
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
	apps/openmw/mwsound/soundmanagerimp.hpp
	components/esm/loadcell.cpp
2014-02-01 18:16:32 +01:00
scrawl
da34f8bda1 Fix LastHitObject 2014-01-31 04:43:35 +01:00
scrawl
067c2bc2ec Disable combat movements for creatures without weapons 2014-01-31 04:43:35 +01:00
scrawl
7820ea5806 "Always best attack" should only affect the player 2014-01-31 04:43:35 +01:00
scrawl
52f89e9a17 Don't play "idle" voice entries for NPCs with Hello 0
Not entirely sure if this is correct, but it prevents the NPCs in the starting boat from incorrectly playing them.
2014-01-31 04:43:35 +01:00
scrawl
39d86a9468 Improvements to smooth NPC steering 2014-01-31 04:43:29 +01:00
mrcheko
80d8aa4030 bug with sequence of knockouts; giving sense to some hit state code 2014-01-30 23:54:26 +02:00
scrawl
e717694b36 Reset Run stance in AiWander 2014-01-29 15:37:27 +01:00
scrawl
23ffb8a4dc Fixes #1143: Make getCurrentAiPackage return the package that was run last, not the package that will be run in the next frame.
This makes the Mehra Milo script work properly.
2014-01-29 15:37:27 +01:00
scrawl
190512156d Use some more GMSTs for enchanting 2014-01-29 15:37:26 +01:00
scrawl
ea7e0abdc2 Move WhenStrikes skill success to a more appropriate place 2014-01-29 15:37:26 +01:00
scrawl
82146e7f8d Use GMSTs for levelup 2014-01-29 15:37:26 +01:00
scrawl
cc40cec395 Move levelup to NpcStats
The code came from back in the days where NpcStats did not derive from CreatureStats.
2014-01-29 15:37:26 +01:00
mrcheko
3a5da7e6e8 merged with master 2014-01-29 00:03:00 +02:00
Marc Zinnschlag
a473c3f619 some cleanup 2014-01-28 12:36:10 +01:00
Marc Zinnschlag
fd5486864a Merge remote-tracking branch 'gus/AIFix2'
Conflicts:
	apps/openmw/mwbase/mechanicsmanager.hpp
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwmechanics/actors.hpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
2014-01-28 12:33:31 +01:00
mrcheko
e50e94af0b remove CreatureStats::mAttackType, set/getAttackType() 2014-01-27 23:05:17 +02:00
mrcheko
fe0268062d merge with master 2014-01-27 22:38:01 +02:00
gus
846276f747 clean up 2014-01-27 15:14:24 +01:00
mrcheko
45b3aa3d93 corrected things connected to determining attack type 2014-01-26 23:32:57 +02:00
gus
f5d589388c bug fix 2014-01-26 22:06:54 +01:00
gus
764011dd1b clean up 2014-01-26 21:53:55 +01:00
gus
7cb47aa635 new implementation of pathfinding. Works, but need clean up 2014-01-26 21:26:19 +01:00
scrawl
b1066de81d Revert "Merge remote-tracking branch 'mrcheko/master'"
This reverts commit 4e360136b1, reversing
changes made to 047bbe43b2.

Conflicts:

	apps/openmw/mwmechanics/aicombat.cpp
2014-01-26 00:31:44 +01:00
scrawl
a1fbd1fcc8 Revert "Merge remote-tracking branch 'mrcheko/master'"
This reverts commit df7c139e2f, reversing
changes made to fec26342cd.
2014-01-26 00:14:49 +01:00
scrawl
28185e2017 Death/godmode fixes: Revive player *after* character update, since there might be fall damage. 2014-01-25 15:54:24 +01:00
gus
707e579dfe Merge branch 'master' of https://github.com/zinnschlag/openmw.git into AIFix2
Conflicts:
	apps/openmw/mwmechanics/aifollow.cpp
2014-01-24 19:16:50 +01:00
gus
5ca5946760 WIP 2014-01-24 19:13:23 +01:00
scrawl
03cf383be7 Merge branch 'master' of https://github.com/zinnschlag/openmw into savedgame
Conflicts:
	apps/openmw/mwgui/referenceinterface.cpp
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
	apps/openmw/mwscript/cellextensions.cpp
	apps/openmw/mwworld/cells.cpp
	apps/openmw/mwworld/cells.hpp
	apps/openmw/mwworld/cellstore.cpp
	apps/openmw/mwworld/store.cpp
	apps/openmw/mwworld/worldimp.cpp
2014-01-24 18:28:35 +01:00
mrcheko
87e83a92f8 refactoring of setting an attack type 2014-01-23 23:14:20 +02:00
scrawl
ea21d8fec3 Fix CreatureTargetted function 2014-01-22 13:30:45 +01:00
scrawl
f27701cbe8 Detect selling stolen items or enchanting with stolen items 2014-01-22 13:04:55 +01:00
scrawl
264226dfe3 Handle iWereWolfBounty 2014-01-22 12:33:47 +01:00
scrawl
194413c955 Feature #1119: Implement Resistance/Weakness to normal weapons magic effect. Handle fWereWolfSilverWeaponDamageMult. 2014-01-22 12:26:53 +01:00
scrawl
16f5f5862d Feature #956: Implement blocking melee attacks 2014-01-21 23:25:24 +01:00
scrawl
851a7d5014 Feature #957: Handle area effects for "on touch" range 2014-01-21 12:30:15 +01:00
scrawl
c8a9e9f7fa Stop AiCombat when the target is dead 2014-01-20 13:54:10 +01:00
scrawl
205e8aa4e9 Feature #957: Implement area magic 2014-01-20 13:11:29 +01:00
scrawl
df7c139e2f Merge remote-tracking branch 'mrcheko/master' 2014-01-19 21:23:04 +01:00
scrawl
fec26342cd Query the number of animation groups for death/hit animations, since they can vary a lot (argonian/khajiit, creatures, first person..) 2014-01-19 21:11:48 +01:00
mrcheko
339399f8b1 bug fix/logic fix/future suggestion 2014-01-19 22:09:51 +02:00
scrawl
05e75e1214 Closes #1127: Fix for subtitles for idle dialogue appearing outside of hearing range 2014-01-19 20:54:05 +01:00
scrawl
bea161331c Play 'hello' voiced dialogue entries in AIWander 2014-01-19 20:53:58 +01:00
scrawl
9723263730 Bug #1126: Tweak creature attack distance a bit (still no idea where this should come from) 2014-01-19 14:47:58 +01:00
scrawl
4e360136b1 Merge remote-tracking branch 'mrcheko/master'
Conflicts:
	apps/openmw/mwmechanics/aicombat.cpp
	apps/openmw/mwmechanics/character.cpp
	apps/openmw/mwmechanics/character.hpp
2014-01-19 14:01:39 +01:00
scrawl
047bbe43b2 Don't complain about missing jump animations 2014-01-19 13:46:40 +01:00
scrawl
13646a651b Issue #777: Handle creatures with weapons in CharacterController. Move attack strength to CreatureStats. 2014-01-19 13:32:58 +01:00
scrawl
589fbbd871 Issue #777: Create InventoryStore for creatures with weapons/shields 2014-01-19 11:43:23 +01:00
scrawl
69ca03c308 Issue #777: Move DrawState to CreatureStats. All creatures can cast spells, and some creatures have weapons. 2014-01-19 09:43:41 +01:00
scrawl
525ce2f042 Some cleanup - move definitions to implementation file 2014-01-18 10:52:16 +01:00
scrawl
9653355cf1 Feature #701: Spawn levelled creatures in cells 2014-01-18 07:26:27 +01:00
mrcheko
df4df5b094 fixed weapRange for creatures/startcombat script(?) 2014-01-17 23:30:28 +02:00
scrawl
5049f3b134 Fix the group for creature attack animations 2014-01-17 20:18:35 +01:00
mrcheko
a11a6b616b Merge remote-tracking branch 'upstream/master' 2014-01-17 21:00:55 +02:00
mrcheko
435bbdd530 one more mismatch fixed 2014-01-17 20:55:21 +02:00
mrcheko
46a4790cb1 final warnings removal 2014-01-17 20:33:49 +02:00
mrcheko
7df8273d71 fix for everybody 2014-01-17 20:01:15 +02:00
scrawl
3dcb292bc1 Do not soul trap creatures without a soul (which apparently exist) 2014-01-17 18:43:45 +01:00
mrcheko
5357f569e6 fix for scrawl 2014-01-17 19:36:22 +02:00
scrawl
9b32b1403b Feature #960: Implement Creature::hit 2014-01-17 17:19:08 +01:00
scrawl
228254c890 Handle creature attack animations in character controller 2014-01-17 16:31:27 +01:00
scrawl
c548dcee13 Quick keys menu: make sure selected spell still exists 2014-01-17 15:20:22 +01:00
scrawl
e410eb5273 Play 'Idle' voiced dialogue entries in AIWander. Tweak voice max distance. 2014-01-17 10:55:46 +01:00
scrawl
fe66012bcd Closes #1115: Fix a bug causing number of AI packages to grow exponentially when adding an AI package. Not sure if adding the same package twice should even be allowed. 2014-01-17 10:55:46 +01:00
mrcheko
f2ad1c18f2 fix merging problem/some logic fixes 2014-01-16 22:24:05 +02:00
mrcheko
d5f794d4fb update to combat ai behaviour 2014-01-15 22:56:55 +02:00
scrawl
d544551f61 Added getSkill to Class interface, since creatures also have skills (which are provided by generalized Combat, Magic and Stealth attributes which substitute for the specific skills, in the same way as specialization)
Information provided by Hrnchamd.
2014-01-15 15:50:45 +01:00
scrawl
7534fc968d Minor acrobatics fixes 2014-01-15 14:53:30 +01:00
scrawl
28a2585106 Unsheath weapon in AiWander 2014-01-15 14:53:29 +01:00
scrawl
da3295d69c Closes #1106: Move stance to CreatureStats, since creatures also have separate run/walk animations. 2014-01-15 14:53:29 +01:00
scrawl
d0500e8124 Some unneeded includes cleanup 2014-01-15 14:53:28 +01:00
scrawl
de64c57179 Fix some typos and accidental commit 2014-01-15 14:53:28 +01:00
greye
61707694e8 fix memory leak in AISequence 2014-01-14 16:22:50 +04:00
greye
15d946415e minor cleanup
Removed case folding via std::transform, excessive lowerCase()
replaced with ciEqual().
2014-01-14 12:46:53 +04:00
scrawl
52b9ebff9d Closes #1092: Implement sleep interruption. Fix levelled list flags for creatures. Change World::copyObjectToCell to search for the correct cell. 2014-01-14 07:42:03 +01:00
scrawl
69381c49c7 Added a todo comment 2014-01-14 07:39:44 +01:00
scrawl
90b92a8f41 Move levelled list code out of ContainerStore 2014-01-14 05:37:06 +01:00
scrawl
95651857f3 Fix code duplication 2014-01-14 02:52:34 +01:00
scrawl
0d0005c433 Fix fatigue not restoring when waiting 2014-01-14 02:20:13 +01:00
scrawl
73268a8606 Fix skill progress not working 2014-01-13 10:18:03 +01:00
scrawl
cd06b2177d Automatically knock down when fatigue goes below zero 2014-01-13 10:18:03 +01:00
scrawl
413bf127de Allow drain fatigue effect to reduce below zero 2014-01-13 10:18:02 +01:00
scrawl
83872f6bf5 Knockdown / hit recovery improvements. Use formula and GMSTs from research wiki for knockdown determination. Hand-to-hand automatically knocks out when fatigue empty. 2014-01-13 10:18:02 +01:00
Marc Zinnschlag
3e58eb34e4 Merge remote-tracking branch 'sergeyshambir/startcombat'
Conflicts:
	apps/openmw/mwscript/docs/vmformat.txt
2014-01-13 10:17:10 +01:00
gus
5d4e148063 some clean up 2014-01-12 22:47:22 +01:00
gus
5d038423ec attempt to solve Bug #1009 by not building graph every frame 2014-01-12 18:42:31 +01:00
gus
1ae62665d6 get all actors following a given actor 2014-01-12 14:02:40 +01:00
gus
dd870e35db get all actors following a given actor 2014-01-12 14:02:15 +01:00
gus
2446abe076 Allow getting current active package 2014-01-12 14:01:54 +01:00
gus
7e96a391da FollowCell duration = 0 -> infinite time 2014-01-12 11:39:42 +01:00
gus
7066844e52 Follow you until a certain cell is reached 2014-01-12 11:38:58 +01:00
scrawl
f78b846f9e Handle CasterLinked magic effect flag 2014-01-12 10:21:49 +01:00
scrawl
767c72e619 Fix diagonal movement being faster than forward movement 2014-01-12 10:04:06 +01:00
scrawl
1d19d36bd6 Remove unused magic effect flags and update esmtool output 2014-01-12 01:25:00 +01:00
scrawl
921ef6cd9c Closes #1093: Show weapon when initializing the character controller with a weapon equipped 2014-01-12 00:42:27 +01:00
scrawl
44b2380874 Closes #947: Decrease fatigue when running, swimming and attacking 2014-01-11 22:28:50 +01:00
scrawl
dddc0979a2 Fix another fatigue cap issue 2014-01-11 22:28:50 +01:00
gus
051d7141be check position to stop AIFollow 2014-01-11 20:32:38 +01:00
Marc Zinnschlag
b1ffb64a1f Merge remote-tracking branch 'gus/AIFix2' 2014-01-11 14:33:27 +01:00
gus
ccf07f9406 Bugfix 2014-01-11 12:07:10 +01:00
gus
2d66b2c4fa AiFollow. Npc get stuck often (no stuck dtection yet) 2014-01-11 12:06:36 +01:00
gus
f41f08c352 Wrong logic... should improve performances 2014-01-11 12:04:32 +01:00
gus
0609b71df9 fix pathfinding 2014-01-11 11:57:07 +01:00
Marc Zinnschlag
1b03eec63e Merge remote-tracking branch 'scrawl/master' 2014-01-11 11:43:12 +01:00
scrawl
3896c88403 Use VFX_DefaultCast / VFX_DefaultHit if the magic effect does not specify any 2014-01-11 05:58:05 +01:00
scrawl
9127839cc1 Add a searchPtr method as required for getting an owner, which may already be dead and disposed of. 2014-01-11 03:33:17 +01:00
scrawl
909494ff35 Implement Assault crimes. In other words, NPCs now fight back! 2014-01-11 03:08:16 +01:00
scrawl
d4a98ffc27 Increase fight rating when being the victim of a crime 2014-01-11 02:27:44 +01:00
scrawl
aba72ffefe Fix up the merge a bit 2014-01-11 02:12:41 +01:00
scrawl
727aa30347 Dead actors are unaware of everything 2014-01-11 02:06:54 +01:00
scrawl
621e52f09d Play "attack" voiced dialogue entries randomly based on iVoiceAttackOdds. 2014-01-10 22:48:42 +01:00
scrawl
15e48107f7 Use i1stPersonSneakDelta + some cleanup 2014-01-10 22:39:01 +01:00
scrawl
2744cde40f Use a few additional GMSTs 2014-01-10 22:27:31 +01:00
scrawl
3bf36515d5 Implement Trespassing crime 2014-01-10 21:26:24 +01:00
Marc Zinnschlag
f62497dfdc Merge remote-tracking branch 'mrcheko/master' 2014-01-10 19:08:35 +01:00
mrcheko
ffcb7fb280 fix for bug scrawl mentioned 2014-01-10 19:04:07 +02:00
mrcheko
d41f27451b appropriate camera vanity<>preview mode switch + hit recoils fix 2014-01-09 23:36:40 +02:00
Marc Zinnschlag
85707b5e3e Merge remote-tracking branch 'scrawl/master' 2014-01-09 09:35:54 +01:00
scrawl
223c1d5a38 Use GMSTs for crime bounty 2014-01-09 02:20:52 +01:00
scrawl
6f9113fe88 Add preliminary implementation of PayFine, PayFineThief and GoToJail instructions 2014-01-09 01:49:58 +01:00
scrawl
0f5dc59176 Remove useless dependencies on InventoryWindow for getting player gold. Don't use string literals for gold_001 id, just to be sure. 2014-01-08 23:37:46 +01:00
Marc Zinnschlag
a7be755db0 Merge remote-tracking branch 'mrcheko/master' 2014-01-08 20:13:31 +01:00
scrawl
9baa1bef78 Expell player from faction when committing a crime against a faction member 2014-01-08 19:26:03 +01:00
scrawl
19d63f392f Clean up the NpcStats expelled interface. Show message box when expelled. 2014-01-08 18:59:00 +01:00
scrawl
098f9712f1 Add getPlayerPtr() utility method. Reduces dependencies a lot. 2014-01-08 18:39:44 +01:00
scrawl
7b33f6f2ac Detect crime of sleeping in other NPC's beds. ShowRestMenu needs to support an explicit/implicit reference for this. 2014-01-08 17:19:43 +01:00
scrawl
b99ca92fee Add missing line of sight check 2014-01-08 17:18:13 +01:00
mrcheko
46519062d3 hit recoils/knockdowns feature 2014-01-08 16:05:14 +02:00
scrawl
2bb21f2f76 Don't copy NpcStats/CreatureStats unnecessarily. Fixes a bug: taunt actions would not correctly increase the target's fight rating. 2014-01-08 02:35:36 +01:00
scrawl
c85c2cff4e Fix disposition changes from trades not applying properly 2014-01-08 01:46:42 +01:00
scrawl
0285d18fc2 Respect items belonging to a faction 2014-01-07 20:24:01 +01:00
scrawl
3c0080d2c1 Implement theft detection 2014-01-07 19:58:17 +01:00
scrawl
d2d76f4f47 Fix disintegration bug 2014-01-07 19:21:19 +01:00
scrawl
90b55c8d4b Use Ogre's asin/acos functions which will protect against NaNs 2014-01-07 17:09:08 +01:00
scrawl
780bf5a2cd Implement pickpocket detection. Play a voiced dialogue entry when detected. 2014-01-07 03:01:33 +01:00
Sergey Shambir
5c7e39a92f Implemented script commands StartCombat, StopCombat, GetTarget.
Also renamed one field of AIWander class because it's not longer
unknown.
2014-01-07 04:43:06 +04:00
scrawl
887db76ed2 Don't consider swimming or in-air characters as sneaking 2014-01-07 01:22:04 +01:00
scrawl
29c823b9d4 Implement awareness check function. Use this for combat AI and GetDetected instruction. 2014-01-07 00:51:09 +01:00
scrawl
4a3d148a48 Fixes #1089 (skill increases) 2014-01-07 00:37:52 +01:00
mrcheko
2591ff2d5a bug repairing 2014-01-06 22:00:01 +02:00
scrawl
62774fcc4a Merge branch 'master' into HEAD
Conflicts:
	apps/openmw/mwbase/world.hpp
	apps/openmw/mwinput/inputmanagerimp.cpp
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwworld/worldimp.cpp
	apps/openmw/mwworld/worldimp.hpp
	components/esm/loadtes3.cpp
2014-01-06 00:23:17 +01:00
scrawl
dde2cd5d5a Fix some code that still used setCount directly instead of using the ContainerStore interface. Also fix a related annoyance with the interface. 2014-01-05 20:53:45 +01:00
scrawl
44e96fcaaa Implement Charm magic effect 2014-01-05 01:56:36 +01:00
scrawl
14b70a3ce6 Implement AI related magic effects (calm, frenzy, rally, demoralize, turn undead) 2014-01-05 01:34:35 +01:00
scrawl
f4517c8221 For dialogue filtering, use the Vampirism magic effect instead of the untouched NpcStats::mVampire 2014-01-04 20:50:18 +01:00
mrcheko
7002412760 resolve conflict in character.cpp 2014-01-04 17:55:09 +02:00
scrawl
557652112f Show the target HP bar also when casting a heal effect (same as MCP) 2014-01-04 04:21:44 +01:00
scrawl
be2ebc5cac Closes #1081: Implement disease contraction 2014-01-03 23:33:14 +01:00
scrawl
e9bd43e2da Use GMSTs for bound items/creatures 2014-01-03 20:54:14 +01:00
scrawl
b22dd40b41 Implement Paralyze magic effect 2014-01-03 17:06:05 +01:00
scrawl
55c5d7cee4 Implement Resurrect instruction 2014-01-03 15:54:23 +01:00
scrawl
b4230f716e Implement RemoveEffects instruction 2014-01-03 05:19:10 +01:00
scrawl
7d8ca91286 Implement RemoveSpellEffects instruction 2014-01-03 05:18:44 +01:00
scrawl
366801f3d5 Implement explodeSpell instruction (like Cast, with caster = target) 2014-01-03 04:44:50 +01:00
scrawl
b42240be6d Implement Damage/restore skill/attribute effects. Use dedicated classes for skill and attribute values (instead of Stat<T>) since there are some important differences. 2014-01-03 03:48:43 +01:00
scrawl
32ff3b530c Change all instances of skill/attribute values to use an appropriate typedef. 2014-01-03 01:59:15 +01:00
scrawl
623cdef69f Code cleanup 2014-01-02 21:49:12 +01:00
scrawl
299690631f Implement SoulTrap magic effect 2014-01-02 21:21:28 +01:00
mrcheko
79e972bdb6 resolved accompanying minor problems 2014-01-02 21:54:41 +02:00
scrawl
596e0c8a49 Correct Dispel effect (use magnitude as chance) 2014-01-02 20:15:07 +01:00
scrawl
94d2ec8e4e Add missing spells update 2014-01-02 20:02:28 +01:00
Marc Zinnschlag
a6e6411686 Merge remote-tracking branch 'scrawl/master' 2014-01-02 12:12:52 +01:00
scrawl
783c501d70 Some checks to prevent bound item abuse 2014-01-02 01:36:08 +01:00
scrawl
590c8cb4a0 Implement Disintegrate effects. When an armor/weapon breaks, unequip it and do not allow equipping it again. 2014-01-02 01:03:44 +01:00
mrcheko
16e10cc702 error fix 2014-01-01 22:46:29 +02:00
scrawl
bfc9fcf2cd Add starting spells when building player (F_PCStart flag) 2014-01-01 21:34:00 +01:00
mrcheko
09a0a69b04 more improvements 2014-01-01 21:40:31 +02:00
Marc Zinnschlag
e1355be47c Merge remote-tracking branch 'lgro/valgrind_warnings' 2014-01-01 19:41:52 +01:00
scrawl
8e5cae1081 Implement mark/recall magic effects 2014-01-01 17:06:21 +01:00
scrawl
69ba8a40bf Fix weird formatting added during the merge 2014-01-01 16:13:20 +01:00
scrawl
b3cd10dbea Remove redundant setTeleported calls 2014-01-01 15:18:25 +01:00
Marc Zinnschlag
c3482b6f24 Merge remote-tracking branch 'scrawl/master'
Conflicts:
	apps/openmw/mwmechanics/spellcasting.cpp
2014-01-01 15:05:42 +01:00
Marc Zinnschlag
5fa9aa5d1e Merge remote-tracking branch 'lgro/issue417_apply_weather_instantly_when_teleporting'
Conflicts:
	apps/openmw/mwworld/weather.cpp
	apps/openmw/mwworld/worldimp.cpp
2014-01-01 14:57:14 +01:00
scrawl
ea3b88951a Implement divine/almsivi intervention magic effects 2014-01-01 02:22:11 +01:00
Lukasz Gromanowski
e9844e1b37 Fixes #417: Apply weather instantly when teleporting
Changed teleporting detection from "position tracking" to manually
setting "teleportation" flag ( player->setTeleported(true) ).

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-31 20:40:23 +01:00
mrcheko
a8fb1ae51c improved, added knockdown after falling 2013-12-31 17:55:04 +02:00
mrcheko
d6345bce91 added npc hit reactions 2013-12-31 13:24:20 +02:00
Lukasz Gromanowski
5c5f87445b Fixes for "Conditional jump or move depends on uninitialised value(s)"
and memleaks reported by valgrind.

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-30 21:47:06 +01:00
scrawl
79a440e94a Many additions to 900bc06d2c:
- Fix indentation
 - Consider any kind of light, not just torch_infinite_time
 - Hostile NPCs should also wear lights, if they have nothing else that could use the slot (or a twohanded weapon)
 - Remove redundant code and don't add additional lights to the inventory
 - World::isDark returns false for interiors which are unaffected by weather
2013-12-30 17:57:41 +01:00
Marc Zinnschlag
6de39a7329 Merge remote-tracking branch 'lgro/issue845_NPCs_hold_torches_whole_day'
Conflicts:
	apps/openmw/mwmechanics/character.cpp
2013-12-29 15:00:31 +01:00
scrawl
17ff8165d2 Closes #1065: Don't apply fall damage when landing in water 2013-12-29 00:36:36 +01:00
scrawl
2a8ab932ef Bug #951: Only recalculate derived stats when attributes change 2013-12-28 17:19:35 +01:00
scrawl
85ec80100c Bug #1005: Hide torches/shields during spellcasting and hand-to-hand combat 2013-12-27 22:00:16 +01:00
scrawl
7265b427fe Bug #1013: Rewrote fall height detection 2013-12-27 21:21:18 +01:00
scrawl
686d9efac3 Bug #1060: Fix incorrect spell type checks 2013-12-27 18:58:35 +01:00
scrawl
a3017e16d4 Don't allow changing the spell that is being cast mid-animation 2013-12-26 22:32:39 +01:00
scrawl
5054d8e6c1 Bug #1055: Check power use and mana before starting cast animation 2013-12-26 22:06:13 +01:00
Lukasz Gromanowski
900bc06d2c Fixes #845: NPCs hold torches during the day
Moved 'equipping torches at night and unequipping at day' code from Character
to Actors class.

Removed unneeded showLights method (introduced in previous commits)
from animation/npcanimation classes.

Since this commit autoEquip() method doesn't automatically equip lights.

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-20 22:38:23 +01:00
Lukasz Gromanowski
abc126e2af Fixes #845: NPCs hold torches during the day
Added check for Player character so it won't be affected by showing,
or hidding torches.

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-20 01:01:30 +01:00
Lukasz Gromanowski
6eb674e4e5 Fixes #845: NPCs hold torches during the day
Added equipping/unequipping torches.

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-20 00:18:34 +01:00
Lukasz Gromanowski
92072d968b Fixes #845: NPCs hold torches during the day
Simplified a bit code which shows and hides light.

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-19 21:11:07 +01:00
mrcheko
3816a09c6f bug 428 ask to load recent saved game 2013-12-19 22:08:34 +02:00
mrcheko
f50ff0b1c4 reworked http://bugs.openmw.org/issues/428 2013-12-16 15:40:47 +02:00
mrcheko
fd9f8c34f6 bug fix http://bugs.openmw.org/issues/428 2013-12-15 18:50:25 +02:00
Lukasz Gromanowski
91a4d9a2eb Fixes #845: NPCs hold torches during the day
Added method in WeatherManger and World which returns true if it is night.
This method is used later in character controller to show torches
(or other sources of light) at night and hide them at day.

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-10 23:48:49 +01:00
Emanuel Guevel
fc8bd1aacb Allow fatigue stat to become negative when fatigue damages are taken 2013-12-09 21:53:04 +01:00
Marc Zinnschlag
77a2179d1e Merge remote-tracking branch 'scrawl/master' 2013-12-09 18:39:34 +01:00
scrawl
0bc3a13c0f Break invisibility on Use or Activate 2013-12-08 23:36:37 +01:00
scrawl
37a7ee8fcd Set alpha value of character animations according to Invisibility / Chameleon effects. 2013-12-08 23:05:21 +01:00
Lukasz Gromanowski
594cc693b2 Fixes #1006: Many NPCs have 0 skill
Added calculation of skill values for NPC with mNpdtType
set to NPC_WITH_AUTOCALCULATED_STATS (their NPDT is 12).

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-08 21:47:43 +01:00
Marc Zinnschlag
1c13a9037a save and load dynamic records 2013-12-07 13:17:28 +01:00
Marc Zinnschlag
030c733e2d Merge branch 'master' into savedgame
Conflicts:
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwworld/worldimp.cpp
	files/settings-default.cfg
2013-12-07 12:27:06 +01:00
Lukasz Gromanowski
bfd79bfbe6 Various fixes for CppCheck warnings.
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-06 07:36:16 +01:00
Marc Zinnschlag
e818d43bc3 removed an outdated typedef and some dead code 2013-12-05 13:21:26 +01:00
scrawl
4b4025ed0f Keep the player's CharacterController when changing cells. Fixes several glitches. 2013-11-30 11:01:45 +01:00
scrawl
0e267b79ec Don't heal dead actors when resting 2013-11-29 20:21:57 +01:00
scrawl
076cc9230b First try at handling target magic 2013-11-28 17:31:17 +01:00
scrawl
49ea1aae67 Use GMST for sun damage reduction 2013-11-26 15:01:22 +01:00
scrawl
eba068149d Fix AIWander crash 2013-11-25 15:38:18 +01:00
scrawl
14c9a4e1d3 Cap enchantment casting cost to 1 as displayed in enchanting window. Display current enchantment charge in spell window. 2013-11-23 23:12:54 +01:00
scrawl
4aa9f3bcef Don't set the enchanted item in HUD for "WhenStrikes" enchantments 2013-11-23 22:48:56 +01:00
scrawl
d2ed77f3f2 Fix shields being visible during spellcasting 2013-11-23 20:24:52 +01:00
scrawl
320ba98097 Correct getDerivedDisposition according to wiki (check if player expelled) 2013-11-21 17:19:41 +01:00
scrawl
bab657fe2b Add a utility function to add items to a ContainerStore by RefID 2013-11-21 17:14:30 +01:00
scrawl
800a2845b0 Add Bound & Summon effects (will need some adjustments later) 2013-11-21 17:14:23 +01:00
scrawl
bf153e1c8e Fix bug applying instant effects 2013-11-21 00:41:52 +01:00
scrawl
4ed4c1e319 Add Vampirism and Sun Damage effects. Some fixes. 2013-11-21 00:41:31 +01:00
scrawl
0b9676aaa3 Fix an issue with the AI code 2013-11-19 18:43:32 +01:00
scrawl
38a82c4b0b Add a todo comment 2013-11-19 18:43:21 +01:00
scrawl
f3ff2e4260 Handle Unreflectable flag 2013-11-19 17:33:02 +01:00
scrawl
c03c82c78a Apply disease resistance manually as according to wiki 2013-11-19 17:15:17 +01:00
Marc Zinnschlag
8190fdb16c Merge remote-tracking branch 'scrawl/master' 2013-11-19 16:56:18 +01:00
scrawl
654b7d9ba5 Apply disease resistance manually as according to wiki 2013-11-19 16:52:26 +01:00
scrawl
e8dcd74741 Recharge enchanted items in player's inventory over time 2013-11-19 16:42:24 +01:00
Marc Zinnschlag
11e254aac8 Merge remote-tracking branch 'gus/AICombat'
Conflicts:
	apps/openmw/CMakeLists.txt
	apps/openmw/mwbase/mechanicsmanager.hpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
2013-11-19 09:10:48 +01:00
scrawl
74e42a2d02 Add missing skill increases for Enchant skill 2013-11-19 07:39:07 +01:00
gus
dff3cf162d ToggleAI script instruction 2013-11-18 23:03:44 +01:00
Marc Zinnschlag
f45cff8aff flag game as ended when player dies 2013-11-18 15:38:08 +01:00
gus
4559e932ae AI packages have priority and combat is triggered in actor.cpp using the Hostile setting in CreaturesState 2013-11-18 12:33:09 +01:00
scrawl
6902569d03 Implement Absorb effects (AbsorbHealth, etc) 2013-11-18 05:01:36 +01:00
scrawl
a420698237 Don't try to absorb or reflect for self casted spells 2013-11-17 23:41:24 +01:00
scrawl
0dc2e829dd Lots of cleanup. Implemented Absorb and Resist. Implemented several instant effects. Added hand VFX. 2013-11-17 23:31:08 +01:00
scrawl
fc268bf302 Initialize mFallHeight 2013-11-17 23:31:08 +01:00
scrawl
47fc3f81f5 Don't update actors while paused 2013-11-17 23:31:08 +01:00
scrawl
2a11618ee7 Make sure the equipped weapon HUD icon is updated properly 2013-11-17 23:31:07 +01:00
scrawl
aa84ce3f0d Copy paste mistake (oops) 2013-11-16 14:44:31 +01:00
scrawl
7474e87edc Implement RestoreHealth/Magicka/Fatigue 2013-11-16 05:06:54 +01:00
scrawl
bb43ec9b35 Implement damage tick effects 2013-11-16 03:16:21 +01:00
scrawl
b1a29eb27e Implement Resist & Weakness effects 2013-11-16 02:34:43 +01:00
scrawl
d49b6f19ff Don't advance acrobatics skill for NPCs 2013-11-16 02:11:11 +01:00
scrawl
c73217627e Move code for listing effect sources to the spell management classes 2013-11-15 20:29:47 +01:00
scrawl
da85f3e575 Use the formula from the wiki for spell success. 2013-11-14 19:19:32 +01:00
scrawl
9c5847e2f4 Fix VFX not getting removed when an actor dies 2013-11-14 14:52:30 +01:00
scrawl
992a8e9c36 Refactor NpcAnimation: get rid of delayed update (no longer required), make sure that the Animation is set up *before* the inventory store is accessed anywhere (which now triggers auto equip and animation update). Allows better tracking of magic VFX for permanent enchantments in InventoryStore. 2013-11-14 14:41:10 +01:00
scrawl
0b5f5351b5 Fix continuous FX getting removed instantly 2013-11-14 13:30:48 +01:00
scrawl
ff7e4174f9 Fix some leftover code that still calculated random magnitude per spell rather than per effect. Major cleanup of InventoryStore: Magic effects are now updated when needed, rather than cached. Also allows to get rid of 'mutable' hacks and non-const method that should be const. Play sounds and particles when equipping a permanent enchantment item. 2013-11-13 18:51:28 +01:00
scrawl
a6e2f43b75 Stop continuous VFX when the effect is no longer active. 2013-11-13 15:44:43 +01:00
scrawl
9b0e82a37f Projectile models are now spawned (no movement or impact yet). Refactored trap activation to apply range types properly. Handle ContinuousVFX for magic effects (note they aren't stopped yet when the effect ends) 2013-11-13 14:02:15 +01:00
scrawl
0627e23d3c Fix wrong skill level for spell success formula. 2013-11-13 01:26:25 +01:00
scrawl
eccb8f38ba Apply "cast when strikes" enchantments when hitting with a weapon 2013-11-12 02:07:51 +01:00
scrawl
ffdb91bb21 Add particles for Cast + Hit. Not looking quite right yet. 2013-11-11 23:43:28 +01:00
scrawl
6f3d737498 Missing const, thanks to jeaye 2013-11-10 23:27:11 +01:00
scrawl
1773c70455 Merge branch 'master' of https://github.com/zinnschlag/openmw into magic 2013-11-10 22:03:17 +01:00
Marc Zinnschlag
ef8360f346 silenced a warning 2013-11-10 21:45:27 +01:00
scrawl
6cd373c5c6 Only allow using powers once every 24 h. Apply on touch effects. 2013-11-10 15:40:31 +01:00
scrawl
71828351e6 Code cleanup: use enum instead of integer 2013-11-10 15:28:26 +01:00
Emanuel Guevel
aefa54d72d Pass item count to ManualRef constructor
This remove the need to call setCount in multiple places.
2013-11-10 02:45:16 +01:00
Emanuel Guevel
2786530430 Edit InventoryStore::equip() to call the new unequipSlot function…
…to unequip previously equipped item.
2013-11-10 02:45:16 +01:00
Emanuel Guevel
10abb9d297 Call ContainerStore::remove() to remove items from inventory
Make placeObject() and dropObjectOnGround() in MWWorld to copy objects
(and indicate it clearly).

Enchanting an item now unequips it.
2013-11-10 02:45:16 +01:00
scrawl
3e58655a90 Implemented Fortify/Drain skill magic effects. Scroll of icarian flight works! 2013-11-09 10:49:00 +01:00
scrawl
cbe96a2170 Refactor ActiveSpells to track range type. Added basic self range magic. 2013-11-09 07:51:46 +01:00
gus
683b8d77dd build fix (thanks travis) 2013-10-31 11:02:26 +01:00
gus
d587f3c946 Merge branch 'master' of https://github.com/zinnschlag/openmw.git into AICombat
Conflicts:
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwscript/docs/vmformat.txt
2013-10-31 09:51:17 +01:00
gus
02ded18fc5 Linux backslash fix 2013-10-31 09:43:12 +01:00
gus
2a927f65d3 perfomances optimisations (pathfinding is computed less often, max 4 times per sec) 2013-10-30 20:52:23 +01:00
gus
650a112e2e better timer 2013-10-30 20:42:50 +01:00
gus
a6e7c6c104 disable AI combat for creatures 2013-10-28 23:04:46 +01:00
gus
0e86209224 linux fix :p 2013-10-28 18:33:10 +01:00
gus
b7a9243173 fighting should stop when the target is dead 2013-10-28 18:22:36 +01:00
gus
12d8b4e0f8 bugfix 2013-10-28 18:13:07 +01:00
gus
2d84f7d33d NPC run 2013-10-28 18:10:00 +01:00
gus
d7584f9df7 getLineOfSight, no script instruction yet 2013-10-28 18:01:40 +01:00
gus
2515a1239e improved combat conditions 2013-10-27 14:22:51 +01:00
gus
968968502e NPC always face you when fighting 2013-10-27 14:03:58 +01:00
gus
a0edb55f60 only NPC with fight over 80 will attack you now 2013-10-27 13:50:29 +01:00
gus
882b136b35 bugfix of bugfix ^^ 2013-10-27 13:21:16 +01:00
Marc Zinnschlag
19bd0f90b9 Merge remote-tracking branch 'rainChu/torches' 2013-10-16 21:24:45 +02:00
Alex "rainChu" Haddad
2643214ca6 Lights extinguish underwater 2013-10-15 21:50:32 -04:00
Alex "rainChu" Haddad
30ee3c5cf6 Equipped torches and lights run out of fuel 2013-10-15 21:50:14 -04:00
Emanuel Guevel
dcfff79460 Regenerate fatigue over time 2013-10-13 00:40:27 +02:00
Marc Zinnschlag
458c752425 Merge remote-tracking branch 'mckibbenta/tgm' 2013-10-12 13:38:10 +02:00
gus
94069e3a7e bugfix 2013-10-07 20:30:12 +02:00
gus
1ac3d99c78 pathfinding now works in AICombat. 2013-10-07 10:20:02 +02:00
Emanuel Guevel
2abe5c1c9a Acrobatics: do not apply fall damages when slowfalling spell effect is active
If spell effect ends up in mid-air, calculate fall height from then.
2013-10-02 23:34:25 +02:00
Emanuel Guevel
6e09a5fb4a Acrobatics: reinit fall height at current height rather than zero
To prevent problems.
2013-10-02 23:34:25 +02:00
Emanuel Guevel
2b992ef3b5 Acrobatics: use calculated fatigueTerm 2013-10-02 23:34:24 +02:00
Emanuel Guevel
4c151e59a2 Acrobatics: do not touch modified stats 2013-10-02 23:34:24 +02:00
Emanuel Guevel
4860514865 Acrobatics: cosmetic changes 2013-10-02 23:34:24 +02:00
mckibbenta
857deb3723 Merge branch 'master' into tgm 2013-10-02 13:54:03 -04:00
mckibbenta
073f64c8bb stop weapon condition degredation (for the player) with tgm on 2013-10-02 13:46:33 -04:00
Emanuel Guevel
b8c60dabb3 Reintroduce Acrobatics changes made by Glorf
Advance Acrobatics skill on jump and on landing,
apply fall damage on landing.
2013-10-01 23:35:34 +02:00
gus
83a375b55d AI now continue to hit you.
TODO: change the way time is handled
2013-09-28 21:17:06 +02:00
gus
2537384c50 bug fix 2013-09-28 12:25:37 +02:00
gus
9353f4d14f WIP AI combat 2013-09-25 18:01:36 +02:00
Marc Zinnschlag
94bb97e766 replacing tabs with spaces 2013-09-21 08:40:00 +02:00
Marc Zinnschlag
96b181bb54 Merge remote-tracking branch 'xethik/master' 2013-09-21 08:07:00 +02:00
Xethik
094e4d93b7 Generally speaking, you should never compare iterators from two different compilers
http://stackoverflow.com/questions/4657513/comparing-iterators-from-different-containers
It seems like this was just an overlook that happened to work on most systems. I was not able to thoroughly test this change, but it fixed an issue I was having in VC10.
It's possible the prev.end() was a copy paste error that was meant to be new.end() anyways.
2013-09-20 21:38:10 -04:00
mckibbenta
6bb6ba6372 added god mode comment 2013-09-15 16:12:59 -04:00
mckibbenta
89b7d6121d Initial toggleGodMod/tgm instruction. Currently only affects player health. 2013-09-12 08:30:00 -04:00