Initial upload
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.
This commit is contained in:
78
_removed/nw_s0_evardsc.nss
Normal file
78
_removed/nw_s0_evardsc.nss
Normal file
@@ -0,0 +1,78 @@
|
||||
///::///////////////////////////////////////////////
|
||||
//:: Evards Black Tentacles: Heartbeat
|
||||
//:: NW_S0_EvardsB
|
||||
//:: Copyright (c) 2001 Bioware Corp.
|
||||
//:://////////////////////////////////////////////
|
||||
/*
|
||||
Upon entering the mass of rubbery tentacles the
|
||||
target is struck by 1d4 tentacles. Each has
|
||||
a chance to hit of 5 + 1d20. If it succeeds then
|
||||
it does 2d6 damage and the target must make
|
||||
a Fortitude Save versus paralysis or be paralyzed
|
||||
for 1 round.
|
||||
*/
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Preston Watamaniuk
|
||||
//:: Created On: Nov 23, 2001
|
||||
//:://////////////////////////////////////////////
|
||||
//:: GZ: Removed SR, its not there by the book
|
||||
|
||||
|
||||
#include "X0_I0_SPELLS"
|
||||
#include "x2_inc_spellhook"
|
||||
|
||||
void main()
|
||||
{
|
||||
|
||||
object oTarget;
|
||||
effect eParal = EffectParalyze();
|
||||
effect eDur = EffectVisualEffect(VFX_DUR_PARALYZED);
|
||||
effect eLink = EffectLinkEffects(eDur, eParal);
|
||||
effect eDam;
|
||||
|
||||
int nMetaMagic = GetMetaMagicFeat();
|
||||
int nDamage;
|
||||
int nAC = GetAC(oTarget);
|
||||
int nHits = d4();
|
||||
int nRoll;
|
||||
float fDelay;
|
||||
oTarget = GetFirstInPersistentObject();
|
||||
while(GetIsObjectValid(oTarget))
|
||||
{
|
||||
nDamage = 0;
|
||||
if (spellsIsTarget(oTarget, SPELL_TARGET_STANDARDHOSTILE, GetAreaOfEffectCreator()))
|
||||
{
|
||||
//Fire cast spell at event for the specified target
|
||||
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELL_EVARDS_BLACK_TENTACLES));
|
||||
nDamage = 0;
|
||||
for (nHits = d4(); nHits > 0; nHits--)
|
||||
{
|
||||
fDelay = GetRandomDelay(0.75, 1.5);
|
||||
nRoll = 5 + d20();
|
||||
if(nRoll >= nAC)
|
||||
{
|
||||
nDamage = nDamage + d6();
|
||||
//Enter Metamagic conditions
|
||||
if (nMetaMagic == METAMAGIC_MAXIMIZE)
|
||||
{
|
||||
nDamage = 12;//Damage is at max
|
||||
}
|
||||
else if (nMetaMagic == METAMAGIC_EMPOWER)
|
||||
{
|
||||
nDamage = nDamage + (nDamage/2); //Damage/Healing is +50%
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(nDamage > 0)
|
||||
{
|
||||
eDam = EffectDamage(nDamage, DAMAGE_TYPE_BLUDGEONING, DAMAGE_POWER_PLUS_TWO);
|
||||
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget));
|
||||
if(!MySavingThrow(SAVING_THROW_FORT, oTarget, GetSpellSaveDC(), SAVING_THROW_TYPE_NONE, OBJECT_SELF, fDelay))
|
||||
{
|
||||
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(1)));
|
||||
}
|
||||
}
|
||||
oTarget = GetNextInPersistentObject();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user