David Cernat
571f3e8ee7
[Client] Use correct stacking value when sending SpellsActive packets
2022-02-12 18:43:18 +02:00
David Cernat
f2d95dc84d
[Client] Make ActiveSpells::removeSpellByTimestamp() return a boolean
...
Add logging to LocalPlayer::removeSpellsActive() to track when a player's active spell hasn't been removed due to an invalid timestamp.
2022-02-12 14:00:47 +02:00
David Cernat
63c956e1d2
[Client] Fix active spell sync using actor IDs tracked in ActiveSpells
2021-10-12 02:01:05 +02:00
David Cernat
c027862609
[Client] Track actor IDs in ActiveSpells
2021-10-12 00:34:15 +02:00
David Cernat
3f3fe66fde
[General] Track casters of spells in SpellsActive packets
...
Also simplify sending of SpellsActive packets slightly.
2021-07-21 18:14:31 +02:00
David Cernat
a4b180f65a
[Client] Don't send SpellsActive packets for spells received from server
2021-07-06 17:22:19 +02:00
David Cernat
294f64d12d
[General] Track timestamps for spells in SpellsActive packets
...
This makes it possible to remove a specific effect in effect stacks by checking its timestamp.
2021-07-04 12:54:11 +02:00
David Cernat
767287ae51
[General] Track stacking spells in SpellsActive packets
2021-06-10 13:27:52 +02:00
David Cernat
bf0a42fdad
[General] Implement ActorSpellsActive packet, part 1
...
The packet can now set the active spells of DedicatedActors.
2021-04-20 03:25:14 +02:00
David Cernat
6766206a76
[Client] Add check for local player when sending active spell removal
2021-04-16 22:05:54 +02:00
David Cernat
0eedf8fd9f
Add OpenMW commits up to 30 Sep 2020
...
# Conflicts:
# apps/openmw/mwmechanics/aicombat.cpp
# apps/openmw/mwmechanics/character.cpp
# apps/openmw/mwmechanics/summoning.cpp
# components/CMakeLists.txt
2020-09-30 13:32:15 +02:00
Andrei Kortunov
924f634bda
Support for multiple summons with same ID in the single spell
2020-08-28 21:14:54 +04:00
David Cernat
c56cd7c221
[General] Implement PlayerSpellsActive packet, part 1
...
Additions and removals of the local player's active spells can now be saved to and loaded from the server.
2020-07-10 02:09:11 +02:00
David Cernat
e5b1843089
Add OpenMW commits up to 11 Jun 2020
...
# Conflicts:
# apps/openmw/mwbase/world.hpp
# apps/openmw/mwgui/jailscreen.cpp
# apps/openmw/mwmechanics/activespells.cpp
# apps/openmw/mwmechanics/aiactivate.cpp
# apps/openmw/mwmechanics/aiactivate.hpp
# apps/openmw/mwmechanics/creaturestats.cpp
# apps/openmw/mwscript/aiextensions.cpp
# apps/openmw/mwscript/statsextensions.cpp
# apps/openmw/mwworld/worldimp.cpp
# apps/openmw/mwworld/worldimp.hpp
2020-06-11 13:21:58 +03:00
David Cernat
36a2308acd
Add OpenMW commits up to 30 May 2020
...
# Conflicts:
# CMakeLists.txt
# apps/openmw/mwbase/windowmanager.hpp
# apps/openmw/mwgui/windowmanagerimp.hpp
# apps/openmw/mwmechanics/actors.cpp
# apps/openmw/mwmechanics/actors.hpp
# apps/openmw/mwscript/interpretercontext.cpp
2020-06-09 17:50:26 +03:00
Andrei Kortunov
3dce225f28
Implement vanilla-style corprus handling (bug #3714 , bug #4623 )
2020-06-03 12:58:17 +04:00
Andrei Kortunov
b5833f3c59
Use real time to update spell effects instead of game timestamps (bug #5165 )
2020-05-16 11:00:28 +04:00
David Cernat
889bcec7f8
Add OpenMW commits up to 1 Sep 2018
...
# Conflicts:
# apps/openmw/mwbase/world.hpp
# apps/openmw/mwclass/creature.cpp
# apps/openmw/mwclass/npc.cpp
# apps/openmw/mwgui/jailscreen.cpp
# apps/openmw/mwmechanics/actors.cpp
# apps/openmw/mwmechanics/difficultyscaling.cpp
# apps/openmw/mwscript/transformationextensions.cpp
# apps/openmw/mwworld/worldimp.hpp
2019-08-20 11:31:51 +03:00
David Cernat
abc4090a0f
[Client] Fix loop in ActiveSpells::getEffectDuration()
2019-05-20 23:09:54 +03:00
uramer
2531378d0b
make getEffectDuration to look for a specific effect
2019-04-21 20:53:38 +02:00
Capostrophic
ed1f8f7be7
Remove effects from all active spells with the same ID
2018-08-29 13:52:03 +03:00
Capostrophic
6c47f95677
Make RemoveSpellEffects affect permanent spells (bug #3920 )
...
Also make it remove the effects but not the spells themselves
2018-08-29 13:52:03 +03:00
Koncord
53346e2663
[Client] Return 0 if effect not found
2018-07-03 03:43:38 +08:00
David Cernat
958b220835
[General] Send summon duration to server in ObjectSpawn packets
2018-07-01 00:43:29 +03:00
David Cernat
047ad40b96
[Client] Clear FortifyAttribute effects when server sets modifier to 0
2017-12-02 09:22:36 +02:00
Andrei Kortunov
1e983604db
Dispel only effects from spells (bug #3995 )
2017-08-15 09:35:29 +04:00
Allofich
b1be3596dc
Cleanup of #include statements
2016-06-18 10:56:28 +09: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
scrawl
07b064f616
Rename to lowerCaseInPlace
2015-12-07 22:49:15 +01:00
scrawl
8c810e3620
Move rng to components
2015-04-22 17:58:55 +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
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
80fe24207c
correction from Scrawl.
...
Now correctly handles skills/attributes.
Also, document what ContentSelectorView::ContentSelector::slotAddonTableItemActivated() is doing.
2015-03-05 20:21:22 +13:00
dteviot
cdee6f41fc
fix: multi effect spell with different ranges ( Fixes #2285 )
...
Applies all effects for a spell with multiple effects, where not all effects have the same range.
2015-03-01 15:34:18 +13:00
scrawl
f267497c03
Allow separate summoned creature instances for each spell ID ( Fixes #2194 )
2015-01-06 16:11:05 +01:00
scrawl
0081a68376
Use fMagicStartIconBlink for spell effect indicator fading
2014-12-24 15:45:13 +01:00
MiroslavR
238325455d
Erase effects that have expired ( Fixes #2134 )
2014-11-25 10:33:03 +01:00
scrawl
9052cc4a57
Savegame: store ActiveSpells
2014-05-14 23:54:15 +02:00
scrawl
dfacf8c044
Change ActiveSpells to use ActorId
2014-05-14 07:14:08 +02:00
Thoronador
1b8c975d5b
minor performance improvements in apps/openmw
...
Checking for emptiness using size() might be inefficient, because
it can take linear time, while empty() is guaranteed to take only
constant time.
For non-primitive types, postfix ++ operators are inefficient
compared to prefix ++ operators, because post-increment usually
involves keeping a copy of the previous value around.
2014-04-27 19:10:23 +02:00
Marc Zinnschlag
367919200f
moved CellRefList into a separate file
2014-02-23 20:11:05 +01:00
scrawl
f78b846f9e
Handle CasterLinked magic effect flag
2014-01-12 10:21:49 +01:00
scrawl
7d8ca91286
Implement RemoveSpellEffects instruction
2014-01-03 05:18:44 +01:00
scrawl
299690631f
Implement SoulTrap magic effect
2014-01-02 21:21:28 +01:00
scrawl
596e0c8a49
Correct Dispel effect (use magnitude as chance)
2014-01-02 20:15:07 +01:00
scrawl
94d2ec8e4e
Add missing spells update
2014-01-02 20:02:28 +01:00
scrawl
0dc2e829dd
Lots of cleanup. Implemented Absorb and Resist. Implemented several instant effects. Added hand VFX.
2013-11-17 23:31:08 +01:00
scrawl
bb43ec9b35
Implement damage tick effects
2013-11-16 03:16:21 +01:00
scrawl
b1a29eb27e
Implement Resist & Weakness effects
2013-11-16 02:34:43 +01:00
scrawl
c73217627e
Move code for listing effect sources to the spell management classes
2013-11-15 20:29:47 +01:00