forked from Jaysyn/PRC8
33 lines
1.4 KiB
Plaintext
33 lines
1.4 KiB
Plaintext
|
|
||
|
//:////////////////////////////////////
|
||
|
//: Eye of Gruumsh - Command the Horde
|
||
|
//: Gives +2 will saves to all allied
|
||
|
//: non-good orcs and half-orcs
|
||
|
//:////////////////////////////////////
|
||
|
#include "prc_alterations"
|
||
|
#include "prc_class_const"
|
||
|
#include "prc_spell_const"
|
||
|
|
||
|
void main()
|
||
|
{
|
||
|
object oCaster = OBJECT_SELF;
|
||
|
object oTarget = GetFirstObjectInShape(SHAPE_SPHERE, RADIUS_SIZE_COLOSSAL, GetLocation(oCaster) );
|
||
|
while(GetIsObjectValid(oTarget))
|
||
|
{
|
||
|
if(oTarget != oCaster &&
|
||
|
GetIsFriend(oTarget) &&
|
||
|
MyPRCGetRacialType(oTarget) == RACIAL_TYPE_HALFORC ||
|
||
|
MyPRCGetRacialType(oTarget) == RACIAL_TYPE_HUMANOID_ORC &&
|
||
|
GetAlignmentGoodEvil(oTarget) != ALIGNMENT_GOOD &&
|
||
|
!GetHasSpellEffect(SPELL_COMMAND_THE_HORDE, oTarget) )
|
||
|
{
|
||
|
int iEOGLevel = GetLevelByClass(CLASS_TYPE_PRC_EYE_OF_GRUUMSH, oCaster);
|
||
|
effect eWill = EffectSavingThrowIncrease(SAVING_THROW_WILL, 2, SAVING_THROW_TYPE_ALL);
|
||
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eWill, oTarget, HoursToSeconds(iEOGLevel) );
|
||
|
|
||
|
effect eVis = EffectVisualEffect(VFX_IMP_WILL_SAVING_THROW_USE, FALSE);
|
||
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||
|
}
|
||
|
oTarget = GetNextObjectInShape(SHAPE_SPHERE, RADIUS_SIZE_COLOSSAL, GetLocation(oCaster) );
|
||
|
}
|
||
|
}
|