/*::////////////////////////////////////////////// //:: Spell Name Owl’s Wisdom //:: Spell FileName PHS_S_OwlsWis //::////////////////////////////////////////////// //:: In Game Spell desctiption //::////////////////////////////////////////////// Transmutation Level: Clr 2, Drd 2, Pal 2, Rgr 2, Sor/Wiz 2 Components: V, S, M/DF Casting Time: 1 standard action Range: Touch Target: Creature touched Duration: 1 min./level Saving Throw: Will negates (harmless) Spell Resistance: Yes The transmuted creature becomes wiser. The spell grants a +4 enhancement bonus to Wisdom, adding the usual benefit to Wisdom-related skills. Clerics, druids, paladins, and rangers (and other Wisdom-based spellcasters) who receive owl’s wisdom do not gain any additional bonus spells for the increased Wisdom, but the save DCs for their spells increase. Arcane Material Component: A few feathers, or a pinch of droppings, from an owl. //::////////////////////////////////////////////// //:: Spell Effects Applied / Notes //::////////////////////////////////////////////// +4 to stat, doesn't stack with mass version. //::////////////////////////////////////////////// //:: Created By: Jasperre //::////////////////////////////////////////////*/ #include "PHS_INC_SPELLS" void main() { // Spell hook check. if(!PHS_SpellHookCheck(PHS_SPELL_OWLS_WISDOM)) return; // Declare major variables object oCaster = OBJECT_SELF; object oTarget = GetSpellTargetObject(); int nCasterLevel = PHS_GetCasterLevel(); int nMetaMagic = PHS_GetMetaMagicFeat(); // Ability to use int nAbility = ABILITY_WISDOM; // Duration - 1 minute/level float fDuration = PHS_GetDuration(PHS_MINUTES, nCasterLevel, nMetaMagic); // Make sure they are not immune to spells if(PHS_TotalSpellImmunity(oTarget)) return; // Check if oTarget has better effects already if(PHS_GetHasAbilityBonusOfPower(oTarget, nAbility, 4) == 2) return; // Delcare Effects effect eAbility = EffectAbilityIncrease(nAbility, 4); effect eVis = EffectVisualEffect(VFX_IMP_IMPROVE_ABILITY_SCORE); effect eCessate = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE); effect eLink = EffectLinkEffects(eAbility, eCessate); // Signal the spell cast at event PHS_SignalSpellCastAt(oTarget, PHS_SPELL_OWLS_WISDOM, FALSE); // Remove these abilities effects PHS_RemoveAnyAbilityBonuses(oTarget, nAbility); // Apply effects and VFX to target PHS_ApplyDurationAndVFX(oTarget, eVis, eLink, fDuration); }