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

543 commits

Author SHA1 Message Date
dteviot
77a1d947cc extracted MWMechanics::getPlayer() 2015-08-21 21:12:39 +12:00
dteviot
0ee7407101 extracted common sub-expressions. 2015-08-20 18:17:02 +12:00
dteviot
ff5ef7055e extracted function CreatureStats::isParalyzed() 2015-08-20 18:12:37 +12:00
Jeffrey Haines
e1baf1ea48 NPCs scream when they die 2015-08-19 09:51:04 -04:00
scrawl
232dfdc07e Make an error message slightly more helpful 2015-08-19 01:24:54 +02:00
Marc Zinnschlag
d29862eac3 Merge remote-tracking branch 'emperorarthur/anim_fail' 2015-08-08 10:47:46 +02:00
scrawl
7644a46ded Creatures with no movement should not attempt to start combat (Fixes #2786) 2015-07-31 01:26:26 +02:00
Arthur Moore
5e6fcc2aef Alert the user if attempting to play an animation fails
This is mostly propogating the error up the stack so the game can do something about it.
Working on avoiding log spam from calling an animation that doesn't exist every frame.
2015-07-30 08:00:26 -04:00
scrawl
7f66339790 Remove a redundant function 2015-07-24 20:23:27 +02:00
Marc Zinnschlag
9b3d5c958f Merge remote-tracking branch 'scrawl/music' 2015-07-19 11:49:00 +02:00
scrawl
b01abe4d19 Stop title music when the game starts (Fixes #2468) 2015-07-19 02:08:24 +02:00
scrawl
278a078e9d Unify magic effect tick functions
- Removes duplicated code
- Handle some zero-duration instant effects that were not handled before (disintegrate, sun damage, elemental damage)
2015-07-18 20:39:45 +02:00
scrawl
77f1387da8 Include cleanup 2015-07-18 20:36:28 +02:00
Alexander "Ace" Olofsson
b1cc74dd9a Explicity instantiate MWMechanics::Stat 2015-07-09 14:41:37 +02:00
Alexander "Ace" Olofsson
3655ef16af Explicitly instantiate ESM::StatState 2015-07-07 19:19:37 +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
7bacb9418d Various math code ported to osg 2015-06-03 19:41:19 +02:00
scrawl
de8e5f0db1 Restore projectiles 2015-06-01 21:41:13 +02:00
scrawl
71bafcb52b Restore head tracking 2015-05-31 18:04:14 +02:00
scrawl
83c6ba97c0 Disable skinning updates for actors beyond the AI processing distance 2015-04-30 00:10:24 +02:00
scrawl
0ff7b2ff11 MechanicsManager, frame update 2015-04-25 15:19:17 +02:00
scrawl
a3417a9c49 CharacterController compiles 2015-04-25 01:20:07 +02:00
dteviot
1d7f3474fa Fixed more MSVC 2013 warnings. 2015-03-15 08:49:03 +13:00
scrawl
3879ce6ac1 Get rid of "player" string checks (Fixes #2216) 2015-03-11 23:07:39 +01:00
scrawl
68de876051 Switch to weapon drawstate when creating a bound weapon (Fixes #2387) 2015-03-11 21:12:08 +01:00
scrawl
36e1b6cc48 Support fatigue below zero for the Drain effect (Fixes #2430) 2015-03-09 03:15:11 +01:00
scrawl
3d5c1d1190 Adjust fix for maximum attribute damage limit 2015-03-09 03:15:11 +01:00
dteviot
36141b0c53 Merge remote-tracking branch 'OpenMW/master' into FixWarnings
Conflicts:
	apps/openmw/mwinput/inputmanagerimp.cpp
	apps/openmw/mwmechanics/actors.cpp
	extern/sdl4ogre/sdlcursormanager.cpp
2015-03-08 18:29:12 +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
cced508916 Remove unintended 1.5 factor for damage/restore magic effects 2015-03-04 01:49:00 +01:00
dteviot
41e15e0c2d Limit maximum attribute damage (Fixes #2367)
Maximum damage that an attribute can have = base + fortify.
2015-03-01 10:27:51 +13:00
scrawl
c883a73d30 Several warning fixes 2015-01-23 15:34:47 +01:00
scrawl
2ac4a74a34 Fix running AI for dead actors 2015-01-13 18:13:02 +01:00
scrawl
de23ad5c8d Change dynamic_cast to static_cast to make coverity happy 2015-01-12 23:29:58 +01:00
scrawl
c3f3f8b3d0 Use only Cell records for saving progress bar (Fixes #2259) 2015-01-11 18:01:06 +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
f267497c03 Allow separate summoned creature instances for each spell ID (Fixes #2194) 2015-01-06 16:11:05 +01:00
scrawl
559ddbb480 Quick fix for Ai fast-forward crash in exteriors (Fixes #2241) 2015-01-01 18:18:46 +01:00
scrawl
dc1c52bda7 Add some todo comments 2015-01-01 03:38:54 +01:00
scrawl
a8ae0dec52 Implement AiWander fast-forward (Feature #1125) 2014-12-31 18:41:57 +01:00
scrawl
edc128572d Add MWMechanics::Actor class for temporary actor state, move AiState there 2014-12-24 15:45:14 +01:00
scrawl
0081a68376 Use fMagicStartIconBlink for spell effect indicator fading 2014-12-24 15:45:13 +01:00
scrawl
105f0f8716 Head tracking: don't look at dead actors 2014-12-24 15:45:12 +01:00
scrawl
d962f0918d Implement NPC head tracking (Fixes #1720) 2014-12-16 20:47:45 +01:00
scrawl
2b78e9795d Implement Calm effect removing combat packages (Fixes #1985) 2014-12-14 19:35:34 +01:00
scrawl
60aa209144 Implement drowning when knocked out underwater (Fixes #1228) 2014-12-12 17:42:56 +01:00
scrawl
d034a079e6 Allow equipping twohanded weapon and shield at the same time (Fixes #1785)
The shield can be equipped, meaning armor rating and item enchantments apply, but can not be blocked with.
2014-12-12 16:49:22 +01:00
scrawl
5f00a3d5c3 Reset lastHitObject when it is retrieved rather than every frame
This seems to be how vanilla MW does it.
2014-12-11 22:00:31 +01:00
scrawl
109a3f78a1 Adjust AiFollow distance for groups of multiple followers (Fixes #1637) 2014-12-09 16:06:04 +01:00
scrawl
0a466ad643 Make recalculation of magicka less aggressive (Fixes #2155) 2014-11-28 14:45:35 +01:00
MiroslavR
b8d5a9486a Make Restore/Damage Attribute/Skill effects continuous 2014-11-08 00:57:03 +01:00
Marc Zinnschlag
6beee95151 Merge remote-tracking branch 'terrorfisch/aistate' 2014-10-13 19:14:15 +02:00
Thoronador
4d62541b62 fix usage of numeric_limits static functions min() and max()
Functions min() and max() of std::numeric_limits<T> are static
and can therefore be accessed via class name and :: operator.
2014-10-12 23:28:16 +02:00
MiroslavR
ad253059b1 Hit indicator for absorb/damage health effect 2014-10-12 01:15:40 +02:00
MiroslavR
0ae604990e Implement continuous damage indication (Fixes #1970) 2014-10-11 22:21:48 +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
5c3bc6563b Fix divisions by zero in normalizedEncumbrance 2014-10-05 15:50:01 +02:00
scrawl
8dd410fe96 Teleport indirect followers as well when using a door (Fixes #1974) 2014-10-05 15:18:32 +02:00
scrawl
1c51694aa9 Don't update physics and animation for actors outside the AI processing distance 2014-10-02 00:27:04 +02:00
scrawl
7f18f85a1d Forgot const 2014-09-29 12:04:19 +02:00
scrawl
ea956b537c Don't search for fFatigueReturnBase and fFatigueReturnMult every frame 2014-09-27 22:37:53 +02:00
scrawl
e868a48a63 Don't trigger OnPcHitMe for friendly hits (Fixes #1950)
Don't consider actors as followers if they are also in combat with the follow target
2014-09-26 22:08:07 +02:00
scrawl
7252cb63a6 Fix cppcheck issues 2014-09-26 17:48:14 +02:00
scrawl
f56711f443 Fix crash caused by teleportation spells (Fixes #1904) 2014-09-25 18:14:04 +02:00
Marc Zinnschlag
175d4f3d44 Merge remote-tracking branch 'ragora/playdeathlevelupmusic' 2014-09-23 13:30:50 +02:00
Ragora
06e683d378 Added code to play music on level up and on death 2014-09-23 04:58:19 -04:00
scrawl
023d7072f9 Don't play battle music for enemies out of AI processing range 2014-09-20 13:55:57 +02:00
scrawl
b39fe85a51 Implement fPCbaseMagickaMult and fNPCbaseMagickaMult 2014-09-18 14:56:43 +02:00
scrawl
a42e60970b Revert "delete death events on adding an actor to the scene"
If we go to a different cell in the exact frame of an actor's death, the death event would be lost permanently.

This reverts commit fd2c07a6f4.

Conflicts:
	apps/openmw/mwmechanics/actors.cpp
2014-09-13 20:57:25 +02:00
Marc Zinnschlag
b5d5eadf79 Merge remote-tracking branch 'scrawl/master' 2014-09-11 09:01:21 +02:00
MiroslavR
21eb25706c Don't pursue the player for their crimes when they are a werewolf 2014-09-09 04:15:54 +02:00
scrawl
d2ef0d362c Implement vanilla distance threshold for AI processing (Bug #1876) 2014-09-09 01:52:48 +02:00
scrawl
282c93ccc5 Handle death in actor update rather than instantly (Fixes #1866) 2014-09-05 17:17:45 +02:00
Marc Zinnschlag
4894699eba Merge remote-tracking branch 'scrawl/master' 2014-09-02 09:04:19 +02:00
MiroslavR
7dfba0ae30 Followers with high fight should not engage in combat with the player 2014-09-01 03:43:53 +02:00
scrawl
9d6ca9066f Fix summoned creatures not following for non-player summoners 2014-08-30 18:48:28 +02:00
scrawl
180a831e96 Fix typo in combat distance 2014-08-30 18:38:24 +02:00
scrawl
f91d639782 Add missing soul trap sound (Fixes #1855) 2014-08-28 16:30:42 +02:00
scrawl
253036abee Play VFX_Soul_Trap on successful soul trap 2014-08-28 02:55:36 +02:00
scrawl
854491ac15 Don't treat actors as following if another non-combat AiPackage precedes (Fixes #1843) 2014-08-26 02:09:23 +02:00
MiroslavR
2cbe17ca0a Make Spells::mCorprusSpells private 2014-08-20 12:40:38 +02:00
MiroslavR
96e7ff666d Implement saving/loading of corprus stats, remove redundant code 2014-08-19 03:17:31 +02:00
MiroslavR
3722c7adc3 Initial work on implementing corprus worsening effect 2014-08-18 15:33:12 +02:00
scrawl
bcc79919a7 Fix fortified skill not immediately updating on changing equipment 2014-08-17 05:42:52 +02:00
scrawl
2db50da8dd Implement magic effect script instructions (Feature #1489) 2014-08-17 05:09:14 +02:00
scrawl
d8943aef2f Encapsulate magic effect magnitude (Feature #1489) 2014-08-17 03:58:04 +02:00
scrawl
084cc857d4 Update magic effects when changing equipment (Fixes #1646) 2014-08-15 01:13:38 +02:00
scrawl
f8010c09fe Adjust combat engagement of following actors (Fixes #1810) 2014-08-14 02:13:55 +02:00
scrawl
8866b5f860 Fix maximum magicka calculation (Fixes #1795) 2014-08-11 19:07:14 +02:00
scrawl
fcd2a9e4d5 Don't set magic effects for dead actors (Fixes #1783) 2014-08-10 23:52:32 +02:00
scrawl
a731ec3587 Remove summoned creature and its effect when it is killed (Fixes #1341) 2014-08-08 15:46:32 +02:00
scrawl
22d7d8a466 Implement Command creature/humanoid magic effects (Fixes #1120) 2014-08-07 17:21:07 +02:00
scrawl
a9a7a7ec73 Use Modified attribute values to derive magicka and fatigue (Fixes #1760) 2014-08-06 20:13:58 +02:00
Digmaster
a32ab842ae Added ForceJump/ForceMoveJump commands 2014-08-02 22:42:40 -07:00
scrawl
d956df83e4 Don't make guards fight non-aggressive creatures that are in combat
Ex. summoned creature that is helping in a fight.
2014-07-28 17:19:20 +02:00
scrawl
4773d754c6 Remove redundant isHostile flag (Fixes #1652) 2014-07-28 16:41:12 +02:00
scrawl
6262d6c964 Don't leave stale player CharacterController in Actors when loading game (Fixes #1713) 2014-07-27 23:10:58 +02:00
scrawl
d81e9cfefd Implement actors fighting for the actor they are following (Fixes #1141) 2014-07-27 20:33:45 +02:00
scrawl
7ae9bbb1a5 Implement iCrimeThresholdMultiplier 2014-07-24 02:17:44 +02:00
scrawl
fc618cb3ea Use separate function for fatigue restoration during resting/waiting 2014-07-24 02:17:44 +02:00
scrawl
c0645d4978 Increase death count immediately on death (Bug #1588)
This is required for scripts using getDeadCount as reaction to onDeath that rely on the increased value.
2014-07-21 20:37:14 +02:00
scrawl
90a96cd7d8 Fix bug where actors in combat with multiple other actors where not regarded as in combat with a specific actor 2014-07-20 22:34:20 +02:00
scrawl
11b05c352f Fix exception when casting Bound Gloves spell 2014-06-19 16:00:27 +02:00
scrawl
1dc9e151cb Count werewolf kills (Fixes #1525) 2014-06-18 16:56:36 +02:00
scrawl
2477456f99 Implement Murder crimes and OnMurder instruction (Fixes #1315) 2014-06-17 04:05:27 +02:00
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