Updated AMS marker feats. Removed arcane & divine marker feats. Updated Dread Necromancer for epic progression. Updated weapon baseitem models. Updated new weapons for crafting & npc equip. Updated prefix. Updated release archive.
54 lines
1.8 KiB
Plaintext
54 lines
1.8 KiB
Plaintext
//::///////////////////////////////////////////////
|
|
//:: Divine Shield
|
|
//:: x0_s2_divshield.nss
|
|
//:: Copyright (c) 2002 Bioware Corp.
|
|
//:://////////////////////////////////////////////
|
|
/*
|
|
Up to [turn undead] times per day the character may add his Charisma bonus to his armor
|
|
class for a number of rounds equal to the Charisma bonus.
|
|
*/
|
|
//:://////////////////////////////////////////////
|
|
//:: Created By: Brent
|
|
//:: Created On: Sep 13, 2002
|
|
//:://////////////////////////////////////////////
|
|
|
|
#include "prc_inc_spells"
|
|
|
|
void main()
|
|
{
|
|
|
|
if (!GetHasFeat(FEAT_TURN_UNDEAD, OBJECT_SELF))
|
|
{
|
|
SpeakStringByStrRef(40550);
|
|
}
|
|
else
|
|
if(GetHasFeatEffect(414) == FALSE)
|
|
{
|
|
//Declare major variables
|
|
object oTarget = PRCGetSpellTargetObject();
|
|
int nLevel = GetCasterLevel(OBJECT_SELF);
|
|
|
|
effect eVis = EffectVisualEffect(VFX_IMP_SUPER_HEROISM);
|
|
effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE);
|
|
|
|
int nCharismaBonus = GetAbilityModifier(ABILITY_CHARISMA);
|
|
|
|
if (GetHasFeat(FEAT_EPIC_DIVINE_SHIELD, OBJECT_SELF)) nCharismaBonus += nCharismaBonus;
|
|
|
|
effect eAC = EffectACIncrease(nCharismaBonus, AC_SHIELD_ENCHANTMENT_BONUS);
|
|
effect eLink = EffectLinkEffects(eAC, eDur);
|
|
eLink = SupernaturalEffect(eLink);
|
|
|
|
// * Do not allow this to stack
|
|
PRCRemoveEffectsFromSpell(oTarget, GetSpellId());
|
|
|
|
//Fire cast spell at event for the specified target
|
|
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, 474, FALSE));
|
|
|
|
//Apply Link and VFX effects to the target
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCharismaBonus));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
|
|
|
DecrementRemainingFeatUses(OBJECT_SELF, FEAT_TURN_UNDEAD);
|
|
}
|
|
} |