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

436 commits

Author SHA1 Message Date
scrawl
3801dfb4ba Add delay to sneak icon update and skill progress (Fixes #1321) 2014-06-17 04:05:27 +02:00
scrawl
ffb6f5d555 Use fFight<Crime> GMSTs to control attacks in response to crimes 2014-06-17 04:05:27 +02:00
scrawl
28feb260eb Implement disposition/distance based aggression (Fixes #1520) 2014-06-16 20:05:53 +02:00
scrawl
ee2b81763e Savegame: Store AiSettings and summoned creatures
CreatureStats state is now completely stored (Closes #1174)

Also play VFX_Summon_Start and VFX_Summon_End visual effects.
2014-06-15 21:19:37 +02: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
e458cf1df2 Savegame: Store death counter (Fixes #1477) 2014-06-13 02:26:53 +02:00
mrcheko
979128b2c5 Combat music; some minor combat fixes 2014-06-10 14:20:29 +04:00
mrcheko
698cbba6ef old bug + comment fix 2014-06-09 23:02:06 +04:00
Marc Zinnschlag
0668019c86 Merge remote-tracking branch 'scrawl/master' 2014-06-06 19:09:24 +02:00
Hallfaer Tuilinn
01283f531e Fix for Bug #1409 2014-06-06 15:13:25 +02:00
scrawl
f53e86cad9 Fix AiCombat being incorrectly added to player (Fixes #1356) 2014-06-05 21:51:57 +02:00
scrawl
d2ad2e0f31 Re-enable collision when an actor is resurrected 2014-06-02 20:45:25 +02:00
Marc Zinnschlag
f0d0a31a19 Merge remote-tracking branch 'mrcheko/master' 2014-05-26 10:08:40 +02:00
mrcheko
8fa7fcdbee fix bug http://bugs.openmw.org/issues/1335 (1304 as well)
though fish detects if actor is swimming, but in MW it attacks even if
the player is knee-deep in water
2014-05-25 21:03:37 +04:00
scrawl
039398c8ae Basic RefData and CellRef change tracking
Wrapped item charge handling in getItemHealth function
2014-05-25 14:30:07 +02:00
Emanuel Guevel
1e4a854433 Remove static method MWWorld::Class::get(&Ptr)
It was just adding a level of indirection to Ptr.getClass().
All the call were replaced by that instead. The number of lines changed
is important, but the change itself is trivial, so everything should be
fine. :)
2014-05-22 20:50:00 +02:00
Marc Zinnschlag
56c4367c1a Merge remote-tracking branch 'mrcheko/master' 2014-05-18 18:42:23 +02:00
mrcheko
69c1eb28c5 travis compile fix 2014-05-18 14:39:04 +04:00
mrcheko
aa5647b45e merge master, resolve conflicts 2014-05-17 19:20:57 +04:00
scrawl
92c5bb56e0 Un-reverted actorId for AiPursue 2014-05-17 05:34:54 +02:00
scrawl
e266aff561 Savegame: store projectiles 2014-05-17 05:24:32 +02:00
scrawl
36d9ae17cc Revert "Change all AI packages (except AiActivate) to use ActorIds"
Causes potential infinite loops (AiSequence::fill -> AiPackage() -> getCreatureStats -> ensureCustomData -> ..)

This reverts commit 2e9985c1a3.
2014-05-16 12:11:34 +02:00
mrcheko
5be37f04ef Feature 1314: make npc fight creatures 2014-05-16 00:03:48 +04:00
scrawl
b16d444f0f Fix never clearing graveyard. Oops 2014-05-15 10:05:35 +02:00
scrawl
2e9985c1a3 Change all AI packages (except AiActivate) to use ActorIds
More robust in case the target changes cell or there are multiple targets with the same RefId
2014-05-15 09:54:10 +02:00
scrawl
9052cc4a57 Savegame: store ActiveSpells 2014-05-14 23:54:15 +02:00
scrawl
dfacf8c044 Change ActiveSpells to use ActorId 2014-05-14 07:14:08 +02:00
scrawl
7697ab37e0 Fixes #1129: Change summoned creatures to use ActorId
Gracefully handles summoned creatures that are left behind in inactive cells.
2014-05-14 06:37:31 +02:00
scrawl
e591d23880 Fixes #894: Make sure the player's CharacterController is updated when the player is rebuilt. Necessary if the race is changed while we are still in a GUI (e.g. in the review dialog), and an update normally wouldn't occur. 2014-05-13 19:01:02 +02:00
scrawl
386604bc9d Fixes #869: Added methods to control external and internal collision modes separately
When an actor dies, we should only disable external collisions, i.e. prevent other actors from colliding with the dead body. The dead actor, however, should still have gravity and collision applied.

Also moved disableCollision to when the death animation finishes, not as soon as the actor's health is 0.
2014-05-13 01:43:52 +02:00
mrcheko
725f6cac5e AiPursue infinite package updating bug resolved 2014-05-13 00:05:30 +04:00
Marc Zinnschlag
729e079b0b Merge remote-tracking branch 'scrawl/master' 2014-05-06 20:18:19 +02:00
scrawl
1c8c26072d Crime and self defense fixes
- NPCs should still shout messages such as "thief" even if they did not report the crime
 - Fixed self defense for NPCs (they no longer attack the player when they were attacked by a non-player actor)
 - Fixed self defense for creatures (Fixes #1203)
2014-05-06 19:15:43 +02:00
scrawl
dd9117809d Say an attack phrase when combat starts
Move combat start to a helper method

Added some todo comments
2014-05-06 00:13:31 +02:00
Jeffrey Haines
d4812c3af9 fixed placement of else statement 2014-05-04 17:54:33 -04:00
Jeffrey Haines
78f76842a6 Added else statement
Its still dodgy though
2014-05-04 16:56:30 -04:00
Jeffrey Haines
7d5dab214c #58 - Sneak Skill: functional sneaking
Removed sneak checking from individual actor update.
Added sneak checking to Actors::update()
2014-05-04 16:20:09 -04:00
Jeffrey Haines
a65e8393bb Merged files 2014-05-04 11:33:27 -04:00
Jeffrey Haines
a469444e53 Player can't detect self 2014-05-04 08:05:32 -04:00
Jeffrey Haines
e1e23447f2 Removed initial check form setSneak
It wasn’t needed.
2014-05-03 13:16:07 -04:00
Jeffrey Haines
05e326bdc3 Added update sneak to actors
Intends to check the state of a players sneak by asking the question if
each npc can see the player.
2014-05-03 12:48:07 -04:00
scrawl
7bddfc0025 Fix some spelling mistakes. 2014-05-03 12:23:22 +02:00
scrawl
122e606e30 Crime: improvement to arrest on sight for large bounties
iCrimeThreshold controls the needed bounty to have guards run to the player and force dialogue. In vanilla, the greeting dialogue is scripted to either arrest the player (< 5000 bounty) or present a death sentence and attack (>= 5000 bounty).
2014-05-03 12:17:44 +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
scrawl
0796815da0 Ignore dead actors in getActorsFollowing/Fighting
Prevents dead enemies from disallowing resting near them
2014-04-28 11:44:56 +02:00
scrawl
1da99d9fc7 Remove unused variable 2014-04-28 10:26:24 +02:00
Thomas
c2127845af Added onKnockdown command 2014-04-27 20:54:22 -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
Thomas
c2b692e124 getActorsFollowing/Fighting no longer returns dead actors 2014-04-26 17:21:53 -04: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
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
Marc Zinnschlag
86e65944b8 Merge remote-tracking branch 'jeffreyhaines/master'
Conflicts:
	apps/openmw/CMakeLists.txt
2014-04-15 11:31:48 +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
Jeffrey Haines
70919ba60a Removed witnesses and minor changes 2014-04-03 16:13:14 -04:00
Jeffrey Haines
0c957a3cde Added witnesses to the mix 2014-04-03 14:53:31 -04:00
Jeffrey Haines
58b135a2be Crime is now checked every frame call 2014-04-03 00:50:09 -04:00
megaton
50af9bc0d3 General perfomance optimizations. 2014-03-30 19:45:27 +04: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
scrawl
12de0afb03 Feature #50: Spawn projectiles
Fix a bug in copyObjectToCell.
Make actor rotations more consistent.
2014-03-08 01:31:27 +01:00
gus
f4879dacd5 add AIfollow to summoned creatures 2014-03-05 11:24:39 +01:00
scrawl
677fc84223 Refactor actors update 2014-02-05 09:50:21 +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
mrcheko
3a5da7e6e8 merged with master 2014-01-29 00:03:00 +02: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
fe0268062d merge with master 2014-01-27 22:38:01 +02:00
gus
846276f747 clean up 2014-01-27 15:14:24 +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
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
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
scrawl
205e8aa4e9 Feature #957: Implement area magic 2014-01-20 13:11:29 +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
589fbbd871 Issue #777: Create InventoryStore for creatures with weapons/shields 2014-01-19 11:43:23 +01:00
scrawl
3dcb292bc1 Do not soul trap creatures without a soul (which apparently exist) 2014-01-17 18:43:45 +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
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
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
413bf127de Allow drain fatigue effect to reduce below zero 2014-01-13 10:18:02 +01:00
gus
dd870e35db get all actors following a given actor 2014-01-12 14:02:15 +01:00
scrawl
f78b846f9e Handle CasterLinked magic effect flag 2014-01-12 10:21:49 +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
aba72ffefe Fix up the merge a bit 2014-01-11 02:12:41 +01:00
scrawl
2744cde40f Use a few additional GMSTs 2014-01-10 22:27:31 +01:00
scrawl
098f9712f1 Add getPlayerPtr() utility method. Reduces dependencies a lot. 2014-01-08 18:39:44 +01:00
scrawl
d2d76f4f47 Fix disintegration bug 2014-01-07 19:21:19 +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
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
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
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
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
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
Marc Zinnschlag
e1355be47c Merge remote-tracking branch 'lgro/valgrind_warnings' 2014-01-01 19:41:52 +01: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
2a8ab932ef Bug #951: Only recalculate derived stats when attributes change 2013-12-28 17:19:35 +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
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
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
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
49ea1aae67 Use GMST for sun damage reduction 2013-11-26 15:01:22 +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
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
Marc Zinnschlag
8190fdb16c Merge remote-tracking branch 'scrawl/master' 2013-11-19 16:56:18 +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
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
47fc3f81f5 Don't update actors while paused 2013-11-17 23:31:08 +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
0b5f5351b5 Fix continuous FX getting removed instantly 2013-11-14 13:30:48 +01:00
scrawl
a6e2f43b75 Stop continuous VFX when the effect is no longer active. 2013-11-13 15:44:43 +01:00
scrawl
1773c70455 Merge branch 'master' of https://github.com/zinnschlag/openmw into magic 2013-11-10 22:03:17 +01:00
scrawl
71828351e6 Code cleanup: use enum instead of integer 2013-11-10 15:28:26 +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
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
650a112e2e better timer 2013-10-30 20:42:50 +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
mckibbenta
073f64c8bb stop weapon condition degredation (for the player) with tgm on 2013-10-02 13:46:33 -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
mckibbenta
f65172bdca Merge branch 'master' of https://github.com/zinnschlag/openmw into tgm 2013-08-29 20:26:36 -04:00
mckibbenta
eef9df504a fiddlings 2013-08-29 20:25:36 -04:00
Chris Robinson
92082dae66 Modify the current magicka and fatigue when the base changes 2013-08-27 22:44:52 -07:00
Chris Robinson
305b5fec0f Avoid needlessly copying the MagicEffects 2013-08-27 21:40:31 -07:00
Chris Robinson
189541aa72 Apply drowning damage based on the update duration
1 damage every 0.33 seconds is 3 damage a second. Applying it this way avoid
having to track another stat.
2013-08-27 17:08:23 -07:00
Chris Robinson
9d56e2d86d Apply movement by queueing it to do later 2013-08-17 22:34:38 -07:00
Chris Robinson
46bc7bd9c8 Some cleanup since NpcStats is now also CreatureStats
This isn't a thorough cleaning, so keep an eye out for more
2013-08-09 01:14:08 -07:00
Chris Robinson
2bac4566c0 Merge remote-tracking branch 'PotatoesMaster/werewolf' into werewolf
Conflicts:
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwscript/statsextensions.cpp
2013-08-08 00:09:29 -07:00
PLkolek
8f4506f5b6 Implemented drowning.
Currently no visual effects on losing health, the breathing sound doesn't change (we don't have one),
the breath bar doesn't turn red when no breath left and it doesn't pulse from black to red.
2013-08-07 16:46:46 +02:00
Emanuel Guevel
e0d0cdd18a Do not auto-equip items continuously
This was called every couple of frames.
2013-08-07 14:30:13 +02:00
Chris Robinson
3298eb1b37 Implement HitOnMe script function 2013-07-26 10:50:23 -07:00
Emanuel Guevel
7837dcdc19 Calculate NPC health on loading instead of updating it continually
Only NPC with auto-calculated stats are concerned.
2013-07-20 22:14:10 +02:00
Chris Robinson
d6324d71bf Ensure mechanics actors/objects are cleared before adding them 2013-07-17 21:39:21 -07:00
Chris Robinson
06e631f213 Track death separately in the character controller 2013-07-15 23:43:33 -07:00
Chris Robinson
7883087586 Store a pointer to the character controller in the map 2013-07-12 22:31:50 -07:00
Torben Carrington
3b43ee751e AI Execute Fix - May as well not create the object either to save extra time. 2013-05-26 19:54:59 -07:00
Torben Carrington
feb180724c AI Execution Fix - Preiovusly AiExecute was being called even when in a menu, this was not correct behavior. 2013-05-26 19:33:45 -07:00
Torben Carrington
c8c1ddd927 Adds functionality for checking if the animation group passed is currently playing on the actor passed. This is needed for AIWander. 2013-05-24 20:10:07 -07:00
Chris Robinson
4e389b5a8f Store whether a given animation loops in the state table 2013-05-12 05:59:39 -07:00
Chris Robinson
274f3c7b77 Force character state to update after switching view modes 2013-04-25 07:08:11 -07:00
gus
6934b20abd actors are now updates every frame. This should not be the case, but this is a quickfix for AI. 2013-04-11 17:57:58 +01:00
Glorf
48d9885554 Started bugfix #691 2013-04-05 15:42:05 +02:00
scrawl
1a2daa3bc1 Merge branch 'master' of git://github.com/zinnschlag/openmw into companion 2013-03-31 14:50:03 +02:00
Chris Robinson
466c0086b8 Use a full Movement to hand off to the world physics update 2013-03-31 00:13:56 -07:00
Chris Robinson
af65ecd841 Pass the movement vector in as a parameter to CharacterController::update 2013-03-30 18:37:40 -07:00
scrawl
e7af718b55 Remove unnecessary WindowManager::messageBox arguments 2013-03-30 12:56:37 +01:00
Marc Zinnschlag
fd2c07a6f4 delete death events on adding an actor to the scene 2013-03-18 10:54:47 +01:00
scrawl
dd57eabc3e Better use an enum for magic effect IDs 2013-03-16 23:28:26 +01:00
Chris Robinson
48271e49ec Properly update the Ptr object in the mechanics manager when moving across cells 2013-02-25 09:57:34 -08:00
Chris Robinson
2c39760bd5 Move the movement solver code to mwworld's physics system 2013-02-05 12:45:10 -08:00
Chris Robinson
1c604445ba Store movement vectors as they get returned 2013-02-05 06:59:01 -08:00
Chris Robinson
5ee298cdc1 Make sure the player updates last 2013-02-04 14:08:38 -08:00
Chris Robinson
51d5efeeb2 Work out the state in the character controller update method 2013-02-03 07:15:34 -08:00
Chris Robinson
7fe877d8ea Add a couple more character states 2013-02-03 00:19:22 -08:00
Chris Robinson
007a5963de Handle most state changes in the character controller when setting the movement vector 2013-02-02 23:39:43 -08:00
Chris Robinson
fdabef65a1 Use a method to update an object's cell in the mechanics manager
This prevents destroying and recreating the object's character controller (and
messing up the current animation) when moving between cells.
2013-01-29 00:19:24 -08:00
Chris Robinson
8d98f3649c Use a separate class to handle activator mechanics 2013-01-28 23:39:11 -08:00
Chris Robinson
68779375b2 Implement WalkLeft and WalkRight character states 2013-01-19 16:19:47 -08:00
Chris Robinson
a7b07ee5cf Don't reset the animation when setting the same state
Unless looping is being toggled on.
2013-01-19 15:46:22 -08:00
Chris Robinson
de2d084e61 Add a looping property to handle if an animation should loop 2013-01-19 14:22:15 -08:00
Chris Robinson
aecfc0829a Implement WalkForward and WalkBack character states 2013-01-18 18:04:00 -08:00
Chris Robinson
9235fba770 Store the movement vector in the character controller 2013-01-18 16:00:51 -08:00
Chris Robinson
5cafc24ee2 Rename CharState_Alive back to CharState_Idle 2013-01-18 13:43:45 -08:00
Chris Robinson
9d7ccfda1f Rename CharState_Idle to CharState_Alive 2013-01-17 21:07:36 -08:00
Chris Robinson
685f219560 Return a movement vector from the character controller update 2013-01-16 18:56:13 -08:00
Chris Robinson
daad8d9859 Don't update the character controller while paused 2013-01-16 18:03:39 -08:00
Chris Robinson
d2f5a886c7 Handle playgroup and skipanim through mwmechanics 2013-01-16 17:53:18 -08:00
Chris Robinson
46fc61a4c1 Run animations from the character controller 2013-01-16 16:31:09 -08:00
Chris Robinson
94b93227d3 Treat activators as actors for rendering and mechanics
Kinda hacky, but it's the only way to get animated activators (flags, silt
striders, etc) to work properly.
2013-01-16 14:37:32 -08:00
Chris Robinson
3c487e6019 Play an animation when changing states 2013-01-16 10:45:18 -08:00
Chris Robinson
b378bc92a0 Store an animation object in the character controller 2013-01-16 10:16:37 -08:00
Chris Robinson
3c02e1ccc9 Run physics right after updating the actors 2013-01-16 08:22:38 -08:00
Chris Robinson
94b24f07e1 Keep track of the state in the character controller, and don't remove dead actors from the map 2013-01-12 10:10:27 -08:00
Chris Robinson
4890d901a2 Store an MWWorld::Ptr in the character controller 2013-01-12 08:49:08 -08:00
Chris Robinson
35d17fdaf6 Associate a character controller with each MWWorld::Ptr 2013-01-12 07:12:12 -08:00
greye
86ad7a96f4 applying new interface vol.2, inconsistent 2012-11-05 21:19:22 +04:00
greye
2057f5619e move ESMStore to MWWorld 2012-11-05 17:18:01 +04:00
Marc Zinnschlag
ed3641b214 Issue #68: check for essential actors 2012-10-27 13:33:54 +02:00
Marc Zinnschlag
453f347ee8 Issue #68: added getdeadcount script function 2012-10-27 11:33:18 +02:00
Marc Zinnschlag
f72c35fc17 Issue #68: tally deaths 2012-10-27 11:15:52 +02:00
Marc Zinnschlag
6b09b3ad61 Issue #68: Play death animations 2012-10-27 10:36:42 +02:00
Marc Zinnschlag
21c24dedb6 Issue #68: Stop player from dying (temporary workaround) 2012-10-25 12:28:45 +02:00
Marc Zinnschlag
9172c3ec4d Issue #68: stop NPCs from instantly dropping dead 2012-10-23 13:54:36 +02:00
Marc Zinnschlag
0547f11564 Issue #68: Remove dead actors from actor list 2012-10-20 10:54:51 +02:00
Marc Zinnschlag
f2e25b8a47 Issue #68: Keep dead actors out of the actor list for the current scene 2012-10-20 10:49:48 +02:00
Marc Zinnschlag
bdca5aff87 Issue #68: simplified the dynamic stats interface 2012-10-19 13:10:06 +02:00
Marc Zinnschlag
3f833af46a Issue #407: Fortyfy attribute effects were ignored for the last 3 attributes 2012-10-19 10:07:27 +02:00
scrawl
b91d74d394 fix normalized encumbrance 2012-09-21 17:56:15 +02:00
scrawl
872fcf3e3d sleeping restoration of health, magicka, and fatigue 2012-09-21 17:53:16 +02:00
scrawl
76b494100e finished? 2012-09-15 17:12:42 +02:00
Marc Zinnschlag
ead04e1cc3 Issue #389: added AI sequence to CreatureStats; execute AI packages during the regular actor update 2012-09-04 13:32:35 +02:00
greye
32b1350b63 CreatureStats class 2012-07-22 18:29:54 +04:00
Marc Zinnschlag
483b125aad avoid locking up in case actor updates repeatedly throw exceptions 2012-07-17 18:37:20 +02:00
Marc Zinnschlag
beb18282bb Issue #342: various fixes 2012-07-17 16:44:55 +02:00
Marc Zinnschlag
76de2f7360 Issue #342: handle magic effects 79-82 and 17-20 2012-07-17 15:49:37 +02:00
Marc Zinnschlag
a3652f16ce Issue #342: factored out dynamic stats calculation into a separate function 2012-07-17 12:18:43 +02:00
Marc Zinnschlag
c85aaafac2 more include cleanup (most removing Ogre.h) 2012-07-03 15:32:38 +02:00
Marc Zinnschlag
c0ee382c72 Issue #176: made actor deregistration more robust 2012-05-24 13:21:52 +02:00
Marc Zinnschlag
9f1919a230 Issue #256: added active spell management (completely untested) 2012-05-19 15:01:07 +02:00
Marc Zinnschlag
124ea77612 Issue #256: consider equipped items when calculating magic effects 2012-05-18 15:48:55 +02:00
Marc Zinnschlag
79055e281d Issue #256: Force update after building the player character 2012-05-18 13:54:07 +02:00
Marc Zinnschlag
e56ff9283d Issue #256: moved magic effects update from MechanicsManager to Actors 2012-05-17 13:21:49 +02:00
Marc Zinnschlag
1fddbf9a40 Issue #256: moved dynamic stats update from MechanicsManager to Actors 2012-05-17 13:15:31 +02:00
Marc Zinnschlag
35f478071e Issue #255: deleted the old environment class and using the new one instead 2012-04-23 15:27:03 +02:00
Marc Zinnschlag
ab2a1297b0 exclude player from auto equip 2012-04-08 13:01:03 +02:00
Marc Zinnschlag
dcab6737e5 consider skills when auto equipping 2012-04-08 12:26:21 +02:00
Marc Zinnschlag
751e7d2199 basic auto-equipping (picks the first matching item 2012-03-31 17:26:15 +02:00
Marc Zinnschlag
0892df0ad3 framework for gamemechanics-realted actor updated 2012-03-30 17:01:55 +02:00
Marc Zinnschlag
d717b7b9dd factored out actor related game mechanics code into a separate class 2012-03-30 16:18:58 +02:00