Initial upload. PRC8 has been added. Module compiles, PRC's default AI & treasure scripts have been integrated. Started work on top hak for SLA / Ability / Scripting modifications.
56 lines
2.0 KiB
Plaintext
56 lines
2.0 KiB
Plaintext
//::///////////////////////////////////////////////
|
|
//:: Time Stop
|
|
//:: NW_S0_TimeStop.nss
|
|
//:: Copyright (c) 2001 Bioware Corp.
|
|
//:://////////////////////////////////////////////
|
|
/*
|
|
All persons in the Area are frozen in time
|
|
except the caster.
|
|
*/
|
|
//:://////////////////////////////////////////////
|
|
//:: Created By: Preston Watamaniuk
|
|
//:: Created On: Jan 7, 2002
|
|
//:://////////////////////////////////////////////
|
|
|
|
|
|
void main()
|
|
{
|
|
|
|
|
|
effect eLink = EffectKnockdown();
|
|
|
|
int nDuration = 2;
|
|
effect eHowl = EffectMovementSpeedDecrease(100);
|
|
eHowl=EffectLinkEffects(EffectAttackDecrease(100),eHowl);
|
|
eHowl=EffectLinkEffects(EffectSlow(),eHowl);
|
|
eHowl=ExtraordinaryEffect(eHowl);
|
|
effect ePara=EffectParalyze();
|
|
ePara=ExtraordinaryEffect(ePara);
|
|
effect eHold=EffectStunned();
|
|
eHold=ExtraordinaryEffect(eHold);
|
|
effect eDazed=EffectDazed();
|
|
eDazed=ExtraordinaryEffect(eDazed);
|
|
//Get first target in spell area
|
|
object oTarget = GetFirstObjectInShape(SHAPE_SPHERE, 40.0, GetLocation(OBJECT_SELF));
|
|
while(GetIsObjectValid(oTarget))
|
|
{
|
|
if(!GetIsReactionTypeFriendly(oTarget) && !GetIsFriend(oTarget) && oTarget != OBJECT_SELF)
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eHowl, oTarget, RoundsToSeconds(nDuration*4));
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, ePara, oTarget, RoundsToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eHold, oTarget, RoundsToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDazed, oTarget, RoundsToSeconds(nDuration));
|
|
}
|
|
//Get next target in spell area
|
|
oTarget = GetNextObjectInShape(SHAPE_SPHERE, 40.0, GetLocation(OBJECT_SELF));
|
|
}
|
|
|
|
|
|
SignalEvent(OBJECT_SELF, EventSpellCastAt(OBJECT_SELF, SPELL_TIME_STOP, FALSE));
|
|
|
|
ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY,EffectVisualEffect(VFX_FNF_TIME_STOP),GetLocation(OBJECT_SELF),19.8);
|
|
|
|
}
|