41 lines
1.3 KiB
Plaintext
41 lines
1.3 KiB
Plaintext
|
#include "NW_I0_SPELLS"
|
||
|
|
||
|
void main()
|
||
|
{
|
||
|
//Declare major variables
|
||
|
effect eCon = EffectDisease(DISEASE_RED_SLAAD_EGGS);
|
||
|
effect eTest;
|
||
|
eCon = ExtraordinaryEffect(eCon);
|
||
|
effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_NEGATIVE);
|
||
|
effect eDis = EffectVisualEffect(VFX_IMP_DISEASE_S);
|
||
|
effect eLink = EffectLinkEffects(eCon, eDur);
|
||
|
eLink = EffectLinkEffects(eDis, eDur);
|
||
|
|
||
|
//debug
|
||
|
object oCreator=GetAreaOfEffectCreator();
|
||
|
//AssignCommand(oCreator,SpeakString("I am the creator"));
|
||
|
|
||
|
|
||
|
float fDelay;
|
||
|
//Get first target in spell area
|
||
|
object oTarget = GetFirstInPersistentObject();
|
||
|
while(GetIsObjectValid(oTarget))
|
||
|
{
|
||
|
|
||
|
if(GetIsPC(oTarget)||GetIsPC(GetMaster(oTarget)))
|
||
|
{
|
||
|
//Fire cast spell at event for the specified target
|
||
|
SignalEvent(oTarget, EventSpellCastAt(GetAreaOfEffectCreator(), SPELL_CONTAGION));
|
||
|
//Make an SR Check
|
||
|
fDelay = GetRandomDelay(0.5, 2.0);
|
||
|
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_INSTANT, eCon, oTarget));
|
||
|
ApplyEffectToObject(DURATION_TYPE_PERMANENT,eCon,oTarget);
|
||
|
//signCommand(oTarget,SpeakString("resist passed"));
|
||
|
}
|
||
|
|
||
|
//Get next target in spell area
|
||
|
oTarget = GetNextInPersistentObject();
|
||
|
}
|
||
|
|
||
|
}
|