LoD_PRC8/_module/nss/x0_s2_harpitem.nss
Jaysyn904 94990edc60 Initial Upload
Initial Upload
2023-09-21 21:20:34 -04:00

43 lines
1.5 KiB
Plaintext

//////////////////////////////////////////////////
// Heroism //
//////////////////////////////////////////////////
/*
Caster gets +3 to attack bonus, +2 AC and
+4 divine damage.
*/
//:://////////////////////////////////////////////
//:: Created By: Torak
//:: Created On: Aug 24, 2004
//:://////////////////////////////////////////////
#include "NW_I0_SPELLS"
#include "x2_inc_spellhook"
void main()
{
object oCaster = OBJECT_SELF;
effect eLink;
if(GetIsObjectValid(oCaster))
{
float fDelay = GetRandomDelay(0.4, 1.1);
SignalEvent(oCaster, EventSpellCastAt(OBJECT_SELF, SPELL_BLESS, FALSE));
effect eBuff = EffectAttackIncrease(3, ATTACK_BONUS_MISC);
effect eAC = EffectACIncrease(2);
effect eDama = EffectDamageIncrease(DAMAGE_BONUS_4, DAMAGE_TYPE_DIVINE);
effect eVis = EffectVisualEffect(VFX_IMP_SUPER_HEROISM, FALSE);
effect eVis2 = EffectVisualEffect(VFX_IMP_HOLY_AID, FALSE);
eLink = EffectLinkEffects(eBuff, eAC);
eLink = EffectLinkEffects(eLink, eDama);
eLink = ExtraordinaryEffect(eLink);
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oCaster, RoundsToSeconds(20)));
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oCaster));
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis2, oCaster));
DelayCommand(fDelay, FloatingTextStringOnCreature("*Casts Harpic Heroism*", oCaster, FALSE));
}
}