Least Spell Mantle duration is too short
-
Least Spell Mantle lasts for 9 seconds, but the description says 2 rounds per level.
-
Unless I'm missing something; this is correctly scripted.
//Absorb 1d4 + 2 spell levels for 2 round / level void LeastSpellMantle(object oPC, int iSpell) { object oTarget = oPC; effect eVis = EffectVisualEffect(VFX_DUR_SPELLTURNING); effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE); int nDuration = GetAdjustedCasterLevel(oPC) * 2; int nAbsorb = d4() + 3; if (GetHasFeat(FEAT_GREATER_SPELL_FOCUS_ABJURATION)) { nDuration += 8; nAbsorb = d2() + 5; } else if (GetHasFeat(FEAT_SPELL_FOCUS_ABJURATION)) { nDuration += 4; nAbsorb = d3() + 4; } if (GetMetaMagicFeat() == METAMAGIC_EXTEND) nDuration *= 2; effect eAbsob = EffectSpellLevelAbsorption(9, nAbsorb); effect eLink = EffectLinkEffects(eDur, eAbsob); SignalEvent(oTarget, EventSpellCastAt(oPC, iSpell, FALSE)); RemoveEffectsFromSpell(oTarget, SPELL_GREATER_SPELL_MANTLE); RemoveEffectsFromSpell(oTarget, SPELL_SPELL_MANTLE); ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nDuration)); ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eVis, oTarget, 9.0f); } -
Alright, its the last two lines that confused me. The VFX lasts 9 seconds, but the effect is good for the duration 2 rounds per caster level.
I was being somewhat confounded by how it interacts with dispel (it doesn't) when trying to use it.
-
M Mr.Moloch moved this topic from Bug Reports