From: Laszlo T. <ave...@us...> - 2011-02-26 11:28:51
|
gemrb: Infinity Engine emulator The branch master has been updated via d40ec64b83757b1f9f2d0343a5f4bf4247e9c776 (commit) Summary of changes: gemrb/core/Spell.cpp | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) from fc6781a8c3b448c3fba4617139c3586391e33117 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- http://gemrb.git.sourceforge.net/git/gitweb.cgi?p=gemrb/gemrb;a=commitdiff;h=d40ec64b83757b1f9f2d0343a5f4bf4247e9c776 commit d40ec64b83757b1f9f2d0343a5f4bf4247e9c776 Author: Avenger <ave...@so...> Date: Sat Feb 26 12:28:08 2011 +0100 fixed simplified duration with cfb diff --git a/gemrb/core/Spell.cpp b/gemrb/core/Spell.cpp index c7eec26..19725ad 100644 --- a/gemrb/core/Spell.cpp +++ b/gemrb/core/Spell.cpp @@ -140,17 +140,18 @@ EffectQueue *Spell::GetEffectBlock(Scriptable *self, const Point &pos, int block EffectQueue *selfqueue = NULL; for (int i=0;i<count;i++) { - if (Flags & SF_SIMPLIFIED_DURATION) { + Effect *fx = features+i; + + if ((Flags & SF_SIMPLIFIED_DURATION) && (block_index>=0)) { //hack the effect according to Level //fxqueue->AddEffect will copy the effect, //so we don't risk any overwriting if (EffectQueue::HasDuration(features+i)) { - features[i].Duration = (TimePerLevel*block_index+TimeConstant)*core->Time.round_sec; + fx->Duration = (TimePerLevel*block_index+TimeConstant)*core->Time.round_sec; } } //fill these for completeness, inventoryslot is a good way //to discern a spell from an item effect - Effect *fx = features+i; fx->InventorySlot = 0xffff; //the hostile flag is used to determine if this was an attack ----------------------------------------------------------------------- This is an automated email from the git hooks/post-receive script. -- gemrb: Infinity Engine emulator |