Commit Graph

26 Commits (ffi-server-rewrite)

Author SHA1 Message Date
MiroslavR c8b61cb234 Cache magic effects in MWMechanics::Spells 9 years ago
MiroslavR 54f52f7bae Implement effect removal for abilities (Fixes #3455) 9 years ago
Tobias Kortkamp 0659687bfb Some fixes for building on FreeBSD 9 years ago
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.
9 years ago
scrawl 9d86e5b028 GetSpellEffects returns true for active abilities (Fixes #2530) 10 years ago
scrawl 88a2e4c043 Graceful error handling for missing spells/factions (Fixes #1825, Bug #2176, Bug #2203) 10 years ago
Jordan Ayers da9d858201 Add 'const' to a spell helper function. 10 years ago
MiroslavR 85aa237baf Implement removal of corprus spells 11 years ago
MiroslavR 2cbe17ca0a Make Spells::mCorprusSpells private 11 years ago
MiroslavR 96e7ff666d Implement saving/loading of corprus stats, remove redundant code 11 years ago
MiroslavR 3722c7adc3 Initial work on implementing corprus worsening effect 11 years ago
scrawl 6cc691115b Savegame: store most of CreatureStats 11 years ago
Marc Zinnschlag 367919200f moved CellRefList into a separate file 11 years ago
scrawl 525ce2f042 Some cleanup - move definitions to implementation file 11 years ago
scrawl c548dcee13 Quick keys menu: make sure selected spell still exists 11 years ago
scrawl 0dc2e829dd Lots of cleanup. Implemented Absorb and Resist. Implemented several instant effects. Added hand VFX. 11 years ago
scrawl c73217627e Move code for listing effect sources to the spell management classes 11 years ago
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. 11 years ago
scrawl a6e2f43b75 Stop continuous VFX when the effect is no longer active. 11 years ago
Marc Zinnschlag 654cd3ab9b Issue #479: Use magnitude specified when adding disease 12 years ago
Marc Zinnschlag f4ee8e2642 Issue #479: Added additional magnitude parameter to known spells 12 years ago
Marc Zinnschlag be1334b202 disease tests 12 years ago
Marc Zinnschlag 35f478071e Issue #255: deleted the old environment class and using the new one instead 13 years ago
Marc Zinnschlag 52c7ee3b6a moved selected spell from NpcStats to Spells 13 years ago
Marc Zinnschlag 77065390d7 simplifying Spells class 13 years ago
Marc Zinnschlag 750d79eaf0 added spell container class 13 years ago