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

333 commits

Author SHA1 Message Date
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
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
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
Andrei Kortunov
30b05b557b ExtraSpell magic effect: a basic implementation 2017-10-14 16:55:00 +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
MiroslavR
f15de6d3ca ESS-Importer: Convert magic projectiles (Closes #2320) 2017-09-20 18:58:56 +02: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
Andrei Kortunov
1e983604db Dispel only effects from spells (bug #3995) 2017-08-15 09:35:29 +04:00
Andrei Kortunov
ab391f17db Fixes regression in spell school detection (bug #4007) 2017-08-07 12:12:57 +04:00
David Cernat
77ce05b7d6 [Client] Fix spell casting probability synchronization 2017-08-06 00:11:54 +03: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
Andrei Kortunov
b7cfb1aaf4 Fixed DamageHealth and AbsorbHealth effects applying 2017-07-31 23:05:19 +04:00
Andrei Kortunov
3ba0a336b7 Move spell magicka cost calculation to standalone function 2017-07-24 21:11:59 +04:00
David Cernat
0b68e59060 [Client] Send ObjectLock packets when using lock spells 2017-06-29 22:29:49 +03:00
Koncord
6222c20e82 [Client] Convert MechanicsHelper to namespace 2017-06-27 16:43:53 +08: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
809b4d78ba [Client] Split off DedicatedPlayer and PlayerList into different files 2017-04-30 14:57:43 +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
David Cernat
014ff7a059 [Client] Replace usage of Networking::isDedicatedPlayer() 2017-04-18 18:07:39 +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
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
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
Andrei Kortunov
14b59e0e4b Vanilla-like tgm (fixes #3798) 2017-03-25 22:40:11 +04:00
Andrei Kortunov
e383e4d023 Disabled hit overlay for damage/absorb mana/fatigue spells 2017-03-25 14:10:19 +04: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
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
Allofich
72c3ee0a3d Make AI not go hostile when absorbing/reflecting 2017-02-12 23:14:09 +09:00
David Cernat
63c8a98083 [General] Stop using virtual functions in BasePlayer 2017-01-25 17:06:15 +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
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
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
Koncord
536715cf46 Cleanup tes3mp headers 2016-12-16 16:59:15 +08:00
Leon Krieg
c7b4b2cdd7 Fixed multiple spelling mistakes 2016-12-14 16:39:33 +01:00
mrohrlach
9624d8aade Added new method and variable to track float remainders of disintegration effections 2016-12-09 19:48:56 -07: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
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
Allofich
0e429ae41d Make water walking mechanics closer to original MW 2016-11-20 22:21:33 +09:00
David Cernat
3a733eb122 Make tes3mp includes consistent 2016-11-17 17:16:25 +02: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
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
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
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
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
1534f835a6 Merge pull request #61 from OpenMW/master
Add OpenMW commits up to 19 Sep
2016-09-19 23:38:20 +03: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
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
Allofich
bce0166931 Don't play blood effects for resisted hits 2016-09-12 22:46:32 +09: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
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
3300ef5db7 Don't apply projectile effects multiple times 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
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
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
Allofich
a6216d883f Don't allow casting Water Walking in deep water 2016-08-31 04:37:50 +09:00
David Cernat
d9cfd5bac2 Resolve conflicts with OpenMW 2016-08-15 19:14:13 +03: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
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
MiroslavR
b0fcad4cb8 Don't stack effects for scrolls of the same type (Fixes #3466) 2016-07-10 03:49:09 +02:00
Koncord
1b259e2d33 Syncing inventory, animations, position, 8 key attributes
Created Package system
2016-07-07 23:50:48 +08:00
Allofich
b1be3596dc Cleanup of #include statements 2016-06-18 10:56:28 +09:00
scrawl
4acfe1a7e4 Move cleanupSummonedCreature to the mechanics manager (Bug #3439) 2016-06-12 02:43:33 +02: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
c4d38bb42d Fix clang analyzer warnings 2016-02-16 19:17:04 +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
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
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
34f48d63f3 Apply spell absorption once per effect (Fixes #2942) 2015-12-09 00:35:54 +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
scrawl
7b6fe149f2 getSpellSuccessChance return 0 for used powers (Fixes #2944) 2015-10-05 15:41:43 +02:00
Marc Zinnschlag
a52b947efe Merge remote-tracking branch 'dteviot/MagicEffectsRefactorDraft3' 2015-08-23 12:11:30 +02:00
dteviot
5dd0ad6841 Fixed rest of travis errors. 2015-08-21 22:41:31 +12:00
dteviot
77a1d947cc extracted MWMechanics::getPlayer() 2015-08-21 21:12:39 +12:00
dteviot
85bc41dedb replaced FLT_MAX with numeric_limits. 2015-08-21 19:34:28 +12:00
dteviot
0ee7407101 extracted common sub-expressions. 2015-08-20 18:17:02 +12:00
scrawl
d76fb2d266 Apply disintegrate only to weapons and armor (Fixes #2853) 2015-08-14 13:38:39 +02:00
scrawl
1e18a73b1c Don't play magic effect sounds & visual effects for unsuitable targets (Fixes #2811) 2015-08-13 17:08:21 +02:00
scrawl
211deeb63e Don't attempt to lock or unlock unsuitable objects (Fixes #2826) 2015-08-13 17:08:21 +02:00
scrawl
278a078e9d Unify magic effect tick functions
- Removes duplicated code
- Handle some zero-duration instant effects that were not handled before (disintegrate, sun damage, elemental damage)
2015-07-18 20:39:45 +02:00
scrawl
974fda5bde Merge branch 'master' of https://github.com/OpenMW/openmw into osg
Conflicts:
	extern/sdl4ogre/sdlwindowhelper.cpp
2015-06-03 03:18:29 +02:00
scrawl
de8e5f0db1 Restore projectiles 2015-06-01 21:41:13 +02:00
scrawl
fd50be0fb8 Restore various gameplay 2015-05-30 01:00:24 +02:00
scrawl
d1b6289cad Don't teleport followers when using teleportation spells 2015-05-22 19:57:02 +02:00
scrawl
8c810e3620 Move rng to components 2015-04-22 17:58:55 +02:00
scrawl
c92592493e OpenMW: create a window and render the starting cell(s) 2015-04-12 15:38:30 +02:00
scrawl
4e69e7cc0f OpenMW compiles and runs w/o render window 2015-04-01 17:02:15 +02:00
dteviot
3f28634d1f consolidate random number logic
Note, I suspect Rng::rollClosedProbability() is not needed.  The only difference between it and rollProbability() is that one time in 37k (on Windows), it will give an output of 1.0.
On some versions of Linux, the value of 1.0 will occur about 1 time in 4 billion.
2015-03-15 14:07:47 +13:00
scrawl
3879ce6ac1 Get rid of "player" string checks (Fixes #2216) 2015-03-11 23:07:39 +01:00
dteviot
ca8c8c6aa4 fixing MSVC 2013 warning C4244: & C4305
conversion from 'const float' to 'int', possible loss of data
conversion from 'double' to 'int', possible loss of data
conversion from 'float' to 'int', possible loss of data
2015-03-08 17:42:07 +13:00
dteviot
45b6538820 fixed MSVC 2013 warning C4800
forcing value to bool 'true' or 'false'
2015-03-06 23:19:57 +13:00
scrawl
a653716e2c Fix for damage/restore effects using the instant apply path when they have a duration 2015-03-01 22:22:20 +01:00
scrawl
f82751422d Fix constant effect restore enchantments being applied incorrectly (Fixes #2408) 2015-02-28 16:31:22 +01:00
scrawl
77bb77b367 Fix for instant restore effects (Fixes #2392) 2015-02-23 19:07:12 +01:00
dteviot
8d7de7d1ec Telekinesis allows safe opening of traps (Fixes #1916)
When trap activated at beyond normal activation distance, assume telekinesis used and detonate trap at trapped object's location.
Also some minor code refactoring of spellcasting.
1. Corrected parameter passed to explodeSpell().
2. For loop now correctly does an early exit.
3. Removed duplicated tests.
2015-02-17 22:14:25 +13:00
scrawl
378e91545d Fix Tribunal/BM summon effects not working 2015-01-23 15:34:47 +01:00
Marc Zinnschlag
38a413a483 Merge remote-tracking branch 'scrawl/master' 2015-01-07 20:22:15 +01:00
scrawl
13c5bd5cc2 Enchanting: fix skill-based cast cost bonus being applied twice 2015-01-07 04:41:12 +01:00
scrawl
992b87ea44 Reset existing summons when the spell is re-casted (Fixes #2135) 2015-01-06 16:11:10 +01:00