elsid
ca7add0624
Add move constructor to MWMechanics::Spells
2021-04-24 00:32:22 +02:00
Evil Eye
c2580d60e9
Register copied Spells with SpellList
2021-03-14 19:32:03 +01:00
Andrei Kortunov
924f634bda
Support for multiple summons with same ID in the single spell
2020-08-28 21:14:54 +04:00
Evil Eye
fb28d27d08
don't discard purged effects
2020-08-07 16:36:59 +02:00
Evil Eye
144a7f330f
Fix a regression that meant missing spells would prevent a save from being loaded
2020-08-04 18:28:10 +02:00
Evil Eye
6ad20ec9c7
Mutate base records when adding/removing spells
2020-07-28 08:33:28 +02:00
Andrei Kortunov
3dce225f28
Implement vanilla-style corprus handling (bug #3714 , bug #4623 )
2020-06-03 12:58:17 +04:00
Andrei Kortunov
6eb8e0cf4d
Display magic effects according to research page
2019-11-07 11:05:18 +04:00
Capostrophic
5f7343ad7f
Don't break GetSpellEffects execution if the spell doesn't exist
2019-05-14 21:24:03 +03:00
Capostrophic
d4c1bd81b6
Use dice rolls instead of chance for spell magnitude (bug #4945 )
2019-04-08 20:25:30 +03:00
Andrei Kortunov
3032b177a1
Remove redundant includes
2019-02-23 08:02:12 +04:00
Capostrophic
b8ba9092cb
Purge effects from all permanent spells with the same ID
2018-08-29 14:09:43 +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
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
Tobias Kortkamp
0659687bfb
Some fixes for building on FreeBSD
2016-01-25 14:13:16 +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
77cb438714
Fix potential case smashing issue
2015-10-05 15:41:07 +02:00
scrawl
67bd6cd708
Remove empty line at the beginning of files
...
git ls-files -z | xargs -0 sed -i '1{/^$/d}'
2015-08-18 23:06:12 +02:00
Alexander "Ace" Olofsson
b3b55a5842
Explicitly instantiate MWWorld::Store
2015-07-09 19:22:04 +02:00
scrawl
22f01b1232
Merge branch 'master' of https://github.com/OpenMW/openmw into osg
...
Conflicts:
apps/launcher/graphicspage.cpp
apps/opencs/editor.cpp
apps/opencs/model/doc/document.cpp
apps/opencs/view/render/cell.cpp
apps/opencs/view/render/mousestate.cpp
apps/opencs/view/render/textoverlay.cpp
apps/opencs/view/render/worldspacewidget.cpp
apps/openmw/mwclass/creature.cpp
apps/openmw/mwclass/npc.cpp
apps/openmw/mwgui/inventorywindow.cpp
apps/openmw/mwgui/loadingscreen.cpp
apps/openmw/mwgui/mapwindow.cpp
apps/openmw/mwgui/pickpocketitemmodel.cpp
apps/openmw/mwgui/waitdialog.cpp
apps/openmw/mwmechanics/combat.cpp
apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
apps/openmw/mwrender/globalmap.cpp
apps/openmw/mwworld/physicssystem.cpp
apps/openmw/mwworld/refdata.cpp
apps/openmw/mwworld/scene.cpp
apps/openmw/mwworld/worldimp.cpp
components/sdlutil/sdlinputwrapper.cpp
extern/shiny/Main/Factory.cpp
extern/shiny/Main/MaterialInstance.cpp
extern/shiny/Main/Platform.cpp
extern/shiny/Main/ShaderSet.cpp
2015-05-23 20:33:44 +02:00
scrawl
9d86e5b028
GetSpellEffects returns true for active abilities ( Fixes #2530 )
2015-05-11 16:38:16 +02: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
scrawl
69676906ae
Don't clear known spells when reading from the savegame
...
This is needed because the .ess format doesn't include the racial spells in the player's spell list.
2015-01-23 15:34:14 +01:00
scrawl
f267497c03
Allow separate summoned creature instances for each spell ID ( Fixes #2194 )
2015-01-06 16:11:05 +01:00
scrawl
88a2e4c043
Graceful error handling for missing spells/factions ( Fixes #1825 , Bug #2176 , Bug #2203 )
2014-12-14 02:38:27 +01:00
MiroslavR
140013820b
Fix invalidated iterator
2014-11-02 15:40:08 +01:00
MiroslavR
85aa237baf
Implement removal of corprus spells
2014-08-22 03:34:31 +02:00
MiroslavR
2cbe17ca0a
Make Spells::mCorprusSpells private
2014-08-20 12:40:38 +02:00
MiroslavR
26732bc228
Purge blight should not remove corprus
2014-08-19 22:13:37 +02:00
MiroslavR
96e7ff666d
Implement saving/loading of corprus stats, remove redundant code
2014-08-19 03:17:31 +02:00
MiroslavR
3722c7adc3
Initial work on implementing corprus worsening effect
2014-08-18 15:33:12 +02:00
scrawl
dfacf8c044
Change ActiveSpells to use ActorId
2014-05-14 07:14:08 +02:00
scrawl
6cc691115b
Savegame: store most of CreatureStats
2014-05-12 21:37:36 +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
scrawl
b4230f716e
Implement RemoveEffects instruction
2014-01-03 05:19:10 +01:00
scrawl
299690631f
Implement SoulTrap magic effect
2014-01-02 21:21:28 +01:00
scrawl
686d9efac3
Bug #1060 : Fix incorrect spell type checks
2013-12-27 18:58:35 +01:00
scrawl
4ed4c1e319
Add Vampirism and Sun Damage effects. Some fixes.
2013-11-21 00:41:31 +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
c73217627e
Move code for listing effect sources to the spell management classes
2013-11-15 20:29:47 +01:00
scrawl
0b5f5351b5
Fix continuous FX getting removed instantly
2013-11-14 13:30:48 +01:00
scrawl
ff7e4174f9
Fix some leftover code that still calculated random magnitude per spell rather than per effect. Major cleanup of InventoryStore: Magic effects are now updated when needed, rather than cached. Also allows to get rid of 'mutable' hacks and non-const method that should be const. Play sounds and particles when equipping a permanent enchantment item.
2013-11-13 18:51:28 +01:00
scrawl
a57fbbb168
Fix wrong detection of diseases
2013-04-14 17:51:17 +02:00
Marc Zinnschlag
654cd3ab9b
Issue #479 : Use magnitude specified when adding disease
2013-01-13 14:52:55 +01:00
Marc Zinnschlag
f4ee8e2642
Issue #479 : Added additional magnitude parameter to known spells
2013-01-12 13:10:20 +01:00
Marc Zinnschlag
be1334b202
disease tests
2012-11-09 18:16:29 +01:00
greye
620184a009
fix typos
2012-11-06 14:44:56 +04:00