Updated Release Archive. Fixed Mage-killer prereqs. Removed old LETO & ConvoCC related files. Added organized spell scroll store. Fixed Gloura spellbook. Various TLK fixes. Reorganized Repo. Removed invalid user folders. Added DocGen back in.
49 lines
2.3 KiB
Plaintext
49 lines
2.3 KiB
Plaintext
/*
|
|
3/1/21 by Stratovarius
|
|
|
|
Fast Healing (Su): When you reach 2nd level, the irrepressible force of your soul restores your vitality whenever you are wounded, granting you fast healing at a rate equal to the points of essentia you invest in this
|
|
ability. This fast healing is usable for a number of rounds per day equal to your incandescent champion level. For example, a 5th-level incandescent champion who invests 2 points of essentia in this ability gains fast healing 2 for
|
|
a maximum of 5 rounds per day. Activating this ability requires no action, but investing essentia in it requires a swift action, as normal.
|
|
|
|
At 9th level, each ally who is adjacent to you when you activate the ability gains fast healing
|
|
*/
|
|
|
|
#include "moi_inc_moifunc"
|
|
#include "prc_inc_combat"
|
|
|
|
void main()
|
|
{
|
|
object oMeldshaper = PRCGetSpellTargetObject();
|
|
int nEssentia = GetEssentiaInvested(oMeldshaper, MELD_INCANDESCENT_HEAL);
|
|
int nClass = GetLevelByClass(CLASS_TYPE_INCANDESCENT_CHAMPION, oMeldshaper);
|
|
effect eLink;
|
|
|
|
if (nEssentia)
|
|
{
|
|
eLink = EffectLinkEffects(EffectRegenerate(nEssentia, 6.0), EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE));
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, SupernaturalEffect(eLink), oMeldshaper, RoundsToSeconds(nClass+1));
|
|
|
|
if (nClass >= 9)
|
|
{
|
|
location lTarget = GetLocation(oMeldshaper);
|
|
// Use the function to get the closest creature as a target
|
|
object oAreaTarget = MyFirstObjectInShape(SHAPE_SPHERE, RADIUS_SIZE_SMALL, lTarget, TRUE, OBJECT_TYPE_CREATURE);
|
|
while(GetIsObjectValid(oAreaTarget))
|
|
{
|
|
if(oAreaTarget != oMeldshaper && // Not you
|
|
GetIsInMeleeRange(oMeldshaper, oAreaTarget) && // They must be in melee range
|
|
GetIsFriend(oAreaTarget, oMeldshaper)) // Only allies
|
|
{
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, SupernaturalEffect(eLink), oAreaTarget, RoundsToSeconds(nClass+1));
|
|
}
|
|
//Select the next target within the spell shape.
|
|
oAreaTarget = MyNextObjectInShape(SHAPE_SPHERE, RADIUS_SIZE_SMALL, lTarget, TRUE, OBJECT_TYPE_CREATURE);
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
FloatingTextStringOnCreature("You have no essentia invested in Incandescent Healing!", oMeldshaper, FALSE);
|
|
IncrementRemainingFeatUses(oMeldshaper, 8922);
|
|
}
|
|
} |