1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-02-25 05:09:41 +00:00
Commit graph

3422 commits

Author SHA1 Message Date
Capostrophic
4c7f3cf626
Merge branch 'master' into weaponpriority 2018-08-03 14:07:11 +03:00
Marc Zinnschlag
4d280add81 Merged pull request #1843 2018-08-03 12:56:17 +02:00
Andrei Kortunov
712c9995db Rename mIsScripted variable because its name is ambiguous 2018-08-03 12:01:31 +04:00
Capostrophic
9d85b7c2d3
Use the actual damage for deducting weapon rating 2018-08-02 15:20:07 +03:00
Capostrophic
73d5496711
Revert addition change 2018-08-02 13:01:23 +03:00
Capostrophic
80f3bd9f86 Don't apply iWereWolfFleeMod to creatures 2018-08-02 08:36:15 +03:00
Capostrophic
bec47dfb7c Make ranged weapon bonus a distance-dependent multiplier 2018-08-01 19:57:05 +03:00
Capostrophic
382b68a081
Combat AI: take the actual hit chance in account when rating weapon 2018-08-01 19:27:19 +03:00
Marc Zinnschlag
1c13256456 Merged pull request #1829 2018-08-01 16:17:37 +02:00
Marc Zinnschlag
0c507b74bc Merge pull request #1832 2018-08-01 16:13:59 +02:00
Capostrophic
be2e7e9e09 Make casting caster-linked on-self effects no-op (bug #4378) 2018-08-01 02:41:57 +03:00
Andrei Kortunov
5b92910829 Limit difficulty scaling, as mentioned in docs 2018-07-31 21:14:16 +04:00
Andrei Kortunov
c07cc0dc40 Reset animation state after weapon unequipping 2018-07-30 22:24:25 +04:00
David Cernat
b57807407a [General] Implement RecordDynamic packet, part 1
Spell, potion, enchantment, creature, NPC, armor, book, clothing, miscellaneous and weapon record data can now be sent in a RecordDynamic packet. Additionally, the packets include data related to associated magical effects (for spells, potions and enchantments), data related to default inventory contents (for creatures and NPCs) and data related to body parts affected (for armor and clothing).

The server now has associated script functions for setting most of the details of the above, with the main exception being individual creature and NPC stats.

Records can either be created entirely from scratch or can use an existing record (set via the baseId variable) as a starting point for their values. In the latter case, only the values that are specifically set override the starting values. Creature and NPC records also have an inventoryBaseId that can be used on top of the baseId to base their inventories on another existing record.

The client's RecordHelper class has been heavily expanded to allow for the above mentioned functionality.

When players create spells, potions and enchantments as part of regular gameplay, they send RecordDynamic packets that provide the server with the complete details of the records that should be created. When they create enchantments, they also provide the server with armor, book, clothing and weapon records corresponding to the items they've enchanted.

This functionality added by this packet was originally supposed to be exclusive to the rewrite, but I've gone ahead and tried to provide it for the pre-rewrite in a way that can mostly be reused for the rewrite.
2018-07-30 10:56:26 +03:00
Capostrophic
c79f96d0d2 Implement ranged crits (feature #3703) 2018-07-29 19:42:44 +03:00
Andrei Kortunov
1d463d129d Finish AiTarget package, if destination is blocked by other actor 2018-07-29 19:41:31 +04:00
Andrei Kortunov
75835c8326 Prevent NPC from chosing farther pathgrid node 2018-07-29 18:18:05 +04:00
Andrei Kortunov
6d5d0039ec Make sure we apply OT_Murder only once 2018-07-28 20:45:33 +04:00
David Cernat
d93b67ef21 [General] Sync soul refIds for items and add related script functions 2018-07-26 22:37:04 +03:00
David Cernat
36ac2d9de4 [Client] Set packetOrigin for all ObjectList packets sent 2018-07-23 01:39:43 +03:00
David Cernat
038757b91a [General] Temporarily revert to original rotation animation sync
I originally added rotation animation sync as part of commit 068a45be87. Unfortunately, it meant the PlayerPosition packets were now twice as large as they had been before, which was less than ideal for such a frequently sent packet, which is why Koncord switched to a more optimized approach in commits 5f30dfd5db and d67db1a9bd.

Recently, there have since been some rotation animation problems in OpenMW, which have broken the way Koncord's approach looks. My original approach still looks somewhat okay, so I'm switching back to it until we can figure out how to reuse it under the current circumstances.
2018-07-21 19:27:36 +03:00
David Cernat
20e0100706 [General] Rework Attack packets and add synchronization for item magic 2018-07-21 14:41:27 +03:00
David Cernat
21d5bb4d4e
Merge pull request #460 from OpenMW/master
Add 0.7.0 commits up to 20 Jul 2018
2018-07-21 05:59:57 +03:00
Marc Zinnschlag
78a2725169 Merged pull request #1806 2018-07-17 12:42:41 +02:00
Andrei Kortunov
38fa4e0a8a Do not play un-equipping animation when we switch to hand-to-hand 2018-07-17 14:10:04 +04:00
Andrei Kortunov
30716344f2 Fix possible division by zero in the fatigue calculation (bug #4510) 2018-07-16 13:24:12 +04:00
David Cernat
3649cf553f [General] Rename PlayerKillCount into WorldKillCount
This should clarify the real meaning of the packet and its associated event.

The event itself has been renamed from OnPlayerKillCount to OnWorldKillCount.
2018-07-15 05:34:59 +03:00
David Cernat
6ebe09375f [General] Implement ObjectActivate packet & associated script functions 2018-07-15 03:16:04 +03:00
David Cernat
6cb5ac6e63 Merge pull request #457 from OpenMW/master while resolving conflicts
Conflicts:
	CMakeLists.txt
	apps/openmw/engine.cpp
	apps/openmw/main.cpp
	apps/openmw/mwgui/windowmanagerimp.cpp
	apps/openmw/mwmechanics/character.cpp
	components/CMakeLists.txt
2018-07-14 03:57:05 +03:00
Andrei Kortunov
3d1daaebab Rework manual spellcasting (e.g. via scripts) 2018-07-12 16:24:25 +04:00
Capostrophic
5cb9dc9d12 Use SpellTurnLeft/TurnRight animation groups 2018-07-10 22:19:56 +03:00
Andrei Kortunov
1c35e20fcc Use 1h animations as fallback for crossbows 2018-07-10 17:02:51 +04:00
Andrei Kortunov
75dcbea365 Apply weapon reload animations only for upper body 2018-07-10 17:00:48 +04:00
David Cernat
c984fc0881 [Client] Allow AiActivate to be used with specific Ptrs, not just refIds 2018-07-10 08:21:24 +03:00
David Cernat
b86155dc11 [Client] Allow AiFollow package to have infinite distance when desired 2018-07-10 01:40:57 +03:00
David Cernat
5043fb4246 [Client] Disable clientside disarming of traps 2018-07-08 02:38:10 +03:00
David Cernat
f3892d697b [Client] Disable clientside locking and unlocking of objects 2018-07-08 00:06:01 +03:00
David Cernat
e3e1cfc549 [Client] Add forgotten comparison in crimeTime and deathTime check 2018-07-06 20:49:08 +03:00
David Cernat
4b30a44816 [Client] Compare crimeTime and deathTime when NPCs forgive player crimes
Previously, all crime witnesses stopped being hostile to a respawning player for as long as the player's diedSinceArrestAttempt was true. That meant that, in an area with no guards to arrest the player, crime witnesses did not enage in combat with the player at all ever again until diedSinceArrestAttempt became false.

This commit makes it so the time of the last crime is recorded for each witness, and that is then compared with the time of the LocalPlayer's last death for a one-time crime forgiveness during that player's current life.

This is essentially a gameplay adjustment for "singleplayer with respawns," and will have to be reworked to make sense for every player in multiplayer, though that requires reworking the crime system as a whole and is thus on hold.
2018-07-06 14:17:54 +03:00
Marc Zinnschlag
d9de8ccb5b Merged pull request #1781 2018-07-06 11:55:45 +02:00
Capostrophic
9abfabb065
Ensure forward-compatibility of death animations in old saves (fixes #4274) 2018-07-05 22:49:40 +03:00
David Cernat
c075496748 [General] Replace deathReason in death packets with a killer variable
Add serverside script functions for determining the killers of both players and actors.

Use unsigned ints for script functions returning an object or actor's refNumIndex or mpNum.

Remove updateDeadState() from LocalPlayer and make its code part of updateStatsDynamic() for simplicity.
2018-07-05 22:24:51 +03:00
Capostrophic
faf3e9ba5a Make spellcasting stance transition more smooth (fixes #4358)
If a movement animation was identical to the previous one that was played, restart it from the point the previous animation ended
2018-07-05 01:57:34 +03:00
David Cernat
76731f5def [Client] Don't remove SummonKeys with actorIds of -1
This prevents summon duplication caused by a SummonKey sometimes being deleted immediately after being created, before the server can send back an ObjectSpawn packet spawning a creature that can be attached to the SummonKey.
2018-07-05 01:11:45 +03:00
David Cernat
a236ffc4be Merge pull request #456 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
#	README.md
#	apps/openmw/mwgui/quickkeysmenu.cpp
#	apps/openmw/mwmechanics/actors.cpp
#	apps/openmw/mwmechanics/combat.cpp
2018-07-04 01:52:29 +03:00
Koncord
53346e2663 [Client] Return 0 if effect not found 2018-07-03 03:43:38 +08:00
David Cernat
8ce225b1cc [Client] Use the casters of damage-dealing spells as death reasons 2018-07-02 00:42:32 +03:00
David Cernat
958b220835 [General] Send summon duration to server in ObjectSpawn packets 2018-07-01 00:43:29 +03:00
Capostrophic
bccba24c40 Make unarmed creature attacks not affect armor condition (fixes #2455) 2018-06-29 20:18:28 +03:00
Andrei Kortunov
5455490ad2 Avoid fall-through in spell selection 2018-06-28 11:12:48 +04:00
Andrei Kortunov
ec73011617 Clean temporary storage if we assign new AI package (bug #4464) 2018-06-27 12:52:43 +04:00
Andrei Kortunov
ee45f54b53 Refactor AiTemporaryStorage usage 2018-06-27 12:48:34 +04:00
Andrei Kortunov
3c7ab976c3 Ignore movement from scripted animations (bug #4475) 2018-06-27 08:22:45 +04:00
Andrei Kortunov
c9756cee4c Fast-forward death animation to end if death animation was finished earlier (regression #4468) 2018-06-20 12:37:58 +04:00
Capostrophic
6c23caadd7 Fix crash when a target in a different cell is (un)locked 2018-06-19 20:43:18 +03:00
Capostrophic
0c4fa55f16 Make Open spells casted by anything trigger player crime event (fixes #4461) 2018-06-19 17:04:38 +03:00
Andrei Kortunov
5fd3ec1035 Implement unlockable locks with 'lock 0' console command 2018-06-19 14:17:33 +04:00
Marc Zinnschlag
a8ad530db9 Merged pull request #1749 2018-06-19 11:33:08 +02:00
Marc Zinnschlag
2a52ade219 Merged pull request #1760 2018-06-19 11:26:41 +02:00
Andrei Kortunov
e08b0d3070 Ignore lights without CanCarry flags when NPC selects torch (bug #4457) 2018-06-16 17:34:49 +04:00
Andrei Kortunov
9c3da41130 Add murder bounty when a player follower commits murder (bug #2852) 2018-06-15 14:31:09 +04:00
Marc Zinnschlag
2b35c5efd7 Merge remote-tracking branch 'upstream/master' 2018-06-13 18:13:15 +02:00
Marc Zinnschlag
aea481eacb Merged pull request #1753 2018-06-13 18:12:38 +02:00
Andrei Kortunov
61c968d550 Ignore broken items when search for replacement (bug #4453) 2018-06-13 18:39:02 +04:00
Andrei Kortunov
81b78a82e8 AI: try to open doors every AI_REACTION_TIME seconds (bug #4454) 2018-06-13 17:47:32 +04:00
Bret Curtis
3e4dc31e39
Merge branch 'master' into fatigue 2018-06-13 10:04:32 +02:00
Andrei Kortunov
9c45cc7e48 Use player reference instead of pointer 2018-06-12 22:05:00 +04:00
Andrei Kortunov
f299be8158 Play scripted animations even if SkipAnim is used 2018-06-12 16:07:36 +04:00
Andrei Kortunov
25bb7c1826 Make 'PlayGroup idle' to cancel scripted animations 2018-06-12 14:04:03 +04:00
Andrei Kortunov
0e441d48ac Give scripted animations highest priority (bug #4286) 2018-06-12 12:55:28 +04:00
Andrei Kortunov
0c92655250 Avoid code duplication in character manager 2018-06-12 11:51:54 +04:00
Andrei Kortunov
e3812f4075 Check creature stats only for actors 2018-06-12 11:27:18 +04:00
Andrei Kortunov
ebaa6fb5a2 Play death scream only once 2018-06-12 09:55:43 +04:00
Andrei Kortunov
427be928d0 Do not update animation state for dead actors 2018-06-11 23:17:54 +04:00
Andrei Kortunov
977a27ecb7 Do not clear corpses until end of death animation (bug #4307) 2018-06-11 22:29:32 +04:00
Andrei Kortunov
a42c663fd7 Do not interrupt scripted animations by death animation (bug #4286) 2018-06-11 18:53:25 +04:00
Andrei Kortunov
d0619cfb35 Play death animation for non-persisting actors with 0 health (bug #4291) 2018-06-11 18:52:20 +04:00
Andrei Kortunov
6099735c60 Early out only when scripted animation is playing 2018-06-11 17:52:58 +04:00
Andrei Kortunov
e234dd2a36 Do not interrupt scripted animations 2018-06-11 17:18:51 +04:00
Andrei Kortunov
9fd2d57b86 Move previous items to player 2018-06-10 16:21:19 +04:00
Andrei Kortunov
f977c6876f Bound items: store item ID instead of pointer 2018-06-10 16:21:19 +04:00
Andrei Kortunov
4de9d9fa77 Split adjustBoundItem() 2018-06-10 16:21:19 +04:00
Andrei Kortunov
d1b1cb748d Reequip previous item only if the expired bound item was equipped 2018-06-10 16:21:19 +04:00
Andrei Kortunov
9b72a6ac69 Use the MWWorld::Ptr() instead of string ID 2018-06-10 16:21:19 +04:00
Andrei Kortunov
0375bedab2 Equip previous item after a bound item expires (bug #2326) 2018-06-10 16:21:19 +04:00
Andrei Kortunov
ae87e0d3fc Do not reset mUpperBodyState for weapon->weapon switch (regression #4446) 2018-06-09 15:34:08 +04:00
Marc Zinnschlag
7d9de93fd3 Merged pull request #1477 2018-06-09 10:52:35 +02:00
Andrei Kortunov
6ed2773299 Do not stack return packages 2018-06-08 21:53:47 +04:00
Andrei Kortunov
74a2cbe696 AI: return back after pursuit 2018-06-08 21:53:47 +04:00
Andrei Kortunov
3d0631cfcc Store last AI package in savegame 2018-06-08 21:53:47 +04:00
Andrei Kortunov
3a0ee78d2b AiTravel: store mHidden flag in savegame 2018-06-08 21:53:47 +04:00
Andrei Kortunov
2f5beb8853 Remove unnecessary hack 2018-06-08 21:53:47 +04:00
Andrei Kortunov
57d686131e Remove redundant condition 2018-06-08 21:53:47 +04:00
Andrei Kortunov
5105c67642 Add mHidden field to AiTravel 2018-06-08 21:53:47 +04:00
Andrei Kortunov
81f29d8dcd AiWander: resume moving to destination after combat 2018-06-08 21:53:47 +04:00
Andrei Kortunov
18ff097e4a Add the parameter to AiSequence::stack() to control ability to cancel other AI packages 2018-06-08 21:53:47 +04:00
Andrei Kortunov
9d27eb197f AiWander: return to initial position only after combat 2018-06-08 21:53:47 +04:00
Capostrophic
24c1ee7744 Use relative stat difference for haggling 2018-06-08 19:00:45 +03:00
Capostrophic
b7026df551 Improve the offered price formula (Fixes #2222) 2018-06-08 19:00:45 +03:00
Andrei Kortunov
fed10e87aa Store integer actor ID in AI packages (bug #4036) 2018-06-08 19:57:41 +04:00
David Cernat
2a3c74bfcc Merge pull request #447 from OpenMW/master while resolving conflicts
# Conflicts:
#	README.md
2018-06-08 06:01:00 +03:00
Andrei Kortunov
1b9edbe119 Add unequip animation during stance switching (bug #4327) 2018-06-07 16:20:17 +04:00
Marc Zinnschlag
7b4a69ff2f Merged pull request #1728 2018-06-07 13:14:53 +02:00
Marc Zinnschlag
362aa23546 Merged pull request #1724 2018-06-07 13:13:48 +02:00
David Cernat
a28b27f5d9 Merge pull request #443 from OpenMW/master while resolving conflicts
# Conflicts:
#	README.md
2018-06-05 20:57:50 +03:00
Capostrophic
c14536a399 Update faction-owned items confiscation 2018-06-03 20:28:53 +03:00
Capostrophic
3810ade67a Don't make unnecessary faction ID searches 2018-06-03 12:38:53 +03:00
Capostrophic
191cc76378 Consider faction ownerships in item stolen checks (fixes #4293) 2018-06-03 10:22:20 +03:00
Andrei Kortunov
be394870e4 Fix regressions in spell resistance 2018-06-01 20:08:53 +04:00
Andrei Kortunov
84c8fb9df7 Add pursue package only when crime was reported (bug #4433) 2018-06-01 12:41:31 +04:00
David Cernat
669d4d3d7e
Merge pull request #440 from OpenMW/master
Add OpenMW commits up to 27 May 2018
2018-05-27 16:10:16 +03:00
scrawl
cfdf99f601
Revert "Merged pull request #1573"
This reverts commit 7324bd368f, reversing
changes made to 810e4416f6.
2018-05-26 11:39:30 +00:00
scrawl
99ffaafe30
Revert "Merge pull request #1701 from akortunov/standfix"
This reverts commit da47fc79f5, reversing
changes made to 7324bd368f.
2018-05-26 11:35:48 +00:00
Marc Zinnschlag
832b4bb778 Merged pull request #1659 2018-05-25 11:32:08 +02:00
David Cernat
74c2a0b311
Merge pull request #438 from OpenMW/master
Add OpenMW commits up to 24 May 2018
2018-05-24 12:16:11 +03:00
Bret Curtis
da47fc79f5
Merge pull request #1701 from akortunov/standfix
Do not apply queue movement for standing actors
2018-05-23 22:35:08 +02:00
Marc Zinnschlag
7324bd368f Merged pull request #1573 2018-05-23 17:00:29 +02:00
Capostrophic
ba077e7291 Fix movement fatigue loss encumbrance calculation (fixes #4413) 2018-05-13 17:18:45 +03:00
David Cernat
78234f9071 [General] Rename Event into ObjectList & WorldObject into BaseObject 2018-05-13 00:42:24 +03:00
David Cernat
5458e09c8a
Merge pull request #420 from OpenMW/master
Add OpenMW commits up to 11 May 2018
2018-05-12 06:32:01 +03:00
Alf Henrik Sauge
feeee50a88 Dropping a separate NPDTstruct12 object and instead use NPDTstruct52
NPDTstruct12 is now only used when loading and saving. Turning auto calc
on and off now no longer switches between to different set of values
2018-05-09 00:25:07 +02:00
Andrei Kortunov
3636cf2015 Do not apply queue movement for standing actors 2018-05-05 22:41:26 +04:00
Andrei Kortunov
22fb1f3403 Play spellcasting effects from objects 2018-04-30 17:12:06 +04:00
David Cernat
7db74509e0 Merge pull request #412 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwscript/transformationextensions.cpp
2018-04-25 21:55:32 +03:00
Evgeny Kurnevsky
c025b8f8f3
Remove useless comparison. 2018-04-21 17:10:49 +03:00
David Cernat
9e5ddeac50
Merge pull request #408 from OpenMW/master
Add OpenMW commits up to 18 Apr 2018
2018-04-18 18:05:09 +03:00
tri4ng1e
d310d36ea3
[Fix] Some PVS-Studio and cppcheck fixes 2018-04-18 12:36:10 +00:00
tri4ng1e
d4d1703bcf
Some PVS-Studio and cppcheck fixes
cppcheck:
[apps/esmtool/record.cpp:697]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/esmtool/record.cpp:1126]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/esmtool/record.cpp:1138]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/niftest/niftest.cpp:36]: (performance) Function parameter 'filename' should be passed by reference.
[apps/niftest/niftest.cpp:41]: (performance) Function parameter 'filename' should be passed by reference.
[apps/opencs/model/prefs/boolsetting.cpp:25]: (warning) Possible leak in public function. The pointer 'mWidget' is not deallocated before it is allocated.
[apps/opencs/model/prefs/shortcuteventhandler.cpp:52]: (warning) Return value of std::remove() ignored. Elements remain in container.
[apps/openmw/mwstate/quicksavemanager.cpp:5]: (performance) Variable 'mSaveName' is assigned in constructor body. Consider performing initialization in initialization list.

PVS-Studio:
apps/opencs/model/filter/parser.cpp  582  warn  V560 A part of conditional expression is always true: allowPredefined.
apps/opencs/view/world/referencecreator.cpp  67  warn  V547 Expression '!errors.empty()' is always false.
apps/opencs/view/world/referencecreator.cpp  74  warn  V547 Expression '!errors.empty()' is always false.
apps/opencs/view/doc/loader.cpp  170  warn  V560 A part of conditional expression is always true: !completed.
apps/opencs/view/doc/loader.cpp  170  warn  V560 A part of conditional expression is always true: !error.empty().
apps/opencs/model/tools/pathgridcheck.cpp  32  err  V517 The use of 'if (A) {...} else if (A) {...}' pattern was detected. There is a probability of logical error presence. Check lines: 32, 34.
apps/opencs/model/world/refidadapterimp.cpp  1376  err  V547 Expression 'subColIndex < 3' is always true.

apps/openmw/mwgui/widgets.hpp  318  warn  V703 It is odd that the 'mEnableRepeat' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:318, MyGUI_ScrollBar.h:179.
apps/openmw/mwgui/widgets.hpp  319  warn  V703 It is odd that the 'mRepeatTriggerTime' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:319, MyGUI_ScrollBar.h:180.
apps/openmw/mwgui/widgets.hpp  320  warn  V703 It is odd that the 'mRepeatStepTime' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:320, MyGUI_ScrollBar.h:181
apps/openmw/mwmechanics/actors.cpp  1425  warn  V547 Expression '!detected' is always true.
apps/openmw/mwmechanics/character.cpp  2155  err  V547 Expression 'mode == 0' is always true.
apps/openmw/mwmechanics/character.cpp  1192  warn  V592 The expression was enclosed by parentheses twice: ((expression)). One pair of parentheses is unnecessary or misprint is present.
apps/openmw/mwmechanics/character.cpp  521  warn  V560 A part of conditional expression is always true: (idle == mIdleState).
apps/openmw/mwmechanics/pathfinding.cpp  317  err  V547 Expression 'mPath.size() >= 2' is always true.
apps/openmw/mwscript/interpretercontext.cpp  409  warn  V560 A part of conditional expression is always false: rank > 9.
apps/openmw/mwgui/windowbase.cpp  28  warn  V560 A part of conditional expression is always true: !visible.
apps/openmw/mwgui/journalwindow.cpp  561  warn  V547 Expression '!mAllQuests' is always false.
apps/openmw/mwgui/referenceinterface.cpp  18  warn  V571 Recurring check. The '!mPtr.isEmpty()' condition was already verified in line 16.
apps/openmw/mwworld/scene.cpp  463  warn  V547 Expression 'adjustPlayerPos' is always true.
apps/openmw/mwworld/worldimp.cpp  409  err  V766 An item with the same key '"sCompanionShare"' has already been added.
apps/openmw/mwworld/cellstore.cpp  691  warn  V519 The 'state.mWaterLevel' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 689, 691.
apps/openmw/mwworld/weather.cpp  1125  warn  V519 The 'mResult.mParticleEffect' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1123, 1125.
apps/openmw/mwworld/weather.cpp  1137  warn  V519 The 'mResult.mParticleEffect' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1135, 1137.

apps/wizard/unshield/unshieldworker.cpp  475  warn  V728 An excessive check can be simplified. The '(A && B) || (!A && !B)' expression is equivalent to the 'bool(A) == bool(B)' expression.
apps/wizard/installationpage.cpp  163  warn  V735 Possibly an incorrect HTML. The "</p" closing tag was encountered, while the "</span" tag was expected.

components/fontloader/fontloader.cpp  427  err  V547 Expression 'i == 1' is always true.
components/nifosg/nifloader.cpp  282  warn  V519 The 'created' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 278, 282.
components/esm/loadregn.cpp  119  err  V586 The 'clear' function is called twice for deallocation of the same resource. Check lines: 112, 119.
components/esm/cellref.cpp  178  warn  V581 The conditional expressions of the 'if' statements situated alongside each other are identical. Check lines: 175, 178.
components/esmterrain/storage.cpp  235  warn  V560 A part of conditional expression is always true: colStart == 0.
components/esmterrain/storage.cpp  237  warn  V560 A part of conditional expression is always true: rowStart == 0.
2018-04-18 12:36:10 +00:00
David Cernat
49e94725aa [Client] Prevent MechanicsManager::playerLoaded() from enabling AI 2018-04-12 17:18:06 +03:00
David Cernat
fa652964fd
Merge pull request #403 from OpenMW/master
Add OpenMW commits up to 9 Apr 2018
2018-04-10 06:43:24 +03:00
Capostrophic
d9acd19dc0
Merge branch 'master' into illusion 2018-04-09 23:33:11 +03:00
scrawl
92d0fb2981
Merge pull request #1667 2018-04-09 20:23:38 +00:00
scrawl
308551ad49
Merge pull request #1644 2018-04-09 20:23:24 +00:00
scrawl
cbddb4a0a9
Merge pull request #1638 2018-04-09 20:23:20 +00:00
Capostrophic
77467f17c9
Fix a typo 2018-04-06 00:10:48 +03:00
David Cernat
a86c68c5a1 [General] Add sync for ranged weapon & projectile strike enchantments 2018-04-03 14:12:27 +03:00
Andrei Kortunov
27c831959e Handle OnPCHitMe variable (bug #2703) 2018-04-03 07:38:19 +04:00
David Cernat
e3c43c6af7 Merge pull request #400 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/spellcasting.cpp
2018-04-03 01:25:17 +03:00
Capostrophic
4f64ba7b7f Implement sBookSkillMessage GMST 2018-04-02 21:12:38 +03:00
scrawl
c6abec1e51
Merge pull request #1641 2018-04-02 17:53:30 +00:00
scrawl
c610b8acc8
Merge pull request #1649 2018-04-02 17:37:31 +00:00
scrawl
cd9f767e29
Merge pull request #1650 2018-04-02 17:32:40 +00:00
scrawl
f36adfec5f
Merge pull request #1657 2018-04-02 17:28:12 +00:00
scrawl
80a8ef6d49
Merge pull request #1661 2018-04-02 17:18:39 +00:00
Capostrophic
baaf65bc2c Add vanilla enchanted weaponry behavior option, on by default (fixes #4136) 2018-03-31 11:46:23 +03:00
Capostrophic
2dca389a3b Extend magic resistance/weakness to all effects that can be resisted (fixes #4309) 2018-03-30 21:18:29 +03:00
Capostrophic
e6d9bce519 Implement fWerewolfHealth GMST (fixes #4142) 2018-03-30 19:27:18 +03:00
David Cernat
ac82124a5d Merge pull request #395 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/actors.cpp
2018-03-29 07:28:30 +03:00
Capostrophic
2d119e834a Add vanilla absorb attribute behavior option, on by default (Fixes #4135) 2018-03-27 14:27:23 +03:00
Capostrophic
b6a2589e7b Don't apply harmful spell effects on the player in god mode (fixes #4264) 2018-03-27 14:02:14 +03:00
Capostrophic
42b7846f81 Replace a redundant playerAllies check with a boolean (Fixes #4229) 2018-03-23 18:45:39 +03:00
Nelsson Huotari
63e34a5575 Typofix: updateCrimePersuit -> ...Pursuit 2018-03-23 14:10:43 +02:00
scrawl
c02920bcd1
Merge pull request #1634
Conflicts:
	apps/openmw/mwworld/worldimp.hpp
2018-03-20 22:48:20 +00:00
scrawl
f47429d575
Merge pull request #1635 2018-03-20 22:47:36 +00:00
scrawl
ff7f964643
Merge pull request #1636 2018-03-20 22:47:31 +00:00
Andrei Kortunov
53ef345680 Update magic effect particles after building new animation (bug #2254) 2018-03-19 10:43:22 +04:00
Andrei Kortunov
a0a30cdbf5 AI: hide torches during bad weather (bug #4334) 2018-03-19 08:03:53 +04:00
Andrei Kortunov
bd6c7de579 Do not unequip two-handed weapon when equipping torch 2018-03-19 08:03:53 +04:00
Capostrophic
5b49248d6e
Restrict opening doors to bipedal actors (Fixes #4313) 2018-03-18 17:24:27 +03:00
David Cernat
20caea083a [Client] Use correct count for items in equipment packets
Previously, throwing weapon sync was completely broken for players, as the count for their equipped throwing weapons was never set and – as a result – defaulted to a count of 1 on other clients. As a result, any time a player threw a dart, they would then appear as having switched to hand-to-hand for other players.

Moreover, the count of equipped items was mistakenly based on the total count of items with that refId in the inventory. As a result, if – for example – I equipped 1 Daedric Longsword and had 4 others in my inventory, my DedicatedPlayer on other clients would equip a Daedric Longsword with a count of 5. If I was overencumbered by having that many Daedric Longswords on me and then dropped 4 of them, allowing myself to move again, my DedicatedPlayer would still walk around with 5 Daedric Longswords and lack animations due to still being overencumbered on the other clients.

These problems were less prevalent for actors, but their equipment updating code has also been changed to match that of players.
2018-03-12 23:31:37 +02:00
David Cernat
b7c6261e16 Merge pull request #392 from OpenMW/master while resolving conflicts
# Conflicts:
#	README.md
2018-03-09 21:07:46 +02:00
scrawl
870c658500
Remove missing souls, remove some runaway exceptions (Fixes #4111) 2018-03-08 23:38:04 +00:00
Harald H
d3b623b5d3 http to https for supported urls (#1625)
* http to https for supported urls

* http to https

* http to https

* http to https

* http to https

* http to https

* http to https

* http to https

* http tp https

* http to https

* http to https

* http to https

* http to https

* http to https

* http to https

* http to https

* http to https

* some url fixes

* http to https
2018-03-08 21:23:24 +01:00
Capostrophic
d371bebb33 Prevent items in a container owned by a dead actor from being counted as stolen (Bug #4328) 2018-03-03 15:57:13 +03:00
Capostrophic
cc0c6ddaa6 Account for empty victimRef (Bug #4328) 2018-03-03 15:57:03 +03:00
Capostrophic
929fc68160
Consider items with dead owner not stolen (fixes bug #4328) 2018-02-26 23:21:51 +03:00
David Cernat
03266d7648 [Client] Prevent guards from arresting players who are currently jailed 2018-02-25 21:33:04 +02:00
David Cernat
a7e3261b0b
Merge pull request #383 from OpenMW/master
Add OpenMW commits up to 11 Feb 2018
2018-02-11 06:57:54 +02:00
Andrei Kortunov
f626a7fcc7 Take in account PC rank during disposition calculation (bug #4322) 2018-02-10 17:58:30 +04:00
David Cernat
66078bfea7 [General] Implement Mark location sync as part of PlayerMiscellaneous 2018-01-31 04:50:29 +02:00
David Cernat
5d4b97645d Merge pull request #374 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/CMakeLists.txt
2018-01-27 22:52:59 +02:00
Andrei Kortunov
eccb49da18 Do not summon the bound bow if there is no suitable ammo 2018-01-11 21:08:30 +04:00
Andrei Kortunov
b995617559 implement rateAmmo() function 2018-01-11 21:08:11 +04:00
scrawl
bba9a8dd91
Don't update off-screen animations
Make flying creatures animate in-place when out of processing range
2018-01-11 01:49:35 +00:00
David Cernat
65d978a3cb
Merge pull request #364 from OpenMW/master
Add OpenMW commits up to 1 Jan 2017
2018-01-02 07:50:37 +02:00
David Cernat
bca9c55046 [Client] Reinstate "Merge pull request #1529 from drummyfish/animfix"
This reverts commit 2f4cd6b713 and adds back the changes made by 45993d3da2 because the OpenMW issue at https://bugs.openmw.org/issues/4250 has been fixed by 57257d057f
2018-01-02 07:47:27 +02:00
scrawl
57257d057f
Remove unintended jump cooldown (Fixes #4250) 2017-12-31 23:48:51 +00:00
David Cernat
2f4cd6b713 [Client] Revert "Merge pull request #1529 from drummyfish/animfix"
This reverts commit 45993d3da2, reversing
changes made to 3d347730dc.

That commit made players have to wait around 1.5 seconds after each jump before doing a new one.

It will be reinstated once its accompanying OpenMW issue at https://bugs.openmw.org/issues/4250 is fixed.
2017-12-26 19:27:13 +02:00
David Cernat
cac2c6c1e8 Merge pull request #360 from TES3MP/0.6.1-openmw-updates while resolving conflicts 2017-12-25 02:25:01 +02:00
David Cernat
ecb0ad0d77 Merge pull request #359 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
2017-12-25 02:03:02 +02:00
David Cernat
535fba0cb3 [Client] Finish drag and drops when arrested or teleported by server 2017-12-16 07:21:02 +02:00
Andrei Kortunov
0e04a26ef6 Set duration of magic effects from ingredients (bug #4261) 2017-12-10 16:10:44 +04:00
Allofich
7e87ce8787 Prevent combat on/off cycling for calmed actors 2017-12-06 01:03:24 +09:00
Allofich
e0c54b3f39 Stop guards trying to arrest player when calm
(Fixes #3863)
2017-12-05 23:53:02 +09:00
David Cernat
047ad40b96 [Client] Clear FortifyAttribute effects when server sets modifier to 0 2017-12-02 09:22:36 +02:00
David Cernat
e7f20e7daf Merge pull request #351 from OpenMW/master while resolving conflicts
# Conflicts:
#	CMakeLists.txt
#	README.md
2017-11-30 10:06:38 +02:00
scrawl
47a5229eed
Merge pull request #1564 2017-11-29 22:10:36 +00:00
scrawl
59bfd670c0
Merge pull request #1571 2017-11-29 22:04:41 +00:00
David Cernat
22521578eb
Merge pull request #349 from OpenMW/master
Add OpenMW commits up to 28 Nov 2017
2017-11-29 03:52:15 +02:00
Grigorii Latyshev
2abb1a2ec2 Added checkMagicka parameter 2017-11-28 23:35:54 +01:00
Grigorii Latyshev
9fe5a4d236 Revert condition changes 2017-11-28 23:35:46 +01:00
Grigorii Latyshev
dab72b45db Move mana reducing code back 2017-11-28 23:34:05 +01:00
Andrei Kortunov
b9d9660efd Update music state in the menu mode (bug #3664) 2017-11-28 20:49:48 +04:00
Andrei Kortunov
f7f8dfaf2a AiWander: do not allow flying/swimming creatures to use pathgrid 2017-11-28 18:03:13 +04:00
scrawl
c50b18b3bb
Move PathgridGraph out of CellStore
By definition this is not 'Mutable state of a cell' and does not belong in CellStore.

This change should improve startup times (graph is now loaded on demand) and edits to 'pathgrid.hpp' no longer cause the entirety of OpenMW to be rebuilt.
2017-11-27 21:20:31 +00:00
scrawl
5fe68ab062
Merge pull request #1419 2017-11-27 21:13:11 +00:00
Grigorii Latyshev
ce32462358 Move code to apps/openmw/mwmechanics/spellcasting.cpp, move reduce mana code to CastSpell::cast(const ESM::Spell*) 2017-11-26 13:58:04 +01:00
Andrei Kortunov
dea7d0beff Do not interrupt swim and sneak idle animations during attack (bug #4122) 2017-11-26 09:54:12 +04:00
David Cernat
5aff515d3f
Merge pull request #337 from OpenMW/master
Add OpenMW commits up to 15 Nov 2017
2017-11-16 08:49:56 +02:00
scrawl
cf40d19d7d
Merge pull request #1551 from thegriglat/abs
Change abs to std::abs
2017-11-15 17:34:59 +00:00
scrawl
60fba7acd8 Fix reorder warning 2017-11-15 17:20:08 +00:00
Grigorii Latyshev
6e4f6c4bd5 Change abs to std::abs 2017-11-13 21:36:55 +01:00
David Cernat
2ba1c84cf7 Merge pull request #335 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwgui/container.cpp
2017-11-12 06:35:15 +02:00
scrawl
a7fd27f413
Merge pull request #1544 from rexelion/archerrangefix
use fProjectileMaxSpeed for ranged weapons distance (fixes #4192)
2017-11-11 22:30:59 +00:00
scrawl
98b4f9c596
Merge pull request #1549 from akortunov/itemmodels
Item models reworking
2017-11-11 22:12:07 +00:00
Andrei Kortunov
8c0dcd8b2b Do not track a nearest actor during combat and pursue (bug #4179) 2017-11-11 19:46:59 +04:00
rexelion
f0649849b8 changed variable name to be more descriptive 2017-11-11 12:00:23 +00:00
Andrei Kortunov
9943bd4d74 AiWander fast forwarding improvements (bug #3638) 2017-11-11 15:31:06 +04:00
Andrei Kortunov
99517d83ea Bound items detection refactoring 2017-11-11 11:58:22 +04:00
Andrei Kortunov
a02124f884 Handle item owners during pickpocketing 2017-11-11 11:58:18 +04:00
rexelion
69a56eaea3 don't initialise rangeAttackOfTarget 2017-11-10 10:44:53 +00:00
David Cernat
f2a6957e16 Merge pull request #331 from OpenMW/master while resolving conflicts 2017-11-10 08:43:50 +02:00
rexelion
983c33c4c8 don't use a pointer for ActionWeapon 2017-11-09 14:23:26 +00:00
rexelion
cab0002461 Backing up distance is now dependent on opponents's weapon range; don't back up from ranged oponents 2017-11-07 17:57:23 +00:00
rexelion
a1d9f11b04 use fProjectileMaxSpeed for ranged weapons distance 2017-11-07 11:43:21 +00:00
scrawl
801f2d42d5
Merge pull request #1537 from drummyfish/guardfix
Check the real distance to target in AIPursue (issue #4184)
2017-11-05 23:24:59 +00:00
Miloslav Číž
f98a821482 fix possible bug in aipursue 2017-11-05 23:46:15 +01:00
scrawl
87c79d7102
Merge pull request #1536 from rexelion/knockoutfix
Wait a few seconds before getting up (fixes #3884)
2017-11-05 20:27:54 +00:00
Miloslav Číž
430d01a39a additional animation refactor 2017-11-05 20:19:47 +01:00
rexelion
de7a7d842b mTimeUntilWake is initialised in the constructor 2017-11-05 18:30:34 +00:00
rexelion
48ec680f23 use game time instead of real time 2017-11-04 19:37:20 +00:00
Miloslav Číž
f34223fce9 check the real distance to target in aipursue 2017-11-04 20:02:21 +01:00
rexelion
ab66034ed1 use uniform_int_distribution instead of rand() 2017-11-04 02:15:56 +00:00
rexelion
ee2f3db9a8 fixed randomness 2017-11-04 01:31:15 +00:00
rexelion
de83ad0116 use real time; wait random number of seconds 2017-11-04 00:24:09 +00:00
rexelion
5b8610b34b knocked out characters wait some time before getting up 2017-11-01 23:44:50 +00:00
Miloslav Číž
ff1265c0e7 refactor jump animation 2017-10-31 14:22:24 +01:00
Miloslav Číž
7bc512974f use mcurrentjump instead of custom attrib 2017-10-30 15:26:38 +01:00
Miloslav Číž
5c8f491441 move animation disabling code to a better place 2017-10-28 18:46:52 +02:00
Miloslav Číž
f9c396e0ea stop landing animation when turning 2017-10-28 15:48:07 +02:00
David Cernat
260b3411c3 Merge pull request #317 from OpenMW/master
Add OpenMW commits up to 18 Oct 2017
2017-10-18 15:13:48 +03:00
Andrei Kortunov
4d4d247565 Use SwimTurnLeft/Right animations correctly 2017-10-17 23:26:55 +04:00
David Cernat
e164e6305e Merge pull request #313 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
#	CMakeLists.txt
#	apps/openmw/mwgui/jailscreen.cpp
#	apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
2017-10-16 07:37:29 +03:00
scrawl
03554b2f4b Fix some style issues flagged by cppcheck 2017-10-15 17:06:58 +02:00
scrawl
bbf9b0c0a7 Merge pull request #1503 from akortunov/regressions
Handle Trespassing crime differently from Theft
2017-10-15 09:08:52 +00:00
Andrei Kortunov
8f255a6b72 Handle Trespassing crime differently from Theft (bug #4158) 2017-10-15 11:03:02 +04:00
Andrei Kortunov
30b05b557b ExtraSpell magic effect: a basic implementation 2017-10-14 16:55:00 +04:00
David Cernat
3e8d7c8416 Merge pull request #306 from OpenMW/master
Add OpenMW commits up to 7 Oct 2017
2017-10-07 21:54:21 +03:00
Andrei Kortunov
e2afd3690c Remove item by id from InventoryStore 2017-10-06 10:54:25 +04:00
David Cernat
38247ff086 Merge pull request #303 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwbase/dialoguemanager.hpp
#	apps/openmw/mwdialogue/dialoguemanagerimp.hpp
#	apps/openmw/mwgui/container.cpp
#	apps/openmw/mwgui/windowmanagerimp.cpp
#	apps/openmw/mwscript/dialogueextensions.cpp
2017-10-06 04:10:04 +03:00
Andrei Kortunov
1cb7ed5db1 Use owned tooltips for items in containers correctly 2017-10-04 12:13:45 +04:00
scrawl
b24fd77ea2 Merge pull request #1488 from akortunov/equipfix
AI: Autoequip armor when bound armor spell expires
2017-10-01 16:06:26 +00:00
Andrei Kortunov
21b6bd176f AI: Autoequip armor when bound armor spell expires 2017-10-01 17:11:30 +04:00
Andrei Kortunov
c5fcb9684e Improve owned crosshair feature behaviour 2017-09-30 21:29:02 +04:00
Andrei Kortunov
f26206b630 Make unconscious actors do not speak and do not track targets 2017-09-30 20:55:42 +04:00
Andrei Kortunov
3ebb18ce18 Make unconscious actors do not report about crimes 2017-09-30 20:35:29 +04:00
Andrei Kortunov
34895157f9 Consider taking items from unconscious NPC as a theft 2017-09-30 20:22:26 +04:00
David Cernat
44fb7518ee Merge pull request #300 from OpenMW/master
Add OpenMW commits up to 28 Sep 2017
2017-09-28 11:09:14 +03:00
Andrei Kortunov
668a947210 Inherit owner, if an item is in container (regression #4128) 2017-09-27 20:00:41 +04:00
David Cernat
ddf0dfed55 Merge pull request #298 from OpenMW/master
Add OpenMW commits up to 26 Sep 2017
2017-09-26 21:54:55 +03:00
Andrei Kortunov
9b04a7c1e6 Fix idle animations playing 2017-09-24 16:26:41 +04:00
scrawl
2a14af2e27 Merge pull request #1474 from akortunov/swimanimations
Implement missing swim animations
2017-09-23 23:33:37 +00:00
scrawl
22222f07ae Merge pull request #1475 from akortunov/wanderfix
AiWander: reset spawn position, if an actor was moved to another cell
2017-09-23 23:10:35 +00:00
scrawl
2494c22d66 Merge pull request #1470 from MiroslavR/convertmprj
ESS-Importer: Convert magic projectiles
2017-09-23 22:55:56 +00:00
Andrei Kortunov
91adfc9fc0 AiWander: reset spawn position, if an actor was moved to another cell (bug #4010) 2017-09-23 20:59:06 +04:00
Andrei Kortunov
a57f6ac2af Fix a typo in attack animation name 2017-09-23 08:25:58 +04:00
David Cernat
73e7aa838d Merge pull request #296 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwgui/container.cpp
2017-09-22 19:12:41 +03:00
Andrei Kortunov
bcad431cc5 Implement SwimTurnLeft/Right animations 2017-09-22 16:07:00 +04:00
Andrei Kortunov
1c6cfad3cc Implement SwimHit animation 2017-09-22 15:49:42 +04:00
Andrei Kortunov
3eb1308c0d Implement SwimKnockdown/out animations 2017-09-22 15:26:35 +04:00
Andrei Kortunov
6260bb1366 Implement SwimAttack1-3 and SwimDeathKnockDown/Out animations 2017-09-22 14:51:06 +04:00
scrawl
75c047a6e0 Merge pull request #1472 from akortunov/equipfix
Do not play draw weapon animation when equip a new weapon
2017-09-21 13:05:14 +00:00
Andrei Kortunov
5da532a36c Do not play draw weapon animation when equip a new weapon (bug #4056) 2017-09-21 10:48:52 +04:00
MiroslavR
f15de6d3ca ESS-Importer: Convert magic projectiles (Closes #2320) 2017-09-20 18:58:56 +02:00
scrawl
5ebb43a422 Merge pull request #1467 from akortunov/guifixes
Restack soulgems when use SoulTrap
2017-09-20 14:15:49 +00:00
David Cernat
7f0ea7d01f Merge pull request #294 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/character.cpp
2017-09-20 16:52:44 +03:00
Andrei Kortunov
9342a0254f Restack soulgems when use SoulTrap 2017-09-20 10:44:24 +04:00
scrawl
5688257837 Merge pull request #1462 from kcat/master
Minor animation fixes
2017-09-19 20:15:47 +00:00
scrawl
ed5b6320f3 Merge pull request #1463 from akortunov/getdetected
Allow to use GetDetected without a reference
2017-09-19 20:15:16 +00:00
David Cernat
4d4eb1bb9f Merge pull request #292 from OpenMW/master
Add OpenMW commits up to 18 Sep 2017
2017-09-19 09:40:45 +03:00
Andrei Kortunov
65d8e2ff5d Allow to use GetDetected without a reference (bug #3110) 2017-09-18 21:46:57 +04:00
Chris Robinson
b770c1493f Don't spam about missing animations 2017-09-18 01:28:40 -07:00
scrawl
d294d7e284 Fix possible fall damage when switching from falling to flying 2017-09-17 23:16:49 +00:00
scrawl
fcb815f2c7 Move fall height reset into PhysicsSystem (Fixes #4049)
To avoid using onGround before it's actually set.
2017-09-17 23:06:51 +00:00
scrawl
a560841705 Merge pull request #1460 from AnyOldName3/invalid-death-count-cleaning
Check death counts are for valid actors before loading them
2017-09-17 14:42:56 +00:00
AnyOldName3
0be7e2a5a5 Fix really obvious flaw with ignored records not being skipped that I missed 2017-09-17 14:16:17 +01:00
AnyOldName3
5a5cb1a160 Check death counts are for valid actors before loading them 2017-09-17 14:09:29 +01:00
David Cernat
960b91a53c Merge pull request #290 from OpenMW/master
Add OpenMW commits up to 17 Sep 2017
2017-09-17 10:53:33 +03:00
scrawl
f594eda574 Reset attackStrength when starting a new attack (Fixes #3935) 2017-09-16 23:04:54 +00:00
Chris Robinson
780e82480d Make the PlayMode and PlayType enums scoped
Also shorten them by putting them in the MWSound namespace
2017-09-15 02:36:59 -07:00
David Cernat
bd541b1e5b Merge pull request #287 from OpenMW/master while resolving conflicts
# Conflicts:
#	CMakeLists.txt
#	apps/openmw/CMakeLists.txt
2017-09-12 07:38:49 +03:00
Andrei Kortunov
661232222f Allow guards to attack fighting creatures only in fAlarmRadius range 2017-09-10 15:26:48 +04:00
scrawl
8f1c8759e4 Merge pull request #1432 from akortunov/alchemyfix
Update alchemy effects after every created potion (#4079)
2017-09-07 20:51:42 +00:00
Andrei Kortunov
dc0313a36f Use base skill value when calculating rank requirements 2017-09-07 21:06:10 +04:00
Andrei Kortunov
7559d25317 Update alchemy effects after every created potion (#4079) 2017-09-06 15:11:47 +04:00
David Cernat
b64f379949 Merge pull request #286 from OpenMW/master while resolving conflicts
# Conflicts:
#	CMakeLists.txt
#	apps/openmw/mwmechanics/actors.hpp
2017-09-04 18:05:24 +03:00
David Cernat
ccb15cc09e [Client] When players die, make guards willing to arrest them again 2017-09-04 15:13:05 +03:00
Andrei Kortunov
a5b01fefec Allow to interrupt an attack, if attack button is held 2017-09-01 14:28:21 +04:00
David Cernat
4468e6ec4a Merge pull request #280 from OpenMW/master while resolving conflicts
# Conflicts:
#	.gitignore
#	apps/openmw/mwmechanics/actors.hpp
#	apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
2017-08-31 15:14:13 +03:00
scrawl
dc53573de4 Merge pull request #1405 from akortunov/stancechangefixes
Do not allow player to change weapon/spell during attack or spellcast
2017-08-29 23:11:23 +00:00
Andrei Kortunov
8003dbee12 Combat AI: use effective cast cost when rate enchanted weapon 2017-08-29 16:40:55 +04:00
Andrei Kortunov
fb45995a41 Do not allow player to change weapon/spell during attack or spellcasting (bug #2445) 2017-08-29 15:53:23 +04:00
Andrei Kortunov
e799cbdb51 Combat AI: allow only one summoned creature at time 2017-08-22 09:18:49 +04:00
scrawl
2611377081 Merge pull request #1350 from akortunov/deathanimationfix
Do not allow to loot fighting actors during death animation (bug #3528)
2017-08-18 22:04:12 +00:00
scrawl
f277007b49 Merge pull request #1404 from akortunov/ownedcrosshair
Owned crosshair feature improvements [discussion]
2017-08-18 20:21:23 +00:00
Andrei Kortunov
7c80ddc9de Owned crosshair improvements (bug #2789) 2017-08-18 17:08:15 +04:00
Andrei Kortunov
641a6cd842 Added a delay before summoned creature corpse despawning 2017-08-18 11:58:28 +04:00
Capostrophic
6c8c883dc0 Making knownEffect aware that there can be more than 4 potion effects 2017-08-18 00:47:28 +03:00
scrawl
b73ed5ccac Merge pull request #1391 from akortunov/aifollow
AiFollow: add a threshold when turning to target
2017-08-17 20:17:11 +00:00
Andrei Kortunov
d8d47f081b AiFollow: add a threshold when turning to target 2017-08-17 22:52:34 +04:00
scrawl
c231d20413 Merge pull request #1362 from akortunov/spellpriority
Combat AI: use WhenUsed enchantments [Feedback needed]
2017-08-16 21:23:57 +00:00
scrawl
306b58349e Merge pull request #1387 from akortunov/movementfix
Check actual movement for GetPCRunning and GetPCSneaking [Feedback needed]
2017-08-16 20:50:49 +00:00
scrawl
d1161819bf Merge pull request #1396 from akortunov/dispelfix
Dispel only effects from spells
2017-08-16 20:49:40 +00:00
Andrei Kortunov
bc7353f100 Check animation state for GetPCRunning and GetPCSneaking 2017-08-16 20:30:47 +04:00
Andrei Kortunov
1e983604db Dispel only effects from spells (bug #3995) 2017-08-15 09:35:29 +04:00
scrawl
8acf0ba633 Merge pull request #1394 from akortunov/followerattackfix
Prevent followers from attacking player if crime was reported
2017-08-14 22:19:46 +00:00
Andrei Kortunov
7a5645b35d Prevent followers from attacking player if crime was reported 2017-08-14 18:42:19 +04:00
Andrei Kortunov
f84eb68b3d Confiscate an item when you try to sell it to its owner (bug #3944) 2017-08-14 11:31:17 +04:00
Andrei Kortunov
ab391f17db Fixes regression in spell school detection (bug #4007) 2017-08-07 12:12:57 +04:00
scrawl
ba72eb77f4 Merge pull request #1374 from akortunov/guardfix
Disable AiPursue package for player's followers
2017-08-06 21:11:08 +00:00
David Cernat
77ce05b7d6 [Client] Fix spell casting probability synchronization 2017-08-06 00:11:54 +03:00
Andrei Kortunov
72ce118d02 Disable AiPursue package for player's followers 2017-08-05 12:38:26 +04:00
Andrei Kortunov
cf7a6232d0 Combat AI: use WhenUsed enchantments 2017-08-05 12:18:38 +04:00
David Cernat
721b218cc2 Merge pull request #258 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
#	README.md
2017-08-05 00:09:34 +03:00
scrawl
a63b9e33fd Merge pull request #1369 from akortunov/tauntfix
Take in account a temporary disposition in isAggressive check (bug #3…
2017-08-03 21:01:03 +00:00
Andrei Kortunov
d1489f5b42 Take in account a temporary disposition in isAggressive check (bug #3987) 2017-08-03 19:18:31 +04:00
elsid
748f5225a9 Copy PathFinder::mPath back value when pass to MWMechanics::AiPackage::pathTo as dest
May become dangling reference because method may remove all elements from mPath.
2017-08-02 11:35:53 +03:00
Andrei Kortunov
604f9ee323 Split weapons and spells rating code from combat actions 2017-08-01 09:05:35 +04:00
Andrei Kortunov
b7cfb1aaf4 Fixed DamageHealth and AbsorbHealth effects applying 2017-07-31 23:05:19 +04:00
scrawl
eac2e52841 Merge pull request #1329 from akortunov/priorityfix
Combat AI: make default spell priority calculation formula close to vanilla
2017-07-31 18:21:47 +00:00
scrawl
fde6e29628 Merge pull request #1326 from akortunov/spellpriority
Combat AI improvements [feedback needed]
2017-07-31 17:51:51 +00:00
scrawl
333648c975 Merge pull request #1324 from akortunov/doorfix
Improved doors detection
2017-07-31 17:42:53 +00:00
Andrei Kortunov
10eb6ec75f AI: Check angle between actor and door 2017-07-31 19:28:02 +04:00
Allofich
dae19412f2 Fix problem with animations not looping
Fixes #3804
2017-07-29 20:54:11 +09:00
scrawl
631d79f1c8 Merge pull request #1346 from akortunov/aibreathe
AiBreathe AI package (feature #1374)
2017-07-28 20:50:04 +00:00
scrawl
4c2487d55f Merge pull request #1353 from akortunov/restfix
Update effects during rest (bug #3679)
2017-07-28 20:46:14 +00:00
David Cernat
4db64e1721 [Client] Synchronize spellcasting for non-bipedal creatures 2017-07-28 20:49:26 +03:00
Andrei Kortunov
920021c61b Update effects during rest (bug #3679) 2017-07-28 16:50:52 +04:00
David Cernat
e6e5d406b8 Merge pull request #248 from OpenMW/master
Add OpenMW commits up to 26 Jul 2017, part 2
2017-07-26 20:31:39 +03:00
David Cernat
796118c266 [Client] Send StatsDynamic packets more often 2017-07-26 20:15:35 +03:00
scrawl
d3be4769ea Merge pull request #1347 from akortunov/encumberancefix
Fixed encumberance check (bug #3963)
2017-07-26 16:20:16 +00:00
David Cernat
84662ed3fe [Client] Add temporary warnings when creating custom spells and items 2017-07-26 05:36:12 +03:00
Andrei Kortunov
548814bfbc Added AiBreathe package (feature #1374) 2017-07-25 10:58:04 +04:00
Andrei Kortunov
325ea10594 Fixed encumberance check (bug #3963) 2017-07-25 10:28:33 +04:00
Andrei Kortunov
3ba0a336b7 Move spell magicka cost calculation to standalone function 2017-07-24 21:11:59 +04:00
David Cernat
fd046e42ef Merge pull request #242 from OpenMW/master
Add OpenMW commits up to 16 Jul 2017
2017-07-17 21:34:44 +03:00
Andrei Kortunov
98f161c7fd Combat AI: avoid enemy hits when casting Self-ranged spells (fixes #3922) 2017-07-16 22:38:23 +04:00
David Cernat
e3929df38a Merge pull request #239 from OpenMW/master
Add OpenMW commits up to 14 Jul 2017
2017-07-15 09:13:04 +03:00
Andrei Kortunov
54b4d93f79 Added a special function for GUI sounds playing 2017-07-10 15:48:00 +04:00
David Cernat
1d504a665f [General] Add RANK, EXPULSION and BOTH actions to PlayerFaction packets 2017-07-05 07:06:33 +03:00
Andrei Kortunov
37952c9a79 Added door detection based by ray casting 2017-07-03 22:08:29 +04:00
David Cernat
0b68e59060 [Client] Send ObjectLock packets when using lock spells 2017-06-29 22:29:49 +03:00
Andrei Kortunov
143fdae6fe Make spell priority calculation close to vanilla (bug #3937). 2017-06-28 14:02:51 +04:00
Koncord
6222c20e82 [Client] Convert MechanicsHelper to namespace 2017-06-27 16:43:53 +08:00
David Cernat
9a519b5cc2 [Client] Avoid incrementing actor death count if we aren't its authority 2017-06-23 09:22:48 +03:00
David Cernat
ebf7740969 [General] Repurpose GameConsole packet as GameSettings & add difficulty to it 2017-06-20 05:28:45 +03:00
David Cernat
df67ae4689 Merge pull request #229 from OpenMW/master
Add OpenMW commits up to 20 Jun 2017
2017-06-20 04:16:51 +03:00
David Cernat
fa3baac0f3 Merge pull request #228 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
#	CMakeLists.txt
#	apps/openmw/main.cpp
2017-06-18 18:16:10 +03:00
Andrei Kortunov
1a8f2bfc11 Combat AI: select target by priority 2017-06-16 16:11:12 +04:00
Andrei Kortunov
a2be73295b Combat AI: take in account enemy weapon resistance 2017-06-16 13:33:42 +04:00
Andrei Kortunov
62b24eb078 Combat AI: do not use range weapons under water 2017-06-16 12:20:31 +04:00
Allofich
4f08084e79 Make stationary actors return to position on load
Also makes wandering actors resume their previous destination when an interrupting combat or pursuit ends.

(Fixes #3656)
2017-06-15 18:33:50 +09:00
Allofich
028762a7dc Make guards that are attacked try to arrest player
(Fixes #3706)
2017-06-15 01:47:10 +09:00
scrawl
53264f34b3 Merge pull request #1321 from akortunov/spellpriority
Use mRange to check spell range instead of mArea.
2017-06-13 17:06:47 +02:00
Andrei Kortunov
87939bf3b1 Use mRange to check spell range instead of mArea. 2017-06-13 11:02:40 +04:00
scrawl
dd3f612e88 Merge pull request #1316 from akortunov/doorfix
Doors usage improvements
2017-06-12 23:34:40 +02:00
scrawl
80eb2ea35d Merge pull request #1313 from akortunov/spellpriority
Make combat AI to do not cast target spells under water
2017-06-12 23:32:35 +02:00
Andrei Kortunov
e9d0bf7c12 Added missed return statement 2017-06-11 15:06:44 +04:00
Andrei Kortunov
9fdfb2a83f Spell priority: make AI do not cast target spells when enemy is under water 2017-06-11 10:13:00 +04:00
Andrei Kortunov
188424d5d3 Allow AI to use keys to open doors 2017-06-10 22:31:17 +04:00
David Cernat
1ae5bd19e1 [Client] Don't set difficulty based on client settings 2017-06-10 15:29:09 +03:00
David Cernat
70d9374a6a [General] Implement PlayerKillCount packets 2017-06-10 14:04:19 +03:00
Andrei Kortunov
4600f24e27 Playing sound when AI is opening a door 2017-06-09 22:52:40 +04:00
Bret Curtis
c781d1f8ed purge unnecessary imports
add fstream back

add fstream back

add fstream back

add fstream back

add fstream back

add fstream back

add fstream back
2017-06-09 19:08:53 +02:00
Bret Curtis
d785344fad purge all instances of <boost/shared_ptr.hpp>, clean up unused headers 2017-06-09 19:08:53 +02:00
Ewan Higgs
38a2de3c51 convert std::autor_ptr to std::unique_ptr, originally by Ewan Higgs and updated by Bret Curtis 2017-06-09 16:49:25 +02:00
Andrei Kortunov
3190f28710 Spell priority: make AI do not cast target spells under water 2017-06-09 10:23:46 +04:00
David Cernat
89f6c6df96 Merge pull request #225 from OpenMW/master
Add OpenMW commits up to 4 Jun 2017
2017-06-05 03:38:58 +03:00
Andrei Kortunov
00402b7154 Removed unused variable 2017-06-04 14:09:23 +04:00
Andrei Kortunov
42f3c73c75 Spell priority: dispel usage improvements 2017-06-03 13:16:44 +04:00
Koncord
a847d46984 [Client] Get rid Z axis in direction.pos 2017-06-02 18:33:51 +08:00
Koncord
5f30dfd5db [Client] Get rid direction.rot 2017-06-02 15:44:39 +08:00
David Cernat
8c785fb22c [Client] Send ObjectDelete packets when summoned creatures despawn 2017-06-02 09:15:08 +03:00
David Cernat
41de1876a3 Merge pull request #223 from OpenMW/master
Add OpenMW commits up to 31 May 2017
2017-06-01 08:11:46 +03:00
Andrei Kortunov
f6c3d4935e Spell priority: feather and burden 2017-05-31 19:23:44 +04:00
Andrei Kortunov
6c21e4ed31 Spell priority: ignore some effects useless in battle 2017-05-31 18:41:41 +04:00
David Cernat
068a45be87 [General] Synchronize player & NPC rotation animations 2017-05-30 12:08:58 +03:00
David Cernat
f4cdedd8cb [General] Synchronize summoned creatures 2017-05-30 10:11:01 +03:00
David Cernat
1c6e359fe9 [Client] Set and clear hitAttemptActorId for DedicatedPlayers
This allows a DedicatedPlayer's follower NPCs to target enemies attacking the DedicatedPlayer.
2017-05-30 08:20:45 +03:00
David Cernat
0cce9908be Merge pull request #222 from OpenMW/master
Add OpenMW commits up to 29 May 2017
2017-05-29 04:53:23 +03:00
David Cernat
9d9581a1c2 [Client] Prevent DedicatedActors from automatically equipping torches 2017-05-27 02:52:26 +03:00
Andrei Kortunov
46c8842808 Fixed enchant points calculations formula 2017-05-26 23:42:11 +04:00
David Cernat
20a72ec807 [Client] Send ObjectTrap packets when disarming traps with keys & probes 2017-05-26 01:47:59 +03:00
David Cernat
b1264cca92 [Client] Send ObjectLock whenever using spells or keys to unlock objects 2017-05-24 16:25:44 +03:00
David Cernat
870fd9a78b [General] Remove ObjectUnlock packet, use ObjectLock with 0 lock instead 2017-05-24 13:28:34 +03:00
David Cernat
48ee8fd536 [Client] Send PlayerFaction packets when getting expelled from factions 2017-05-24 12:19:11 +03:00
David Cernat
d0ec5c61e2 Merge pull request #219 from OpenMW/master
Add OpenMW commits up to 21 May 2017, part 2
2017-05-21 22:51:44 +03:00
scrawl
f9cdc2da94 Merge pull request #1293 from akortunov/spellpriority
aicombataction.cpp: implement some spell priority TODO's
2017-05-21 21:18:10 +02:00
David Cernat
8f5e6531db [Client] Avoid updating positions and anim flags when framerate is low
Also rename DedicatedPlayer methods so they are consistent with those from DedicatedActor
2017-05-14 10:52:44 +03:00
David Cernat
271594f0ee [Client] Don't play death animations for NPCs saved as dead on server 2017-05-14 10:27:43 +03:00
David Cernat
dcc61a095a [Client] Allow multiple WorldObjects to be added to a WorldEvent 2017-05-06 20:44:39 +03:00
David Cernat
8b8d55e8d3 [Client] Set a very high processing range for AI for the time being 2017-05-05 03:17:28 +03:00
Andrei Kortunov
4d927439ca Spell priority: item wearing check when disintegrate weapon/armor 2017-05-03 11:13:35 +04:00
Andrei Kortunov
d598809ac6 Spell priority: check spell resistance, check if actor is already has a non-magnitude effect 2017-05-03 10:35:56 +04:00
David Cernat
809b4d78ba [Client] Split off DedicatedPlayer and PlayerList into different files 2017-04-30 14:57:43 +03:00
Andrei Kortunov
f484ef8ffb Fixed jump fatigue loss formula (fixes #3843) 2017-04-26 18:28:59 +04:00
David Cernat
11605bd19a [Client] Make aggressive actors initiate combat with DedicatedPlayers
Previously, they were only attacking DedicatedPlayers who had attacked them first.
2017-04-25 16:08:14 +03:00
David Cernat
a4165325fa [Client] Improve synchronization of Actor swings 2017-04-25 01:47:43 +03:00
David Cernat
ce9605957a [Client] Use different way of preventing attacks on players in dialogue 2017-04-25 01:11:01 +03:00
David Cernat
a82646a130 [Client] Delineate tes3mp-only code more clearly, part 2 2017-04-24 19:46:12 +03:00
David Cernat
e4a261ea2e [Client] Remove unused include and variables, fixing warnings 2017-04-24 17:53:50 +03:00
David Cernat
a5484d237b Merge pull request #203 from OpenMW/master
Add OpenMW commits up to 21 Apr 2017, part 2
2017-04-21 21:07:37 +03:00
scrawl
1956602aa2 Merge pull request #1262 from Allofich/warnings
Fix more warnings
2017-04-21 14:34:36 +02:00
David Cernat
fec82dc033 Merge pull request #202 from OpenMW/master
Add OpenMW commits up to 21 Apr 2017
2017-04-21 07:58:13 +03:00
Allofich
ff3cb18d4f Fix shadowing warnings 2017-04-21 11:06:18 +09:00
scrawl
bfdde0262f Merge pull request #1260 from akortunov/levitationfix
Purge existing levitation effects when levitation is disabled (fixes #3766)
2017-04-21 00:25:09 +02:00
Allofich
ff3e307059 Pass parameters by const reference 2017-04-20 23:47:03 +09:00
David Cernat
10d554af5b [Client] Make NPCs react to DedicatedPlayer & DedicatedActor attacks 2017-04-20 17:00:40 +03:00
Allofich
2e5fd74db0 Fix invalid iterator warning 2017-04-20 19:30:35 +09:00
David Cernat
edb155869b Merge pull request #201 from OpenMW/master
Add OpenMW commits up to 19 Apr 2017
2017-04-19 22:12:33 +03:00
David Cernat
2e8714afaa [Client] Rethink and restructure tes3mp combat code so it works for NPCs 2017-04-19 22:06:04 +03:00
Allofich
60a2625b89 Add parentheses to clarify calculations 2017-04-20 01:38:21 +09:00
Allofich
5a00b239ac Reduce scope of variables 2017-04-20 01:22:30 +09:00
Andrei Kortunov
04eb4ea6b6 Check for disabled levitation (fixes #3766) 2017-04-19 18:38:25 +04:00
Andrei Kortunov
3c4c47d1e6 Reduced scope of fHoldBreathTime variable 2017-04-19 15:52:15 +04:00
Andrei Kortunov
c3fd327bb2 Fixed drowning widget initialization 2017-04-19 08:48:16 +04:00
David Cernat
014ff7a059 [Client] Replace usage of Networking::isDedicatedPlayer() 2017-04-18 18:07:39 +03:00
David Cernat
53081a6a6f [Client] Clean up more checks by using PlayerList::isDedicatedPlayer() 2017-04-18 12:38:26 +03:00
David Cernat
07c2d4251e [Client] Add and use mwmp::PlayerList::isDedicatedPlayer() 2017-04-17 20:36:20 +03:00
David Cernat
0aaf68c994 [Client] Rename mwmp::Players into mwmp::PlayerList for clarity 2017-04-17 19:10:33 +03:00
David Cernat
2565816b22 [Client] Delimit and clarify combat changes made by tes3mp
Additionally, revert unneeded small changes to the formatting of OpenMW code
2017-04-17 11:55:22 +03:00
David Cernat
b09e6644a9 [Client] Prevent infinite guard arrest loops 2017-04-16 20:26:06 +03:00
David Cernat
d2178e5414 [Client] Assign LocalActor movement settings before rotations get reset 2017-04-16 17:09:47 +03:00
David Cernat
f64580bc10 [Client] Enable head rotation AI for DedicatedActors 2017-04-16 08:42:49 +03:00
David Cernat
8ebe7ed683 [Client] Remove isLocalActor (no longer needed) from LiveCellRefBase 2017-04-16 07:54:44 +03:00
David Cernat
ca8fd1aa72 [General] Remove ActorHeadRotation packet because it would be too spammy 2017-04-15 15:49:40 +03:00
David Cernat
2872675f5e [General] Send and read ActorAnimPlay packets 2017-04-15 13:42:30 +03:00
David Cernat
11a9e3bdb1 Merge pull request #197 from OpenMW/master
Add OpenMW commits up to 14 Apr 2017
2017-04-14 05:57:28 +03:00
Andrei Kortunov
dc036e96d4 fixed magicka calculation on chargen (bug #3694) 2017-04-13 18:30:36 +04:00
David Cernat
10ad5b2a99 [General] Remove BaseActor's AnimStates that are no longer needed 2017-04-13 13:06:09 +03:00
David Cernat
c6cd0a2953 Merge pull request #196 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/spellcasting.cpp
2017-04-13 07:07:49 +03:00
scrawl
d8943d911c Merge pull request #1254 from Allofich/warning
Remove unnecessary line
2017-04-12 23:49:29 +02:00
Allofich
470988f9ef Minor changes to getActorsSidingWith 2017-04-13 04:45:44 +09:00
Allofich
6272e1c674 Cache allies found while iterating engageCombat
(Fixes #3814)
2017-04-13 02:02:38 +09:00
Allofich
5020d03c78 Remove unnecessary line 2017-04-12 22:59:28 +09:00
scrawl
8f335b3484 Merge pull request #1245 from akortunov/tgm
Vanilla-like tgm
2017-04-11 21:34:44 +02:00
David Cernat
cbd2af972d [Client] Get movement settings for NPCs before they are reset 2017-04-10 17:06:44 +03:00
David Cernat
b9d68c0ab2 Merge pull request #195 from OpenMW/master
Add OpenMW commits up to 10 Apr 2017
2017-04-10 01:20:42 +03:00
David Cernat
a1d0b4908f [Client] Fix Travis CI build by not using nullptr 2017-04-08 16:46:38 +03:00
David Cernat
0ccbe70e61 [Client] Rename methods to make their purpose clearer 2017-04-08 14:31:22 +03:00
David Cernat
6da6c4e62d [Client] Prevent NPCs from attacking a player engaged in dialogue 2017-04-08 13:06:42 +03:00
David Cernat
417284c701 [Client] Implement head rotation sync for NPCs 2017-04-08 11:40:19 +03:00
David Cernat
d3f3fb5d05 [Client] Correctly implement movement animation sync for NPCs 2017-04-08 08:59:21 +03:00
David Cernat
d4a12856ee [Client] Enable AI for LocalActors 2017-04-06 04:59:55 +03:00
David Cernat
9759764699 [Client] Clean up getting and resetting of WorldEvent 2017-04-05 09:04:41 +03:00
David Cernat
4abe295a80 [Client] Simplify sending of world packets by adding WorldEvent methods 2017-04-05 07:54:23 +03:00
David Cernat
2bd81c3de0 [Client] Use mpNum for every WorldObject 2017-04-04 11:07:16 +03:00
Andrei Kortunov
31bd70f334 Added missed recharge and repair sounds 2017-04-02 23:19:43 +04:00
David Cernat
7647715dac Merge pull request #190 from OpenMW/master
Add OpenMW commits up to 27 Mar 2017
2017-03-28 08:05:23 +03:00
scrawl
2a74f79bf1 Merge pull request #1240 from Allofich/follow
Adjust AI follow distances
2017-03-26 20:35:11 +02:00
Allofich
6253a5218e Adjust AI follow distances
(Fixes #3225)
2017-03-27 03:31:25 +09:00
Andrei Kortunov
14b59e0e4b Vanilla-like tgm (fixes #3798) 2017-03-25 22:40:11 +04:00
MiroslavR
da6b28eb40 Fix selling success chance (Fixes #3802) 2017-03-25 15:21:16 +01:00
scrawl
97dbd07ed2 Merge pull request #1236 from akortunov/guifixes
Minor GUI fixes
2017-03-25 13:36:58 +01:00
Andrei Kortunov
7bd0c74aa8 Fixes mWatchedTimeToStartDrowning initialization (fixes bug #3801) 2017-03-25 14:15:16 +04:00
Andrei Kortunov
e383e4d023 Disabled hit overlay for damage/absorb mana/fatigue spells 2017-03-25 14:10:19 +04:00
scrawl
373bd78cf3 Merge pull request #1233 from akortunov/guifixes
Vanilla style drowning widget
2017-03-24 18:10:11 +01:00
Andrei Kortunov
b89fdcfd27 Vanilla style drowning widget (partially fixes bug #3801). 2017-03-24 09:41:18 +04:00
David Cernat
c10dd1b002 Merge pull request #188 from OpenMW/master
Add OpenMW commits up to 24 Mar 2017
2017-03-24 07:24:55 +02:00
scrawl
338592b99b Don't clear the animation queue when turning (Bug #3581)
Otherwise, the turnAnimationThreshold would make it difficult to estimate when we can start playing the animation.
2017-03-23 20:05:06 +01:00
scrawl
a5d7b36c28 Don't clear idle animation when movement ends (Bug #3581)
This caused problems when AiWander tried to start an idle animation in the frame after movement stops.
2017-03-23 20:05:05 +01:00
scrawl
c611ddba8d Remove stray term 2017-03-23 20:05:05 +01:00
Allofich
57aeec59d5 Change bounds behavior of stat script commands
Fixes (#3776)
2017-03-22 15:17:44 +09:00
Koncord
690211ad99 [General] Extract BaseEvent & BasePlayer from packets to functions
Move Send and Read functions to BasePacket
2017-03-06 18:40:07 +08:00
David Cernat
df051a777a Merge pull request #181 from OpenMW/master
Add OpenMW commits up to 4 Mar 2017
2017-03-04 22:56:16 +02:00
scrawl
29556a1802 More consistent wording of errors/warnings
A Warning indicates a potential problem in the content file(s) that the user told OpenMW to load. E.g. this might cause an object to not display at all or as intended, however the rest of the game will run fine.

An Error, however, is more likely to be a bug with the engine itself - it means that basic assumptions have been violated and the engine might not run correctly anymore.

The above mostly applies to errors/warnings during game-play; startup issues are handled differently: when a file is completely invalid/corrupted to the point that the engine can not start, that might cause messages that are worded as Error due to the severity of the issue but are not necessarily the engine's fault.

Hopefully, being a little more consistent here will alleviate confusion among users as to when a log message should be reported and to whom.
2017-03-04 21:48:31 +01:00
David Cernat
9cffc1f661 [Client] Don't open up main menu when player's death animation finishes 2017-03-04 02:29:57 +02:00
David Cernat
a2ef39c655 Merge pull request #178 from OpenMW/master
Add OpenMW commits up to 2 Mar 2017
2017-03-02 22:14:15 +02:00
scrawl
1692b7f38e Merge pull request #1209 from dhustkoder/master
Added ConstContainerStoreIterator (Task #3092)
2017-03-02 18:36:21 +01:00
Rafael Moura
7fa2703715 Porting more ContainerStoreIterator usage to const version #3 2017-02-28 14:31:51 +00:00
Rafael Moura
18a4b64f1a Porting more ContainerStoreIterator usage to const version #2 2017-02-27 21:50:10 +00:00
David Cernat
4110fac629 Merge pull request #174 from OpenMW/master
Add OpenMW commits up to 26 Feb 2017, part 2
2017-02-27 01:05:02 +02:00
scrawl
6f4c03aa32 Avoid retrieving setting every frame 2017-02-26 17:34:24 +01:00
David Cernat
a58601fb2b [Client] Delineate tes3mp-only code more clearly, part 1 2017-02-26 16:59:53 +02:00
David Cernat
ed2176c984 [Client] Reuse 1 BaseEvent over and over instead of creating new ones 2017-02-23 09:19:09 +02:00
David Cernat
d4ff136837 [Client] Add comments about spellcasting as a result of merge conflict 2017-02-23 01:05:45 +02:00
David Cernat
38ccc2671c Merge pull request #164 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/spellcasting.cpp
2017-02-23 00:52:53 +02:00
scrawl
eefe1ed1a8 Fix being affected by Silence in god mode 2017-02-21 15:48:45 +01:00
David Cernat
a1988ac6ef Merge pull request #161 from OpenMW/master
Add OpenMW commits up to 21 Feb 2017
2017-02-21 07:02:59 +02:00
scrawl
7e02bb7348 Preload summoned creature models before the spell is cast 2017-02-20 19:58:00 +01:00
Rafael Moura
ecbde7b11e Added ConstContainerStoreIterator
using base template for ContainerStoreIterators

less template arguments for ContainerStoreIteratorBase
2017-02-18 13:47:18 +00:00
David Cernat
0d75264221 Merge pull request #155 from OpenMW/master
Add OpenMW commits up to 17 Feb 2017, part 2
2017-02-17 23:19:30 +02:00
Allofich
3897c49e30 Fix loading 0-duration Follow and Escort packages
(Fixes #3755)
2017-02-18 01:55:50 +09:00
David Cernat
c32c004516 Merge pull request #151 from OpenMW/master
Add OpenMW commits up to 16 Feb 2017
2017-02-16 11:53:02 +02:00
scrawl
c4a89065a2 Preload VFX of spells selected by AI actors 2017-02-15 21:01:25 +01:00
David Cernat
2ed9ae5739 Merge pull request #149 from OpenMW/master
Add OpenMW commits up to 14 Feb 2017
2017-02-14 10:27:53 +02:00
scrawl
183c46b0ef Fix summoning effects 2017-02-14 07:58:16 +01:00
David Cernat
a5d7c5fd39 Merge pull request #148 from OpenMW/master
Add OpenMW commits up to 13 Feb 2017
2017-02-13 21:29:51 +02:00
scrawl
051b4038d9 Merge pull request #1203 from Allofich/magic
Make AI not go hostile when absorbing/reflecting
2017-02-12 17:18:10 +01:00
scrawl
cdf65ef681 Merge pull request #1201 from Allofich/hit
Prevent AI actors from hitting unintended targets
2017-02-12 16:25:52 +01:00
Allofich
72c3ee0a3d Make AI not go hostile when absorbing/reflecting 2017-02-12 23:14:09 +09:00
Allofich
6b53541571 Prevent AI actors from hitting unintended targets
(Fixes #3254)
2017-02-12 19:51:19 +09:00
scrawl
9fa8e88366 Revert "Don't create a CharacterController for objects with no animations"
This reverts commit cce42b6e9d.
2017-02-12 10:22:11 +01:00
David Cernat
d528a0edb5 Merge pull request #147 from OpenMW/master
Add OpenMW commits up to 11 Feb 2017
2017-02-11 21:27:51 +02:00
scrawl
03a10f217a Catch exceptions in AiSequence::execute 2017-02-11 17:53:11 +01:00
scrawl
5a12407436 Revert "Rearranged check for better performance"
This reverts commit 332ceb51a2.
2017-02-11 17:53:11 +01:00
Allofich
e047679595 Fix trying to access stats on non-actors 2017-02-11 19:59:42 +09:00
David Cernat
6763718412 Merge pull request #146 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwclass/npc.cpp
#	apps/openmw/mwmechanics/actors.cpp
2017-02-10 21:39:16 +02:00
scrawl
332ceb51a2 Rearranged check for better performance 2017-02-10 06:48:03 +01:00
scrawl
8752ae9c6a Fix include 2017-02-10 06:28:23 +01:00
scrawl
bbcba57495 Disable hitAttemptActorId saving code for now 2017-02-10 06:26:32 +01:00
Allofich
5d2090684a Store mHitAttemptActorId in save files 2017-02-07 01:26:26 +09:00
Allofich
25c64dbb0f Make combat engagement logic more like vanilla
(Fixes #2678, Fixes #3705)
2017-02-07 01:25:12 +09:00
David Cernat
e703dd42aa [Client] Rename LocalEvent into WorldEvent 2017-02-06 17:40:32 +02:00
David Cernat
27242cdab9 Merge pull request #142 from OpenMW/master
Add OpenMW commits up to 6 Feb 2017
2017-02-06 09:13:19 +02:00
scrawl
bc29a99a53 Fix broken timer 2017-02-06 05:10:40 +01:00
scrawl
cce42b6e9d Don't create a CharacterController for objects with no animations 2017-02-06 03:43:08 +01:00
scrawl
fe0cf5be05 StatsWindow: don't rebuild all skill widgets when one skill changes 2017-02-06 02:40:35 +01:00
David Cernat
3a29b2d41d Merge pull request #141 from OpenMW/master
Add OpenMW commits up to 5 Feb 2017
2017-02-05 07:11:45 +02:00
scrawl
3065600a86 Skip expensive visitEffectSources call if no summoned creatures or summon effects are active 2017-02-05 02:26:28 +01:00
scrawl
a2cede8f34 Add timer for updateEquippedLight 2017-02-05 02:26:28 +01:00
scrawl
1eb3384043 Avoid rotating by zero in CharacterController 2017-02-05 02:26:28 +01:00
Koncord
f78c749981 [Client] Use "NULL" instead "nullptr"
nullptr keyword introduced in C++11
2017-02-01 15:58:29 +08:00
David Cernat
703f253712 [Client] Delete new LocalEvents after sending them 2017-01-31 09:48:37 +02:00
David Cernat
9f1e491a75 [General] Make WorldEvents store information about multiple objects 2017-01-28 12:34:45 +02:00
David Cernat
624b85347a [Client] Create LocalEvent class and use it instead of WorldEvent 2017-01-27 20:57:47 +02:00
David Cernat
63c8a98083 [General] Stop using virtual functions in BasePlayer 2017-01-25 17:06:15 +02:00
David Cernat
83277a1512 Send spellbook in LocalPlayer CharGen & change UPDATE action name to SET 2017-01-20 09:07:07 +02:00
David Cernat
be851f5e1a Send packet with spells gained at character generation 2017-01-19 16:56:21 +02:00
David Cernat
fa8650f99a Merge pull request #128 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/combat.cpp
2017-01-18 15:38:18 +02:00
NeveHanter
e82d542d89 Merge remote-tracking branch 'upstream/master' into bugfix-3617 2017-01-15 09:49:45 +01:00
NeveHanter
811e9ad9f3 Fixed bug https://bugs.openmw.org/issues/3617 by allowing touch and target enchantments from ranged weapons and their projectiles to explode even when colliding with non-activable objects, terrain, water slab or when shoot underwater.
Also allowed projectiles to fly through the dead bodies as in vanilla.
2017-01-15 09:49:25 +01:00
David Cernat
f376b8416e Merge pull request #127 from OpenMW/master
Add OpenMW commits up to 15 Jan
2017-01-15 02:51:15 +02:00
Allofich
f2240dde9c Allow command spells to work when cast by AI on AI
(Fixes #3723)
2017-01-15 01:56:22 +09:00
Allofich
e825010107 Apply command spell effects on impact
Command spells should apply their effects, including taking an actor out
of combat, every time a spell successfully hits, even if a previous
command effect is still active.
2017-01-15 01:53:22 +09:00
Allofich
a46c4de918 Stop combat when adding an AI package to an actor
(Fixes #3722)
2017-01-15 01:53:22 +09:00
David Cernat
610ba1d867 Merge pull request #125 from OpenMW/master
Add OpenMW commits up to 12 Jan
2017-01-12 04:33:25 +02:00
scrawl
73aa07b81b Merge pull request #1189 from Allofich/attack
Match best attack selection to vanilla behavior
2017-01-11 18:36:10 +01:00
Allofich
2322ab3125 Don't make Command spells cancel AI packages
(Fixes #3649)
2017-01-12 00:07:22 +09:00
Allofich
c10585fb07 Match best attack selection to original MW
(Fixes #3721)
2017-01-11 22:22:46 +09:00
David Cernat
dfb87e9e0d Merge pull request #124 from OpenMW/master
Add OpenMW commits up to 11 Jan
2017-01-11 13:30:22 +02:00
Assumeru
1a073ca642 Fix teleportation being unreachable 2017-01-03 22:02:23 +01:00
Allofich
eee49b7ea7 Make dispel an instant effect again (Fixes #3695) 2017-01-02 17:35:50 +09:00
scrawl
212e85e810 Merge pull request #1174 from Allofich/combat
Adjustments to AI combat engaging and disengaging
2017-01-01 19:36:09 +01:00
David Cernat
fba4878fee Merge pull request #118 from OpenMW/master
Add OpenMW changes up to 27 Dec
2016-12-27 03:49:52 +02:00
MiroslavR
c9dd63af8d Merge pull request #1171 from NeveHanter/travel-followers-cost
Implemented "paying" for travelling followers
2016-12-26 22:34:39 +01:00
Allofich
54fa921dad Change some AI combat engagements to not need LOS 2016-12-26 22:42:46 +09:00
Allofich
6fa0354a17 Make AI attack player also if it attacks follower 2016-12-26 22:42:45 +09:00
Allofich
5a6ea4e84e Cleanup 2016-12-26 22:42:44 +09:00
Allofich
e10c4d8814 Stop combat between AI when canFight is false 2016-12-26 22:42:42 +09:00
Allofich
e8c7ad2f4b Change environment check to canFight check
Instead of just checking that combatants are in compatible environments,
allow combat if in attack range using canFight. Together with previous
commit, fixes #3690.
2016-12-26 02:14:01 +09:00
Allofich
588442b6cc Make enemies start combat with player followers
Recreates vanilla behavior of enemies starting combat with player
followers and escorters. (Fixes #3691)
2016-12-26 02:13:54 +09:00
NeveHanter
8902bb5b13 Player now pays for the following actors when travelling, with the exception of the first follower who travels for free, refactored getFollowers to getActorsFollowing/getActorsSidingWith 2016-12-20 12:38:51 +01:00
David Cernat
973db7c78a Merge pull request #113 from OpenMW/master
Add OpenMW commits up to 17 Dec
2016-12-17 23:27:09 +02:00
Aussiemon
2f66b91ac5 Added check to prevent attempted wandering of empty paths 2016-12-16 15:18:28 -07:00
Koncord
536715cf46 Cleanup tes3mp headers 2016-12-16 16:59:15 +08:00
Leon Krieg
12c8c3276a Disable NPC collision only when death animation has finished (#3666) 2016-12-15 19:33:14 +01:00
Leon Krieg
739cd5ba45 Fixed more spelling mistakes 2016-12-15 13:09:40 +01:00
Leon Krieg
c7b4b2cdd7 Fixed multiple spelling mistakes 2016-12-14 16:39:33 +01:00
MiroslavR
76ee5845ac Fix swish sound ID and play swish sound effects for all creatures (Fixes #3653) 2016-12-11 19:35:53 +01:00
mrohrlach
9624d8aade Added new method and variable to track float remainders of disintegration effections 2016-12-09 19:48:56 -07:00
scrawl
876d9c6a84 Merge pull request #1148 from Allofich/aicombat
Require line of sight for AI attacks
2016-12-06 20:02:39 +01:00
Allofich
a6dae51d87 Require line of sight for AI attacks (Fixes #3646) 2016-12-07 01:35:30 +09:00
Allofich
6816e935f1 Fix fortify maximum magicka expiration (Fixes #3648) 2016-12-06 21:00:03 +09:00
Kurnevsky Evgeny
28639c3b2f Crash fix when item is disabled before it casts spell. 2016-12-03 17:13:31 +03:00
David Cernat
7bbeed629d Merge pull request #109 from OpenMW/master
Add OpenMW changes up to 25 Nov
2016-11-26 01:58:43 +02:00
scrawl
b6d02d9b14 Fix order of operations when undoing werewolf transformation of an NPC 2016-11-22 16:37:49 +01:00
David Cernat
f9ca98498d Merge pull request #107 from OpenMW/master
Add OpenMW commits up to 20 Nov, part 2
2016-11-20 19:30:24 +02:00
scrawl
385db50f2d Merge pull request #1131 from Allofich/waterwalking
Make water walking mechanics closer to original MW
2016-11-20 17:19:15 +01:00
Allofich
0e429ae41d Make water walking mechanics closer to original MW 2016-11-20 22:21:33 +09:00
David Cernat
c6eac31d94 Merge pull request #106 from OpenMW/master
Add OpenMW changes up to 20 Nov
2016-11-20 01:20:25 +02:00
MiroslavR
8f91732b09 Show starting abilities, powers and spells in stat-review window (Fixes #2410) 2016-11-19 21:51:19 +01:00
David Cernat
234266755e Prevent player-controlled NPCs from auto-unequipping candles and torches 2016-11-18 02:47:59 +02:00
David Cernat
b028f0b51f Merge pull request #104 from OpenMW/master
Add OpenMW commits up to 17 Nov
2016-11-17 21:13:58 +02:00
David Cernat
3a733eb122 Make tes3mp includes consistent 2016-11-17 17:16:25 +02:00
MiroslavR
5e46121046 Implement fleeing AI (Closes #1118) 2016-11-16 20:15:25 +01:00
David Cernat
fa9d6e810e Use lowerCamelCase in tes3mp client function names like OpenMW does 2016-11-15 21:54:06 +02:00
Koncord
799842b5da Reduce using of the CPU 2016-11-12 20:11:27 +08:00
Koncord
56959ebfda Implement magic 2016-11-12 19:39:16 +08:00
David Cernat
06152fde77 Stop player-controlled NPCs from reporting crimes committed by players 2016-10-31 11:00:56 +02:00
David Cernat
cd798d5f23 Merge pull request #89 from OpenMW/master
Add OpenMW commits up to 30 Oct
2016-10-30 21:49:07 +02:00
Allofich
125e94ef0e Fix shadowing warnings 2016-10-31 00:39:31 +09:00
David Cernat
c25ebc34b3 Shorten WorldPacket IDs by removing WORLD from them 2016-10-25 12:15:27 +03:00
David Cernat
3a5a5e73a1 Send ID_WORLD_OBJECT_UNLOCK from ingame scripts and regular unlocking 2016-10-24 11:43:27 +03:00
David Cernat
e27d1857ef Fix formatting in previous changes made by tes3mp to OpenMW's core 2016-10-19 22:06:11 +03:00
David Cernat
3136a12051 Resolve conflicts in pull request #75
# Conflicts:
#	CMakeLists.txt
#	apps/openmw/CMakeLists.txt
2016-10-14 18:34:17 +03:00
Allofich
610f36f47b Set magic effects that don't support variable durations to use duration of 1 2016-10-14 00:13:08 +09:00
Allofich
675bd09462 Change several instant effects to be non-instant (Fixes #2054) 2016-10-13 23:38:21 +09:00
scrawl
454d1ffaef Make the cell change check during actor update more robust 2016-10-13 14:39:58 +02:00
scrawl
37bfa88b2d Merge pull request #1094 from Allofich/alchemy
Fix reversed use of alembics and retorts
2016-10-06 19:02:24 +02:00
Allofich
498976775a Fix reversed use of alembics and retorts 2016-10-07 01:38:50 +09:00
scrawl
73b6c34a23 Merge pull request #1092 from Allofich/warnings
Fix shadowing warnings
2016-10-06 17:50:26 +02:00
Allofich
53e94b7c3f Fix shadowing warnings 2016-10-06 23:33:52 +09:00
David Cernat
6eae017561 Merge pull request #74 from OpenMW/master
Add OpenMW commits up to 5 Oct
2016-10-06 06:16:09 +03:00
Allofich
df03b32205 Coverity fixes 2016-10-05 23:32:26 +09:00
MiroslavR
a05649e1d5 Use loop fallback for movement animations (Fixes #3578) 2016-10-03 22:36:56 +02:00
scrawl
44dffe55ab Merge pull request #1083 from Allofich/onhit
Make AI response to spell hits more like original MW
2016-10-02 14:06:51 +02:00
Allofich
6ec37b5cfb Fix shadowing warnings 2016-10-02 17:48:54 +09:00
Allofich
e78f02aaf2 Consider reflected/absorbed hostile spells as assaults 2016-10-02 16:08:24 +09:00
Allofich
a81a04e6d0 Remove unused line 2016-10-02 01:11:01 +09:00
Allofich
fa17784722 Change breaks to continues 2016-10-02 00:54:01 +09:00
scrawl
140be70a90 Merge pull request #1082 from Gladdy/master
Fix for segmentation fault on entering a cell
2016-10-01 16:42:47 +02:00
Allofich
a2e174a40f Don't let water-only creatures prevent resting 2016-10-01 22:15:31 +09:00
Allofich
266ec1aadc Make AI response to spell hits more like original MW 2016-10-01 21:38:17 +09:00
David Cernat
728a09e423 Reorder functions in LocalPlayer and make their names more consistent 2016-09-30 08:59:58 +03:00
David Cernat
15a4602482 Add getSkillIncrease, setSkillIncrease functions to OpenMW's NpcStats 2016-09-30 07:15:03 +03:00
David Cernat
8fbc6f31f1 Add setLevelProgress function to OpenMW's NpcStats 2016-09-30 06:26:43 +03:00
Martijn Bakker
45ffdbb284 fixed a segmentation fault when entering a cell which contains someone already attacking you 2016-09-30 00:40:13 +01:00
David Cernat
25026a9b95 Allow player-controlled NPCs to have attack animations again 2016-09-29 16:57:39 +03:00
David Cernat
7e4543ffcb Merge pull request #64 from OpenMW/master
Add OpenMW commits up to 24 Sep
2016-09-25 11:06:07 +03:00
Allofich
04c13ffab3 Add unarmed attack selection to chooseBestAttack() 2016-09-22 00:45:54 +09:00
David Cernat
f515111845 Merge pull request #62 from OpenMW/master
Add OpenMW commits up to 20 Sep
2016-09-21 06:05:24 +03:00
scrawl
c6ef26ba4b Merge pull request #1070 from mrcheko/pathfinding
fix using potion as weapon
2016-09-20 22:58:54 +02:00
mrcheko
229cb4b386 remove dynamic_cast to ActionPotion 2016-09-20 23:00:00 +03:00
mrcheko
48765f2ff2 fix using potion as weapon 2016-09-19 23:43:26 +03:00
David Cernat
1534f835a6 Merge pull request #61 from OpenMW/master
Add OpenMW commits up to 19 Sep
2016-09-19 23:38:20 +03:00
scrawl
718178bfe9 Merge pull request #1066 from MiroslavR/setinvisible
Don't use base invisibility magnitude for setting alpha
2016-09-19 15:35:12 +02:00
Allofich
7e3cca6d37 Vfx after Divine/Almsivi intervention should be attached to player 2016-09-19 22:20:16 +09:00
Allofich
d1157b3e10 Use correct vfx for teleport spells 2016-09-19 18:12:30 +09:00
David Cernat
79c561057c Merge pull request #59 from OpenMW/master
Add OpenMW commits up to 18 Sep
2016-09-19 02:47:09 +03:00
MiroslavR
744667e163 Don't use base invisibility magnitude for setting alpha (Fixes #3555) 2016-09-19 00:05:50 +02:00
scrawl
cd4b182091 Merge pull request #1051 from Allofich/textures
Use spell effect particle textures
2016-09-18 22:37:14 +02:00
David Cernat
3b7693c719 Resolve conflicts in pull request #55
# Conflicts:
#	README.md
#	apps/openmw/mwclass/npc.cpp
#	apps/openmw/mwmechanics/combat.cpp
2016-09-15 08:49:57 +03:00
Allofich
a033ba3bd2 Override spell textures by NiTexturingProperty 2016-09-14 23:03:04 +09:00
scrawl
1362264561 Fix warning 2016-09-13 02:49:19 +02:00
scrawl
65dc12cdd6 Remove unused parameter 2016-09-13 02:48:36 +02:00
scrawl
feaf3652a5 Merge pull request #1055 from mrcheko/pathfinding
prevent running in circles around path points
2016-09-13 02:47:49 +02:00
scrawl
3cd73d0fc3 Merge pull request #1058 from Allofich/onhit
Don't play blood effects for completely resisted hits
2016-09-13 02:47:43 +02:00
Allofich
bce0166931 Don't play blood effects for resisted hits 2016-09-12 22:46:32 +09:00
Allofich
3bbde312b9 Remove unneeded code 2016-09-12 19:54:06 +09:00
Allofich
3f6543860a Make creatures use fHandToHandReach 2016-09-11 00:01:20 +09:00
Allofich
c98d4e0473 Allow dodging for bipedal creatures 2016-09-10 23:56:31 +09:00
Allofich
7bc4535c0d Make NPCs dodge according to target's weapon reach 2016-09-10 23:30:46 +09:00
mrcheko
72786fef9d prevent running in circles around path points
addresses http://bugs.openmw.org/issues/2229
2016-09-09 23:57:19 +03:00
Allofich
368828b217 Update TODO comments 2016-09-10 01:38:05 +09:00
Allofich
bca477ca8a Apply particle textures like original engine does 2016-09-08 23:59:23 +09:00
Allofich
85349da26c Add comments 2016-09-08 23:58:00 +09:00
Allofich
502a758eff Use particle texture for "hit" effects 2016-09-08 23:58:00 +09:00
Allofich
fe3a033642 Use particle textures for spell projectiles 2016-09-08 23:56:54 +09:00
scrawl
05e4542d33 Merge pull request #1048 from mrcheko/pathfinding
Pathfinding unification v2
2016-09-06 13:19:18 +02:00
mrcheko
aa441f2648 AiPackage: fix path recalc on cell change
AiTravel: remove unneeded code
2016-09-06 01:11:10 +03:00
mrcheko
a22fc43947 aiwander: reset path on cell change
remove redundant mIsWanderDestReady var
2016-09-05 15:18:34 +03:00
scrawl
fbc9b90ebe Cleanup 2016-09-05 00:04:11 +02:00
Allofich
f8270f6bd5 Consolidations and cleanup for multi-effect spells 2016-09-05 05:30:51 +09:00
Allofich
dbd7c038b2 Add loading code for multi-effect projectiles 2016-09-05 03:45:13 +09:00
Allofich
5a0d3feb98 Use C++ int-to-string conversion 2016-09-05 02:52:44 +09:00
Allofich
60384399ee Fix errors and warnings 2016-09-05 01:39:18 +09:00
Allofich
37f07f7435 Combine into one multi-effect magic projectile 2016-09-04 22:35:29 +09:00
Allofich
10842462c7 Send lists of models and sounds to launchMagicBolt 2016-09-04 17:42:27 +09:00
Allofich
96e1726e4d Fix warnings 2016-09-04 17:42:27 +09:00
Allofich
c4d77b6a8b Casting animation comes from the first effect 2016-09-04 17:42:27 +09:00
Allofich
3300ef5db7 Don't apply projectile effects multiple times 2016-09-04 17:42:27 +09:00
Allofich
f36e5ef403 Use last effect of spell for hand effect color 2016-09-04 17:42:27 +09:00
Allofich
f6c3a62b3e Use average speed for multiple spell projectiles 2016-09-04 17:42:27 +09:00
Allofich
f1a18027f2 Shoot projectiles of spells with multiple effects 2016-09-04 17:42:27 +09:00
Allofich
446c0a4fa8 Play all of a spell's casting effects 2016-09-04 17:42:27 +09:00
Allofich
b4577fe751 Allow multiple spell hit sounds on single target 2016-09-04 17:42:27 +09:00
scrawl
7859e378df Merge pull request #1045 from Allofich/attack
Fix AI melee attack
2016-09-04 00:22:59 +02:00
Allofich
5c2bc515fe Remove overridden code in aicombat 2016-09-04 02:13:09 +09:00
mrcheko
0775ed75ea fix zero div in getXAngleToDir 2016-09-03 17:50:06 +03:00
Allofich
0d63d75bb0 Remove no longer used parameter 2016-09-03 22:40:24 +09:00
Allofich
286e4bb98f Remove attacktype movement 2016-09-03 21:16:59 +09:00
David Cernat
9764dbb8d2 Merge pull request #52 from OpenMW/master
Add OpenMW commits up to 2 Sep
2016-09-02 06:29:34 +03:00
Allofich
154dcc942c Let NPCs use attack type regardless of movement 2016-09-01 22:43:33 +09:00
Allofich
b99c2c54d8 Allow Water Walking on non-submerged creatures 2016-09-01 03:53:53 +09:00
Allofich
22b11c5947 Move Water Walking check into checkEffectTarget() 2016-08-31 23:56:31 +09:00
Allofich
f25c65260c Limit sMagicinvalidEffect to self-cast spells 2016-08-31 17:22:45 +09:00
Allofich
6c3cad238b Use castByPlayer bool 2016-08-31 17:18:23 +09:00
David Cernat
e9dce26f38 Resolve conflicts in pull request #50
# Conflicts:
#	CMakeLists.txt
2016-08-31 07:28:32 +03:00
Allofich
a6216d883f Don't allow casting Water Walking in deep water 2016-08-31 04:37:50 +09:00
Allofich
9e1bfde46f Add comment 2016-08-26 02:42:56 +09:00
Allofich
67bd882bc7 Disable current idle when an action is taken 2016-08-25 23:42:09 +09:00
Allofich
6190ff1f0d Update idle if current idle finishes playing 2016-08-25 21:45:56 +09:00
Allofich
f4cc5d0399 Sometimes play 1st-person weapon idle to Stop key 2016-08-25 21:34:45 +09:00
David Cernat
4d2ca20445 Resolve conflicts in pull request #43
# Conflicts:
#	README.md
2016-08-24 22:03:35 +03:00
Allofich
9b0e5d6b59 Loop mid-animation idles when loading a save game 2016-08-23 19:50:56 +09:00
scrawl
b0dc625b18 Run setLoopingEnabled after the anim queue is updated 2016-08-22 23:33:24 +02:00
scrawl
719e884b7c Remove duplicate code 2016-08-22 23:25:00 +02:00
scrawl
6450c9be27 Simplify condition 2016-08-22 23:22:58 +02:00
Allofich
bf9dc45b2b Emulate vanilla animation loops more closely 2016-08-23 01:42:36 +09:00
mrcheko
612c7f1a2f Revert "Revert "Merge pull request #993 from mrcheko/pathfinding""
This reverts commit 3732979eec.
2016-08-19 22:15:26 +03:00
Allofich
b332a13b4e Don't restart looped animations on repeated calls 2016-08-18 23:23:38 +09:00
David Cernat
436548413e Resolve conflicts in pull request #39
# Conflicts:
#	CMakeLists.txt
2016-08-18 15:10:52 +03:00
Allofich
c05782581e Account for all instances of play() 2016-08-16 02:52:55 +09:00
Allofich
6163c7bb03 Use loopfallback for idle animation groups 2016-08-16 01:15:26 +09:00
David Cernat
d9cfd5bac2 Resolve conflicts with OpenMW 2016-08-15 19:14:13 +03:00
scrawl
3732979eec Revert "Merge pull request #993 from mrcheko/pathfinding"
This reverts commit 5190275b37, reversing
changes made to d7845012bf.
2016-08-14 18:04:33 +02:00
scrawl
30b549124e Fix use-after-free 2016-08-14 16:42:29 +02:00
Allofich
d617651307 Don't allow re-casting of bound equipment spells 2016-08-14 02:05:23 +09:00
Allofich
4b9aff7a03 Glowupdater fix when using shaders 2016-08-10 00:43:14 +09:00
Allofich
9b2cb2fb8c Cleanups 2016-08-10 00:25:33 +09:00
Allofich
775162ccdf Rewrite spell glow implementation 2016-08-09 22:56:53 +09:00
Allofich
35c14bb9bb Minor rewrite, make "open" spells play glow effect 2016-08-09 22:56:53 +09:00
Allofich
e132b52a69 Handle spell glows within updatecallback 2016-08-09 22:56:53 +09:00
Allofich
3841a8fb40 Make non-actors glow when they cast spells 2016-08-09 22:56:53 +09:00
Allofich
dca7b4beb7 Make non-actors also play spell casting sounds 2016-08-09 22:56:53 +09:00
scrawl
5190275b37 Merge pull request #993 from mrcheko/pathfinding
Pathfinding unification
2016-08-09 00:41:03 +02:00
David Cernat
babba95413 Merge pull request #34 from OpenMW/master
Add OpenMW commits from 1st week of August
2016-08-08 15:53:56 +03:00
mrcheko
e2cd87fcc7 fix veritcal aiming 2016-08-07 19:23:08 +03:00
MiroslavR
b65f379b7f Save scripted animation state (Fixes #1931, #2150, #3393) 2016-08-03 03:52:35 +02:00
mrcheko
293a0f768c use real distance to target to determinate 'ready to attack' state 2016-07-27 23:43:32 +03:00
Aesylwinn
b4a000913c Merge remote-tracking branch 'yar/master' into Even
# Conflicts:
#	CMakeLists.txt
#	apps/openmw/mwdialogue/filter.cpp
#	apps/openmw/mwmechanics/character.cpp
#	apps/openmw/mwworld/localscripts.cpp
#	components/CMakeLists.txt
#	components/compiler/exprparser.cpp
#	components/sceneutil/workqueue.cpp
2016-07-17 23:50:52 -04:00
mrcheko
203804ff15 fix AiPackage repeating 2016-07-16 19:08:49 +03:00
mrcheko
59a1a6d117 checkWayIsClear: remove PATHFIND_CAUTION_DIST check 2016-07-16 19:07:48 +03:00
mrcheko
b4e94e2aae Merge remote-tracking branch 'upstream/master' into pathfinding
# Conflicts:
#	apps/openmw/mwmechanics/aipackage.cpp
#	apps/openmw/mwmechanics/aipackage.hpp
2016-07-12 00:45:01 +03:00
mrcheko
8d4f0660ce fix hardcoded melee attack ranges 2016-07-12 00:17:43 +03:00
Allofich
c57d177f1c Trim unneeded code 2016-07-12 04:17:08 +09:00
mrcheko
05794505c8 travis build fix 2016-07-10 17:25:50 +03:00
Allofich
cabe038a97 Make lockpick and probe sounds 3d positional 2016-07-10 22:08:42 +09:00
mrcheko
f57858b750 Merge remote-tracking branch 'upstream/master' into pathfinding
# Conflicts:
#	apps/openmw/mwmechanics/aiactivate.cpp
2016-07-10 14:36:48 +03:00
MiroslavR
b0fcad4cb8 Don't stack effects for scrolls of the same type (Fixes #3466) 2016-07-10 03:49:09 +02:00
MiroslavR
75a66ced20 Fix actors lacking turning animations while in first person mode 2016-07-10 01:48:54 +02:00
mrcheko
d2fe6fe857 Merge remote-tracking branch 'refs/remotes/origin/master' into pathfinding
# Conflicts:
#	apps/openmw/mwmechanics/aiactivate.cpp
#	apps/openmw/mwmechanics/aicombat.cpp
#	apps/openmw/mwmechanics/aicombat.hpp
#	apps/openmw/mwmechanics/aifollow.cpp
#	apps/openmw/mwmechanics/aipackage.cpp
#	apps/openmw/mwmechanics/aipackage.hpp
#	apps/openmw/mwmechanics/aiwander.cpp
#	apps/openmw/mwmechanics/aiwander.hpp
2016-07-09 22:59:54 +03:00
MiroslavR
dc0bc5b68c Implement Face instruction (Feature #1424) 2016-07-09 02:16:47 +02:00
scrawl
6f376bd499 Merge pull request #983 from Allofich/telekinesis
Don't allow telekinesis on actors or teleport doors
2016-07-08 23:47:43 +02:00
Koncord
1b259e2d33 Syncing inventory, animations, position, 8 key attributes
Created Package system
2016-07-07 23:50:48 +08:00
scrawl
e362e3e6a5 Fix cppcheck warnings 2016-07-07 23:50:48 +08:00
Poncho
5b3ac5ff27 Use correct direction multipliers during awareness check 2016-07-07 23:50:48 +08:00
MiroslavR
80f2ae0ca7 Apply magic effects while waiting/sleeping 2016-07-06 00:20:23 +02:00
mrcheko
0793e4a80e refactor pathfinding code in AiWander: use AiPackage::pathTo, reuse AiPackage::ObstacleCheck 2016-07-05 21:38:41 +03:00
Allofich
199607423b Use iMaxActivateDist for AI actors that use Activate packages 2016-07-04 16:06:16 +09:00
MiroslavR
c8b61cb234 Cache magic effects in MWMechanics::Spells 2016-07-02 12:50:00 +02:00
MiroslavR
700dde116e Show remnant corprus effects in magic window 2016-07-02 05:17:24 +02:00
MiroslavR
54f52f7bae Implement effect removal for abilities (Fixes #3455) 2016-07-01 18:50:28 +02:00
Allofich
2290346296 Fix timing of some magicka calculations 2016-06-30 02:59:09 +09:00
scrawl
fc293aa048 Merge pull request #978 from Allofich/fatigue
Fix update of fatigue display
2016-06-27 17:05:05 +02:00
Allofich
1602eb3de8 Fix so that keepPlayerAlive() will not run twice 2016-06-27 21:43:49 +09:00
Allofich
19a20a6871 Fix update of fatigue display 2016-06-27 21:17:06 +09:00
MiroslavR
dfc62c99b4 Show correct class image in level-up dialog (Fixes #3443) 2016-06-26 03:22:58 +02:00
Allofich
dc468dd139 Fix magicka and fatigue calculations from fortifying attributes 2016-06-25 19:21:49 +09:00
Allofich
5d3aebd04b Update disposition check between persuasion attempts 2016-06-22 01:47:09 +09:00
terrorfisch
be25e2ba75 Make NPCs use both hands in weaponless combat. 2016-06-20 10:24:51 +02:00
Allofich
b1be3596dc Cleanup of #include statements 2016-06-18 10:56:28 +09:00
Allofich
4a38fb8650 Use namespace block in aiactivate 2016-06-17 20:59:37 +09:00
scrawl
3ce63c3f6e Merge pull request #967 from Allofich/AIPackageFixes
AI package cleanups
2016-06-16 20:22:51 +02:00
Allofich
c2b51112f2 AI package cleanups 2016-06-16 17:17:56 +09:00
scrawl
693d3cea4a Float to surface fix 2016-06-15 19:38:04 +02:00
scrawl
b5cb11ff07 Split refreshCurrentAnims into multiple functions 2016-06-15 03:14:44 +02:00
scrawl
372f2e2f18 Merge pull request #962 from Allofich/AIPackageFixes
Duration fixes for Follow and Escort
2016-06-14 20:47:32 +02:00
Allofich
3bebbab78e Duration fixes for Follow and Escort 2016-06-15 02:11:30 +09:00
scrawl
3ec4ee6290 Make a copy of map key to work around it being invalidated (Fixes #3329) 2016-06-13 02:06:44 +02:00
scrawl
4acfe1a7e4 Move cleanupSummonedCreature to the mechanics manager (Bug #3439) 2016-06-12 02:43:33 +02:00
scrawl
910ad76e29 Remove spell effects when a summoned creature expires (Bug #3439) 2016-06-12 00:41:13 +02:00
scrawl
b7e45b046d When a summoned creature dies, wait for its death animation to complete before removing it (Bug #3439) 2016-06-12 00:40:55 +02:00
scrawl
a825882c6b Process death events at the end of the death animation (Fixes #1873) 2016-06-12 00:04:50 +02:00
scrawl
37afe966cf Update comment 2016-06-11 21:25:40 +02:00
scrawl
7a30ef5cc1 Do not consider actors following the player as hostiles 2016-06-11 18:26:20 +02:00
scrawl
8fcc1911d9 Use fCombatDistance as the creature attack range 2016-06-10 23:47:01 +02:00
scrawl
166cced22f Merge pull request #957 from svaante/master
Added 1.5 bonus for ranged weapons when weapons are rated
2016-06-10 00:01:05 +02:00
scrawl
a14f1bc222 Merge pull request #954 from Allofich/AIWanderDuration
Improve duration calculations in Wander AI
2016-06-09 23:46:37 +02:00
Allofich
55ac1fab68 Change Wander duration to run on a counter 2016-06-10 04:36:18 +09:00
Daniel Pettersson
256439f884 Added 1.5 bonus for ranged weapons when weapons are rated 2016-06-09 21:23:36 +02:00
scrawl
abcd2219e8 Ignore the calling actor in getEnemiesNearby / getActorsFighting 2016-06-08 22:13:21 +02:00
scrawl
165f048792 Do not count dead NPCs as observers (Fixes #3434) 2016-06-07 22:01:44 +02:00
scrawl
f417d7780a Fix the enemy nearby check (Bug #3423) 2016-06-07 01:55:34 +02:00
scrawl
a45643f150 Merge pull request #949 from Allofich/master
Fix return values for AITravel
2016-06-05 21:16:28 +02:00
Allofich
065d6a391d Don't repeat sequences of only one non-wander AI 2016-06-06 04:12:49 +09:00
Ben Shealy
5085afa3d7 Moved mechanics code from MWGui::TradeWindow to MWMechanics::Trading 2016-06-04 12:28:47 -04:00
Allofich
bce66c629a Change editor-placed AI packages to cycle 2016-05-29 17:34:40 +09:00
scrawl
496cb85b01 Do not cancel Ai packages when on loading (Fixes #3409)
This piece of code was an attempt to fix up save games made before commit d3b76b7006 , but ended up introducing a new bug.
2016-05-28 20:27:05 +02:00
scrawl
0efbdb25ee Improve const-correctness in Animation 2016-05-19 22:30:14 +02:00
scrawl
3749821809 Choose a random death animation for actors that start the game as dead (Fixes #3397) 2016-05-19 21:40:05 +02:00
scrawl
3b31e8f66e Do not set AiPackageDone flag for non-Aipackages (Fixes #3392) 2016-05-14 19:19:37 +02:00
Roman Proskuryakov
d7046878a8 Fix uninitialized values in MWMechanics::AiCombat 2016-05-07 20:41:47 +03:00
Michał Moroz
40cc6a4164 Changed AiSequence::stack to push_back lower priority packages instead of push_front (Bug #3384) 2016-05-04 13:55:36 +02:00
scrawl
93b2f09224 Workaround for some AI functions being incorrectly handled as AI packages (Bug #3378) 2016-04-29 18:07:35 +02:00
scrawl
5edfe8c41c Reduce the wander fast forward overcrowding offset (Fixes #3370) 2016-04-23 22:47:42 +02:00
Austin Salgat
be16857f96 Fix wrong height being used for water detection 2016-04-17 10:46:09 -05:00
Austin Salgat
e9157e9200 Fix idle animation and Fix water creature manual wandering 2016-04-16 20:38:58 -05:00
Austin Salgat
3dec10c686 Update variable to prevent underflowing
While not an issue presently, the variable may be used in the future in a way that could create issues if it underflows.
2016-04-16 17:51:13 -05:00
Austin Salgat
84179c262f Update manual wandering to prevent actor from leaving/entering water
Water creatures will stay in the water, while land creatures will stay on land when wandering.
2016-04-16 16:39:13 -05:00
Austin Salgat
fc03216d48 Refactor to reuse existing obstacle detection 2016-04-16 12:14:00 -05:00
Austin Salgat
34726c24d9 Fix mDistance being reset prematurely
This was causing wandering without pathgrids to become disabled for most wandering units. Additionally, wandering now behaves the same for both NPCs and creatures.
2016-04-15 21:56:41 -05:00
Austin Salgat
92b352989a Add logic for NPC wandering without pathgrids 2016-04-13 20:48:08 -05:00
Austin Salgat
c02881a4f8 Fix creatures not wandering 2016-04-12 21:16:55 -05:00
Austin Salgat
38f5a225ea Refactor PathFinder functions to be useable by AiWander
This avoids having to duplicate the distanceSquared and getClosestPoint functions.
2016-04-10 20:44:08 -05:00
Austin Salgat
96231e17f0 Fix wandering NPCs going off pathgrid
If multiple pathgrids exist in the same cell, sometimes an NPC would port to a different pathgrid that was nearby. This is an issue since it allowed them to do things like travel through walls to inaccessible areas. Now they will only wander along the closest connected pathgrid.
2016-04-10 20:21:18 -05:00
scrawl
79c8f69b24 Clear the class selected / race selected flags when starting a new game (Fixes #3326) 2016-04-03 20:23:28 +02:00
scrawl
e71aa53574 Don't allow playing a sound/soundgen key more than once at the same time on the same object (Fixes #2689) 2016-03-24 19:26:12 +01:00
scrawl
b332704df7 Switch hand-to-hand attack types randomly when "always use best attack" is turned on (Fixes #3259) 2016-03-19 18:03:59 +01:00
scrawl
a6e23d03d3 Don't clamp disposition twice, clamping is already done inside getDerivedDisposition 2016-03-18 00:42:22 +01:00
scrawl
102f9719f7 Remove some garbage 2016-03-18 00:39:27 +01:00
scrawl
79eb2d20e0 Cleanup 2016-03-18 00:39:19 +01:00
scrawl
12ec90f9e7 Change default argument, fix GetDisposition 2016-03-18 00:38:02 +01:00
scrawl
bc5adfa4fe Merge pull request #913 2016-03-18 00:31:55 +01:00
scrawl
14e1911820 Fix memory leaks 2016-03-10 20:38:14 +01:00
ae-g-i-s
c9791c5c1a Add addTemporaryDispositionChange parameter to MechanicsManager::getDerivedDisposition(), adjust callers that previously added temp disposition changes themselves (fixes #3233) 2016-03-08 21:30:28 +01:00
ae-g-i-s
2f1c6c740c Revert "Fix incorrect handling of baseDisposition >= 100 in testDisposition(), enable unbounded getDerivedDisposition() (Fixes #3233)"
This reverts commit 000597236e.
2016-03-08 20:41:39 +01:00
ae-g-i-s
000597236e Fix incorrect handling of baseDisposition >= 100 in testDisposition(), enable unbounded getDerivedDisposition() (Fixes #3233) 2016-03-06 18:29:32 +01:00
scrawl
2821f46a18 Corpse clearing fix 2016-03-01 11:31:08 +01:00
scrawl
7485abe5c3 Use safePlaceObject for summoned creature spawning 2016-02-29 17:27:07 +01:00
scrawl
11f00e3aa9 Rename safePlaceObject to placeObject 2016-02-29 17:05:18 +01:00
scrawl
c3ef387208 Vanilla-compatible creature/NPC respawning (Fixes #2369, Fixes #2467) 2016-02-27 12:53:07 +01:00
scrawl
a97eae864d Fix the ObstacleCheck time step (Fixes #3211) 2016-02-26 13:15:41 +01:00
scrawl
d05603c7fe Directly apply On Target 'When Strikes' enchantments instead of launching a projectile (Fixes #3212) 2016-02-22 19:42:54 +01:00
scrawl
90a99991d1 Use empty() instead of !size() 2016-02-22 19:06:12 +01:00
scrawl
8bd16e4d5a Don't compute the world matrix multiple times 2016-02-22 18:58:19 +01:00
scrawl
c4d38bb42d Fix clang analyzer warnings 2016-02-16 19:17:04 +01:00
scrawl
48ac0bef3e Repair save games affected by bug #3080 (Fixes #3160) 2016-02-11 16:34:02 +01:00
scrawl
a7b217def2 AI: don't cast fortify effects (Fixes #3184) 2016-02-07 01:29:11 +01:00
scrawl
162287b82d AI combat actions: rename 'target' to 'enemy' 2016-02-07 01:29:11 +01:00
scrawl
94c05c6baa AI: don't cast useless resist spells (Fixes #2760) 2016-02-07 01:29:02 +01:00
scrawl
d3415387a5 AI: take into account success chance when rating a spell 2016-02-07 01:18:20 +01:00
scrawl
b9d1d6144a Don't reveal unknown potion effects in alchemy window (Fixes #3146) 2016-02-02 22:50:11 +01:00
scrawl
d3b76b7006 Don't stack Ai packages (Fixes #3101, Fixes #3080, Fixes #2697) 2016-02-02 22:20:56 +01:00
scrawl
7aeafd3bb9 Revert "Apply the AiTravel maxRange to AiEscort as well (Fixes #2697)"
This reverts commit 1f543b4d79.
2016-02-02 22:08:12 +01:00
scrawl
145756c0a1 Partly revert "Avoid directly iterating the actor map (Fixes #3173)"
Caused issues when a summoned creature is removed as part of the magic effect update.

Fixes #3178
2016-02-02 15:57:15 +01:00
scrawl
59d2de118f Avoid directly iterating the actor map (Fixes #3173) 2016-02-02 00:50:21 +01:00
scrawl
50ed061154 AiWander: reset mAllowedNodes on cell change (Fixes #3176, Fixes #3130) 2016-02-02 00:41:40 +01:00
scrawl
dda4273349 Actors that start the game as dead do not float to the surface (Fixes #3177)
This has a minor bug (can you spot it?) that affects the vanilla engine as well, unfortunately not so simple to fix.
2016-02-01 23:18:18 +01:00
scrawl
832eaae27b Do not apply effects with CasterLinked flag when there is no valid caster 2016-02-01 22:57:08 +01:00
scrawl
c34314ae26 When an actor dies purge all spell effects cast by that actor (Fixes #3175) 2016-02-01 22:52:28 +01:00
Tobias Kortkamp
0659687bfb Some fixes for building on FreeBSD 2016-01-25 14:13:16 +01:00
scrawl
b0431833a1 Fix some defects reported by Coverity CI 2016-01-21 16:08:04 +01:00
mrcheko
b304e98568 implement ActionWeapon::getCombatRange (move logic from AiCombat) 2016-01-15 21:49:27 +03:00
scrawl
4e6a60672d When a spell explodes on an actor do not apply it to that actor twice (Fixes #3142) 2016-01-12 00:40:09 +01:00
scrawl
daa94cc50e Fix cppcheck warnings 2016-01-03 20:19:38 +01:00
mrcheko
bcb1f4ed05 refactor AiCombat: remove all pathfinding code, adopt new version of
AiPackage::pathTo;
fix couple of warnings;
2016-01-03 15:33:52 +03:00
Poncho
b1020dcd42 Use correct direction multipliers during awareness check 2016-01-02 12:24:39 -06:00
mrcheko
b960b0af93 rewrite pathTo for clearer logic; reapply Scrawl's aifollow threshold 2016-01-01 16:41:45 +03:00
mrcheko
d7d5cc6689 Merge remote-tracking branch 'upstream/master' into pathfinding
Conflicts:
	apps/openmw/mwmechanics/aicombat.cpp
	apps/openmw/mwmechanics/aifollow.cpp
	apps/openmw/mwmechanics/aipackage.cpp
	apps/openmw/mwmechanics/aipackage.hpp
	apps/openmw/mwmechanics/aiwander.cpp
	apps/openmw/mwmechanics/pathfinding.hpp

Ogre::Vector3->osg::Vec3f; REACTION_INTERVAL->AI_REACTION_TIME; MakeOgreVec3->MakeOsgVec3
2015-12-29 19:15:40 +03:00
scrawl
63b9b075aa Do not allow soul trapping the same creature more than once (Fixes #3102) 2015-12-26 18:47:22 +01:00
scrawl
0bec6e5fbe Fix 'failed to find animation' warnings when a spell was equipped before the werewolf transformation 2015-12-26 18:45:09 +01:00
scrawl
6b67911658 Unset DrawState_Spell when becoming a werewolf 2015-12-26 18:26:55 +01:00
scrawl
f052c05018 Move werewolf functions from World to MechanicsManager 2015-12-26 18:23:13 +01:00
scrawl
29d0f448b4 Add const version of World::getAnimation 2015-12-19 16:15:45 +01:00
scrawl
51c77c5045 Accept a ConstPtr in getDoorState 2015-12-19 16:15:45 +01:00
scrawl
53f4b92426 AiEscort do not follow target through doors
Testing revealed a problem where the guard on the prison ship would incorrectly follow the player outside. Upon further investigation in vanilla MW, it appears that with AiEscort the actor only follows the target through doors once the AiEscort package has completed, *and* no new AI package is running yet.
2015-12-19 15:15:44 +01:00
scrawl
04f7a8f8eb Remove redundant getId function 2015-12-18 16:58:38 +01:00
scrawl
b2add6470b Missing include fix 2015-12-18 02:58:38 +01:00
scrawl
1c8244276d Exception handling improvements (Bug #3090) 2015-12-18 02:36:34 +01:00
scrawl
689dea4cb3 Add instant spell effects to the actor's magic effect list
Via http://forum.openmw.org/viewtopic.php?f=2&t=3212&start=20#p36208
2015-12-17 19:49:37 +01:00
scrawl
375caf037d Don't applyInstantEffect when magnitude is zero 2015-12-15 20:46:05 +01:00
scrawl
4af376133b Don't tick effects when duration is zero 2015-12-15 20:41:00 +01:00
scrawl
572786bff2 Instant effects that were added by a permanent ability are applied every frame
Via http://forum.openmw.org/viewtopic.php?f=2&t=3212&p=36120#p36121
2015-12-14 03:27:49 +01:00
scrawl
a7e0562e1c Fix improper handling of multiple AiFollow packages with the same target (Fixes #3077) 2015-12-13 17:42:11 +01:00
scrawl
f1f82af64e Fix improper swimming animations in first person mode 2015-12-11 01:24:42 +01:00
scrawl
bdae572264 Merge pull request #840 from scrawl/movedrefs
Object movement between cells
2015-12-09 14:10:57 +01:00
scrawl
6f98982bc2 Make sure that health is >= 1 when resurrecting the player (Fixes #2972) 2015-12-09 01:52:20 +01:00
scrawl
34f48d63f3 Apply spell absorption once per effect (Fixes #2942) 2015-12-09 00:35:54 +01:00
scrawl
07b064f616 Rename to lowerCaseInPlace 2015-12-07 22:49:15 +01:00
scrawl
1875aa4a18 Restore getNearbyDoor 2015-12-07 03:53:46 +01:00
scrawl
1f543b4d79 Apply the AiTravel maxRange to AiEscort as well (Fixes #2697) 2015-12-07 00:26:17 +01:00
scrawl
965bea45c0 AiEscort makes the actor side with target in fights (Bug #2697)
Also will follow the player through teleport doors.
2015-12-06 23:38:51 +01:00
scrawl
4e678ce6b3 Handle mCellId in AiEscort 2015-12-06 23:38:51 +01:00
scrawl
0975f60d59 Stub out CellStore::get<T> accessors in preparation of reference movement between cells 2015-12-04 18:29:41 +01:00
scrawl
14b143231c Don't crash OpGetTarget when the target disappeared (Fixes #3048) 2015-11-30 15:26:43 +01:00
Marc Zinnschlag
ff5582e318 Merge remote-tracking branch 'scrawl/ltex' 2015-11-28 09:51:57 +01:00
scrawl
5b8fd79b4b Fix crash when exception is thrown in startNewGame() 2015-11-27 21:38:57 +01:00
Chris Robinson
5f8a09df97 Play player sounds (except footsteps) local to the listener 2015-11-27 02:01:18 -08:00
Marc Zinnschlag
7cc950ed64 Merge remote-tracking branch 'origin/master' 2015-11-27 10:34:22 +01:00
scrawl
44dd62067e Remove some unnecessary per-frame store searches 2015-11-27 02:13:56 +01:00
scrawl
783594033a Optimize MWMechanics::Spells
Use pointers as map keys instead of string IDs. Resolves a nasty performance bottleneck on functions like hasCommonDisease() that previously had to look up all contained spells from the ESM store on every call. hasCommonDisease() is called hundreds of times per frame by the AI target update since it's used to calculate target disposition.

The total cost of hasCommonDisease() was 2.7% of the frame loop, now it's negligible.
2015-11-27 01:07:15 +01:00
Chris Robinson
73448c72f6 Replace Play_NoTrack with playManualSound3D, and rename the latter 2015-11-25 04:24:26 -08:00
scrawl
62169a7039 Use a single-precision PositionAttitudeTransform in speed critical places 2015-11-22 19:54:26 +01:00
scrawl
3453353091 AiCombat distance check takes into account collision box (Fixes #1699) 2015-11-18 19:00:43 +01:00
scrawl
666fbba1e0 Rotations: World::rotateObject takes radians instead of degrees
Cuts down on the amount of redundant degree<->radians conversions in the codebase.
2015-11-12 01:09:39 +01:00
scrawl
6405049add Rotations: move doors via Rotation rather than LocalRotation
Now LocalRotation is unneeded, will remove in next commit.
2015-11-12 00:58:29 +01:00
scrawl
637cd3a628 Adjust the FirstPersonNeckController to follow the camera with a reduced factor (Fixes #1784) 2015-11-10 01:01:41 +01:00
scrawl
3c338b9da9 ObstacleCheck: tweak the stuck detection parameters
The netch_betty wander animation starts up so slowly that the creature thought it was stuck, even though it's not.
2015-11-09 20:35:31 +01:00