2026/04/27 Update
Updated expanded spells & abilities. Updated PEPS. Updated Markshire Nomeclature. Full compile.
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
:loop
|
:loop
|
||||||
"C:\NWN Work\nwnsc.exe" -o -w -n "C:\Games\Steam\steamapps\common\Neverwinter Nights" -i "D:\NWN Repos\PoA_PRC8\_haks\poa_exp_abilities";"D:\NWN Repos\PRC8\nwn\nwnprc\trunk\include" "D:\NWN Repos\PoA_PRC8\_haks\poa_exp_abilities\*.nss"
|
"C:\NWN Work\nwnsc.exe" -o -w -n "C:\Games\Steam\steamapps\common\Neverwinter Nights" -i "D:\NWN Repos\PoA_PRC8\_haks\poa_exp_ability";"D:\NWN Repos\PRC8\nwn\nwnprc\trunk\include" "D:\NWN Repos\PoA_PRC8\_haks\poa_exp_ability\*.nss"
|
||||||
if %errorLevel% == -1 goto :loop
|
if %errorLevel% == -1 goto :loop
|
||||||
|
|
||||||
"C:\NWN Work\nwnsc.exe" -o -w -n "C:\Games\Steam\steamapps\common\Neverwinter Nights" -i "D:\NWN Repos\PoA_PRC8\_haks\poa_exp_spells";"D:\NWN Repos\PRC8\nwn\nwnprc\trunk\include" "D:\NWN Repos\PoA_PRC8\_haks\poa_exp_spells\*.nss"
|
"C:\NWN Work\nwnsc.exe" -o -w -n "C:\Games\Steam\steamapps\common\Neverwinter Nights" -i "D:\NWN Repos\PoA_PRC8\_haks\poa_exp_spells";"D:\NWN Repos\PRC8\nwn\nwnprc\trunk\include" "D:\NWN Repos\PoA_PRC8\_haks\poa_exp_spells\*.nss"
|
||||||
|
|||||||
Binary file not shown.
@@ -71,6 +71,7 @@ SetLocalInt(OBJECT_SELF, "X2_L_LAST_SPELLSCHOOL_VAR", SPELL_SCHOOL_NECROMANCY);
|
|||||||
//Enter Metamagic conditions
|
//Enter Metamagic conditions
|
||||||
//--------------------------------------------------------------------------
|
//--------------------------------------------------------------------------
|
||||||
nDamage = PRCMaximizeOrEmpower(6,nDDice,nMetaMagic);
|
nDamage = PRCMaximizeOrEmpower(6,nDDice,nMetaMagic);
|
||||||
|
nDamage += SpellDamagePerDice(OBJECT_SELF, nDDice);
|
||||||
int nDuration = nCasterLevel/3;
|
int nDuration = nCasterLevel/3;
|
||||||
|
|
||||||
if ((nMetaMagic & METAMAGIC_EXTEND))
|
if ((nMetaMagic & METAMAGIC_EXTEND))
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -51,7 +51,7 @@ void main()
|
|||||||
nDamage = nDamage / 2;
|
nDamage = nDamage / 2;
|
||||||
}
|
}
|
||||||
//Set the damage effect
|
//Set the damage effect
|
||||||
eDam = EffectDamage(nDamage, DAMAGE_TYPE_COLD);
|
eDam = PRCEffectDamage(oTarget, nDamage, DAMAGE_TYPE_COLD);
|
||||||
//Apply the VFX constant and damage effect
|
//Apply the VFX constant and damage effect
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
|
|||||||
Binary file not shown.
@@ -47,10 +47,10 @@ void main()
|
|||||||
{
|
{
|
||||||
nDamage = nDamage / 2;
|
nDamage = nDamage / 2;
|
||||||
}
|
}
|
||||||
eDam = EffectDamage(nDamage, DAMAGE_TYPE_ELECTRICAL);
|
eDam = PRCEffectDamage(oTarget, nDamage, DAMAGE_TYPE_ELECTRICAL);
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget));
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
|
||||||
DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget));
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
//Get next target in spell area
|
//Get next target in spell area
|
||||||
oTarget = GetNextInPersistentObject();
|
oTarget = GetNextInPersistentObject();
|
||||||
|
|||||||
Binary file not shown.
@@ -12,14 +12,30 @@
|
|||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 25, 2001
|
//:: Created On: May 25, 2001
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
|
//:: Modified By: Brian Greinke
|
||||||
|
//:: Modified On: 2004/01/30
|
||||||
|
//:: Re: Added disable/reenable support
|
||||||
|
//:://////////////////////////////////////////////
|
||||||
|
//:: Modified By: Jaysyn
|
||||||
|
//:: Modified On: 2023/02/11
|
||||||
|
//:: Re: Added PnP Aura behavior support
|
||||||
|
//:://////////////////////////////////////////////
|
||||||
|
|
||||||
// Modified 2004/01/30 (Brian Greinke)
|
// Modified 2004/01/30 (Brian Greinke)
|
||||||
// Added disable/reenable support
|
// Added disable/reenable support
|
||||||
#include "prc_alterations"
|
#include "prc_alterations"
|
||||||
|
#include "utl_i_sqluuid"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
{
|
{
|
||||||
//first, look to see if effect is already activated
|
//:: Declare major variables
|
||||||
|
object oMob = GetAreaOfEffectCreator();
|
||||||
|
|
||||||
|
int bPNPAuras = GetPRCSwitch(PRC_PNP_FEAR_AURAS);
|
||||||
|
|
||||||
|
string sMobUUID = GetObjectUUID(oMob);
|
||||||
|
|
||||||
|
//first, look to see if effect is already activated
|
||||||
if ( GetHasSpellEffect(SPELLABILITY_AURA_FEAR, OBJECT_SELF) )
|
if ( GetHasSpellEffect(SPELLABILITY_AURA_FEAR, OBJECT_SELF) )
|
||||||
{
|
{
|
||||||
PRCRemoveSpellEffects( SPELLABILITY_AURA_FEAR, OBJECT_SELF, OBJECT_SELF );
|
PRCRemoveSpellEffects( SPELLABILITY_AURA_FEAR, OBJECT_SELF, OBJECT_SELF );
|
||||||
@@ -58,5 +74,5 @@ if(GetLocalInt(GetArea(oCaster), "JAIL")==1)
|
|||||||
|
|
||||||
//Set and apply AOE object
|
//Set and apply AOE object
|
||||||
effect eAOE = EffectAreaOfEffect(AOE_MOB_FEAR);
|
effect eAOE = EffectAreaOfEffect(AOE_MOB_FEAR);
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eAOE, OBJECT_SELF, HoursToSeconds(100));
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eAOE, OBJECT_SELF, HoursToSeconds(100));
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -49,9 +49,9 @@ void main()
|
|||||||
nDamage = nDamage / 2;
|
nDamage = nDamage / 2;
|
||||||
}
|
}
|
||||||
//Set the damage effect
|
//Set the damage effect
|
||||||
eDam = EffectDamage(nDamage, DAMAGE_TYPE_FIRE);
|
eDam = PRCEffectDamage(oTarget, nDamage, DAMAGE_TYPE_FIRE);
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
|
||||||
}
|
}
|
||||||
//Get next target in spell area
|
//Get next target in spell area
|
||||||
oTarget = GetNextInPersistentObject();
|
oTarget = GetNextInPersistentObject();
|
||||||
|
|||||||
Binary file not shown.
@@ -26,8 +26,7 @@ void main()
|
|||||||
int nDuration = 1 + (GetHitDice(oNPC)/3);
|
int nDuration = 1 + (GetHitDice(oNPC)/3);
|
||||||
int nCHAMod = GetAbilityModifier(ABILITY_CHARISMA, oNPC);
|
int nCHAMod = GetAbilityModifier(ABILITY_CHARISMA, oNPC);
|
||||||
int nDC = 10 +nCHAMod+ (GetHitDice(oNPC)/2);
|
int nDC = 10 +nCHAMod+ (GetHitDice(oNPC)/2);
|
||||||
int nLevel = GetCasterLevel(OBJECT_SELF);
|
int nLevel = PRCGetCasterLevel(OBJECT_SELF);
|
||||||
int nMetaMagic = PRCGetMetaMagicFeat();
|
|
||||||
|
|
||||||
effect eVis = EffectVisualEffect(VFX_IMP_DOOM);
|
effect eVis = EffectVisualEffect(VFX_IMP_DOOM);
|
||||||
effect eLink = CreateDoomEffectsLink();
|
effect eLink = CreateDoomEffectsLink();
|
||||||
@@ -39,8 +38,8 @@ void main()
|
|||||||
//Spell Resistance and Saving throw
|
//Spell Resistance and Saving throw
|
||||||
if (!/*Will Save*/ PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC))
|
if (!/*Will Save*/ PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC))
|
||||||
{
|
{
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink , oTarget, TurnsToSeconds(nDuration));
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink , oTarget, TurnsToSeconds(nDuration));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -12,12 +12,12 @@
|
|||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On:Jan 8, 2002, 2001
|
//:: Created On:Jan 8, 2002, 2001
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
#include "prc_inc_spells"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
void main()
|
void main()
|
||||||
{
|
{
|
||||||
//Declare major variables
|
//Declare major variables
|
||||||
effect eProt = CreateProtectionFromAlignmentLink(ALIGNMENT_EVIL);
|
effect eProt = PRCCreateProtectionFromAlignmentLink(ALIGNMENT_EVIL);
|
||||||
effect eGlobe = EffectSpellLevelAbsorption(3, 0);
|
effect eGlobe = EffectSpellLevelAbsorption(3, 0);
|
||||||
effect eDur = EffectVisualEffect(VFX_DUR_GLOBE_MINOR);
|
effect eDur = EffectVisualEffect(VFX_DUR_GLOBE_MINOR);
|
||||||
|
|
||||||
@@ -30,6 +30,6 @@ void main()
|
|||||||
if(GetIsFriend(oTarget, GetAreaOfEffectCreator()))
|
if(GetIsFriend(oTarget, GetAreaOfEffectCreator()))
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eLink, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_PERMANENT, eLink, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -41,8 +41,8 @@ void main()
|
|||||||
if(!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_MIND_SPELLS))
|
if(!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_MIND_SPELLS))
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nDuration));
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nDuration));
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Binary file not shown.
@@ -27,7 +27,7 @@ void main()
|
|||||||
|
|
||||||
int nDuration = GetHitDice(oNPC);
|
int nDuration = GetHitDice(oNPC);
|
||||||
int nCHAMod = GetAbilityModifier(ABILITY_CHARISMA, oNPC);
|
int nCHAMod = GetAbilityModifier(ABILITY_CHARISMA, oNPC);
|
||||||
int nRacial = GetRacialType(oTarget);
|
int nRacial = MyPRCGetRacialType(oTarget);
|
||||||
int nDC = 10 + nCHAMod + (GetHitDice(oNPC)/2);
|
int nDC = 10 + nCHAMod + (GetHitDice(oNPC)/2);
|
||||||
|
|
||||||
if(GetIsEnemy(oTarget))
|
if(GetIsEnemy(oTarget))
|
||||||
@@ -41,7 +41,7 @@ void main()
|
|||||||
//if (!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_FEAR)) //:: This ability only affects animals & they don't get a save.
|
//if (!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_FEAR)) //:: This ability only affects animals & they don't get a save.
|
||||||
//{
|
//{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nDuration));
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nDuration));
|
||||||
//}
|
//}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -39,7 +39,7 @@ void main()
|
|||||||
if(!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_DEATH))
|
if(!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_DEATH))
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eDeath, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eDeath, oTarget);
|
||||||
//ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
//ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -326,7 +326,7 @@ void main()
|
|||||||
else if (nFrost>0)
|
else if (nFrost>0)
|
||||||
FloatingTextStringOnCreature("Frostrage failed, invalid weapon", oPC, FALSE);
|
FloatingTextStringOnCreature("Frostrage failed, invalid weapon", oPC, FALSE);
|
||||||
|
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and the actual rage effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oPC, fDuration);
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oPC, fDuration);
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oPC);
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oPC);
|
||||||
|
|
||||||
@@ -434,6 +434,12 @@ void main()
|
|||||||
// to determine what the ability scores become after adding the bonuses to them.
|
// to determine what the ability scores become after adding the bonuses to them.
|
||||||
DelayCommand(0.1, GiveExtraRageBonuses(nCon, StrBeforeBonuses, ConBeforeBonuses, iStr, iCon, nSave, DAMAGE_TYPE_BASE_WEAPON, oPC));
|
DelayCommand(0.1, GiveExtraRageBonuses(nCon, StrBeforeBonuses, ConBeforeBonuses, iStr, iCon, nSave, DAMAGE_TYPE_BASE_WEAPON, oPC));
|
||||||
|
|
||||||
|
if(GetLevelByClass(CLASS_TYPE_FORSAKER, oPC) >= 3) //Run feat script if Forsaker lvl3 to increase AC based on CON, then decrease again after it ends
|
||||||
|
{
|
||||||
|
ExecuteScript("prc_forsaker", oPC);
|
||||||
|
DelayCommand(fDuration + 0.1, ExecuteScript("prc_forsaker", oPC));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -5,13 +5,13 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Reflex or Will save is
|
the intended target.
|
||||||
needed to halve damage or avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
#include "NW_I0_SPELLS"
|
#include "NW_I0_SPELLS"
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
@@ -44,10 +44,9 @@ void main()
|
|||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_ACID));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_ACID));
|
||||||
|
|
||||||
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
||||||
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC,SAVING_THROW_TYPE_ACID);
|
//nDamage = GetReflexAdjustedDamage(nDamage, oTarget, nDC,SAVING_THROW_TYPE_ACID);
|
||||||
|
|
||||||
//Make a ranged touch attack
|
//Make a ranged touch attack
|
||||||
int nTouch = TouchAttackRanged(oTarget);
|
int nTouch = PRCDoRangedTouchAttack(oTarget);
|
||||||
if(nTouch > 0)
|
if(nTouch > 0)
|
||||||
{
|
{
|
||||||
if(nTouch == 2)
|
if(nTouch == 2)
|
||||||
@@ -59,8 +58,8 @@ void main()
|
|||||||
if(nDamage > 0)
|
if(nDamage > 0)
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -5,16 +5,17 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Reflex or Will save is
|
the intended target.
|
||||||
needed to halve damage or avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
#include "NW_I0_SPELLS"
|
#include "NW_I0_SPELLS"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
void main()
|
void main()
|
||||||
{
|
{
|
||||||
//if (WildMagicOverride()) { return; }
|
//if (WildMagicOverride()) { return; }
|
||||||
@@ -35,13 +36,15 @@ void main()
|
|||||||
effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_NEGATIVE);
|
effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_NEGATIVE);
|
||||||
effect eLink = EffectLinkEffects(eBolt, eDur);
|
effect eLink = EffectLinkEffects(eBolt, eDur);
|
||||||
|
|
||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_CHARM));
|
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELLABILITY_BOLT_CHARM));
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!/*Will Save*/ PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_MIND_SPELLS) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
||||||
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Binary file not shown.
@@ -5,15 +5,16 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Fortitude save is
|
the intended target.
|
||||||
needed to avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
#include "NW_I0_SPELLS"
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -37,12 +38,12 @@ void main()
|
|||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELLABILITY_BOLT_ABILITY_DRAIN_CHARISMA));
|
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELLABILITY_BOLT_ABILITY_DRAIN_CHARISMA));
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!/*Fort Save*/ PRCMySavingThrow(SAVING_THROW_FORT, oTarget, nDC, SAVING_THROW_TYPE_NEGATIVE) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
eBolt = EffectAbilityDecrease(ABILITY_CHARISMA, nCount);
|
eBolt = EffectAbilityDecrease(ABILITY_CHARISMA, nCount);
|
||||||
eBolt = SupernaturalEffect(eBolt);
|
eBolt = SupernaturalEffect(eBolt);
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget, RoundsToSeconds(nHD));
|
SPApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget, RoundsToSeconds(nHD));
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -5,16 +5,17 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Reflex or Will save is
|
the intended target.
|
||||||
needed to halve damage or avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
#include "NW_I0_SPELLS"
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
{
|
{
|
||||||
@@ -41,7 +42,7 @@ void main()
|
|||||||
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC,SAVING_THROW_TYPE_COLD);
|
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC,SAVING_THROW_TYPE_COLD);
|
||||||
|
|
||||||
//Make a ranged touch attack
|
//Make a ranged touch attack
|
||||||
int nTouch = TouchAttackRanged(oTarget);
|
int nTouch = PRCDoRangedTouchAttack(oTarget);
|
||||||
if(nTouch > 0)
|
if(nTouch > 0)
|
||||||
{
|
{
|
||||||
if(nTouch == 2)
|
if(nTouch == 2)
|
||||||
@@ -53,8 +54,8 @@ void main()
|
|||||||
if(nDamage > 0)
|
if(nDamage > 0)
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -5,15 +5,16 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Fort save is
|
the intended target.
|
||||||
needed to avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -37,12 +38,12 @@ void main()
|
|||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_ABILITY_DRAIN_CONSTITUTION));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_ABILITY_DRAIN_CONSTITUTION));
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!/*Fort Save*/ PRCMySavingThrow(SAVING_THROW_FORT, oTarget, nDC, SAVING_THROW_TYPE_NEGATIVE) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
eBolt = EffectAbilityDecrease(ABILITY_CONSTITUTION, nCount);
|
eBolt = EffectAbilityDecrease(ABILITY_CONSTITUTION, nCount);
|
||||||
eBolt = SupernaturalEffect(eBolt);
|
eBolt = SupernaturalEffect(eBolt);
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget, RoundsToSeconds(nHD));
|
SPApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget, RoundsToSeconds(nHD));
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -5,16 +5,18 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Reflex or Will save is
|
the intended target.
|
||||||
needed to halve damage or avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
//#include "wm_include"
|
#include "prc_inc_sp_tch"
|
||||||
#include "NW_I0_SPELLS"
|
#include "NW_I0_SPELLS"
|
||||||
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
{
|
{
|
||||||
//if (WildMagicOverride()) { return; }
|
//if (WildMagicOverride()) { return; }
|
||||||
@@ -37,12 +39,12 @@ void main()
|
|||||||
eLink = EffectLinkEffects(eLink, eVis);
|
eLink = EffectLinkEffects(eLink, eVis);
|
||||||
|
|
||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_CONFUSE));
|
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELLABILITY_BOLT_CONFUSE));
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_MIND_SPELLS) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis2, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis2, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Binary file not shown.
@@ -5,14 +5,15 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Reflex or Will save is
|
the intended target.
|
||||||
needed to halve damage or avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
#include "NW_I0_SPELLS"
|
#include "NW_I0_SPELLS"
|
||||||
void main()
|
void main()
|
||||||
@@ -39,9 +40,9 @@ void main()
|
|||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_DAZE));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_DAZE));
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!/*Will Save*/ PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_MIND_SPELLS) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -5,15 +5,16 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Reflex or Will save is
|
the intended target.
|
||||||
needed to halve damage or avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -34,14 +35,11 @@ void main()
|
|||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_DEATH));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_DEATH));
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if(TouchAttackRanged(oTarget))
|
if(PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
if(!PRCMySavingThrow(SAVING_THROW_FORT, oTarget, nDC, SAVING_THROW_TYPE_DEATH))
|
|
||||||
{
|
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
|
||||||
//ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
//ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -5,15 +5,16 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Fort save is
|
the intended target.
|
||||||
needed to avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -37,12 +38,12 @@ void main()
|
|||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_ABILITY_DRAIN_DEXTERITY));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_ABILITY_DRAIN_DEXTERITY));
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!/*Fort Save*/ PRCMySavingThrow(SAVING_THROW_FORT, oTarget, nDC, SAVING_THROW_TYPE_NEGATIVE) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
eBolt = EffectAbilityDecrease(ABILITY_DEXTERITY, nCount);
|
eBolt = EffectAbilityDecrease(ABILITY_DEXTERITY, nCount);
|
||||||
eBolt = SupernaturalEffect(eBolt);
|
eBolt = SupernaturalEffect(eBolt);
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget, RoundsToSeconds(nHD));
|
SPApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget, RoundsToSeconds(nHD));
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -12,9 +12,11 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -65,9 +67,9 @@ void main()
|
|||||||
//Assign effect and chosen disease
|
//Assign effect and chosen disease
|
||||||
effect eBolt = EffectDisease(nDisease);
|
effect eBolt = EffectDisease(nDisease);
|
||||||
//Make the ranged touch attack.
|
//Make the ranged touch attack.
|
||||||
if (TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -5,15 +5,16 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Reflex or Will save is
|
the intended target.
|
||||||
needed to halve damage or avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -44,10 +45,10 @@ void main()
|
|||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_DOMINATE));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_DOMINATE));
|
||||||
|
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_MIND_SPELLS) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -11,9 +11,11 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -37,9 +39,9 @@ void main()
|
|||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_FIRE));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_FIRE));
|
||||||
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
||||||
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC,SAVING_THROW_TYPE_FIRE);
|
//nDamage = GetReflexAdjustedDamage(nDamage, oTarget, nDC,SAVING_THROW_TYPE_FIRE);
|
||||||
//Make a ranged touch attack
|
//Make a ranged touch attack
|
||||||
int nTouch = TouchAttackRanged(oTarget);
|
int nTouch = PRCDoRangedTouchAttack(oTarget);
|
||||||
if(nTouch > 0)
|
if(nTouch > 0)
|
||||||
{
|
{
|
||||||
if(nTouch == 2)
|
if(nTouch == 2)
|
||||||
@@ -47,12 +49,12 @@ void main()
|
|||||||
nDamage *= 2;
|
nDamage *= 2;
|
||||||
}
|
}
|
||||||
//Set damage effect
|
//Set damage effect
|
||||||
eBolt = EffectDamage(nDamage, DAMAGE_TYPE_FIRE);
|
eBolt = PRCEffectDamage(oTarget, nDamage, DAMAGE_TYPE_FIRE);
|
||||||
if(nDamage > 0)
|
if(nDamage > 0)
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -5,15 +5,16 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Reflex or Will save is
|
the intended target.
|
||||||
needed to halve damage or avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -37,12 +38,12 @@ void main()
|
|||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_ABILITY_DRAIN_INTELLIGENCE));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_ABILITY_DRAIN_INTELLIGENCE));
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!/*Fort Save*/ PRCMySavingThrow(SAVING_THROW_FORT, oTarget, nDC, SAVING_THROW_TYPE_NEGATIVE) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
eBolt = EffectAbilityDecrease(ABILITY_INTELLIGENCE, nCount);
|
eBolt = EffectAbilityDecrease(ABILITY_INTELLIGENCE, nCount);
|
||||||
eBolt = SupernaturalEffect(eBolt);
|
eBolt = SupernaturalEffect(eBolt);
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget, RoundsToSeconds(nHD));
|
SPApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget, RoundsToSeconds(nHD));
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -5,15 +5,16 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Reflex or Will save is
|
the intended target.
|
||||||
needed to halve damage or avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -41,8 +42,8 @@ void main()
|
|||||||
if (!/*Reflex Save*/ PRCMySavingThrow(SAVING_THROW_REFLEX, oTarget, nDC) && TouchAttackRanged(oTarget))
|
if (!/*Reflex Save*/ PRCMySavingThrow(SAVING_THROW_REFLEX, oTarget, nDC) && TouchAttackRanged(oTarget))
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eBolt, oTarget, RoundsToSeconds(3));
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eBolt, oTarget, RoundsToSeconds(3));
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -4,15 +4,16 @@
|
|||||||
//:: Copyright (c) 2001 Bioware Corp.
|
//:: Copyright (c) 2001 Bioware Corp.
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Does 1d6 per level to a single target. Reflex
|
Does 1d6 per level to a single target.
|
||||||
save for half
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: Aug 10, 2001
|
//:: Created On: Aug 10, 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -37,9 +38,9 @@ void main()
|
|||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELLABILITY_BOLT_LIGHTNING));
|
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELLABILITY_BOLT_LIGHTNING));
|
||||||
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
||||||
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC,SAVING_THROW_TYPE_ELECTRICITY);
|
//nDamage = GetReflexAdjustedDamage(nDamage, oTarget, nDC,SAVING_THROW_TYPE_ELECTRICITY);
|
||||||
//Make a ranged touch attack
|
//Make a ranged touch attack
|
||||||
int nTouch = TouchAttackRanged(oTarget);
|
int nTouch = PRCDoRangedTouchAttack(oTarget);
|
||||||
if(nTouch > 0)
|
if(nTouch > 0)
|
||||||
{
|
{
|
||||||
if(nTouch == 2)
|
if(nTouch == 2)
|
||||||
@@ -47,13 +48,11 @@ void main()
|
|||||||
nDamage *= 2;
|
nDamage *= 2;
|
||||||
}
|
}
|
||||||
//Set damage effect
|
//Set damage effect
|
||||||
eBolt = EffectDamage(nDamage, DAMAGE_TYPE_ELECTRICAL);
|
eBolt = PRCEffectDamage(oTarget, nDamage, DAMAGE_TYPE_ELECTRICAL);
|
||||||
if(nDamage > 0)
|
if(nDamage > 0)
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLightning, oTarget, 1.7);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -5,15 +5,16 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Reflex or Will save is
|
the intended target.
|
||||||
needed to halve damage or avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -38,12 +39,12 @@ void main()
|
|||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_LEVEL_DRAIN));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_LEVEL_DRAIN));
|
||||||
|
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!/*Fort Save*/ PRCMySavingThrow(SAVING_THROW_FORT, oTarget, nDC, SAVING_THROW_TYPE_NEGATIVE) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
//eBolt = LEVEL DRAIN EFFECT
|
//eBolt = LEVEL DRAIN EFFECT
|
||||||
eBolt = SupernaturalEffect(eBolt);
|
eBolt = SupernaturalEffect(eBolt);
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget);
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -5,15 +5,16 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Reflex or Will save is
|
the intended target.
|
||||||
needed to halve damage or avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -40,9 +41,9 @@ void main()
|
|||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_PARALYZE));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_PARALYZE));
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -12,8 +12,9 @@
|
|||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 22, 2001
|
//:: Created On: May 22, 2001
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -34,6 +35,7 @@ void main()
|
|||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_POISON));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_POISON));
|
||||||
|
|
||||||
//Determine the poison type based on the Racial Type and HD
|
//Determine the poison type based on the Racial Type and HD
|
||||||
|
// June 3/04: Bugfix for some screwy if statements.
|
||||||
switch (nRacial)
|
switch (nRacial)
|
||||||
{
|
{
|
||||||
case RACIAL_TYPE_OUTSIDER:
|
case RACIAL_TYPE_OUTSIDER:
|
||||||
@@ -41,11 +43,11 @@ void main()
|
|||||||
{
|
{
|
||||||
nPoison = POISON_QUASIT_VENOM;
|
nPoison = POISON_QUASIT_VENOM;
|
||||||
}
|
}
|
||||||
else if (nHD > 9 && nHD < 13)
|
else if (nHD < 13)
|
||||||
{
|
{
|
||||||
nPoison = POISON_BEBILITH_VENOM;
|
nPoison = POISON_BEBILITH_VENOM;
|
||||||
}
|
}
|
||||||
else if (nHD >= 13)
|
else //if (nHD >= 13) //if statement not actually needed...
|
||||||
{
|
{
|
||||||
nPoison = POISON_PIT_FIEND_ICHOR;
|
nPoison = POISON_PIT_FIEND_ICHOR;
|
||||||
}
|
}
|
||||||
@@ -55,27 +57,27 @@ void main()
|
|||||||
{
|
{
|
||||||
nPoison = POISON_TINY_SPIDER_VENOM;
|
nPoison = POISON_TINY_SPIDER_VENOM;
|
||||||
}
|
}
|
||||||
else if (nHD <= 3 && nHD < 6)
|
else if (nHD < 6)
|
||||||
{
|
{
|
||||||
nPoison = POISON_SMALL_SPIDER_VENOM;
|
nPoison = POISON_SMALL_SPIDER_VENOM;
|
||||||
}
|
}
|
||||||
else if (nHD <= 6 && nHD < 9)
|
else if (nHD < 9)
|
||||||
{
|
{
|
||||||
nPoison = POISON_MEDIUM_SPIDER_VENOM;
|
nPoison = POISON_MEDIUM_SPIDER_VENOM;
|
||||||
}
|
}
|
||||||
else if (nHD <= 9 && nHD < 12)
|
else if (nHD < 12)
|
||||||
{
|
{
|
||||||
nPoison = POISON_LARGE_SPIDER_VENOM;
|
nPoison = POISON_LARGE_SPIDER_VENOM;
|
||||||
}
|
}
|
||||||
else if (nHD <= 12 && nHD < 15)
|
else if (nHD < 15)
|
||||||
{
|
{
|
||||||
nPoison = POISON_HUGE_SPIDER_VENOM;
|
nPoison = POISON_HUGE_SPIDER_VENOM;
|
||||||
}
|
}
|
||||||
else if (nHD <= 15 && nHD < 18)
|
else if (nHD < 18)
|
||||||
{
|
{
|
||||||
nPoison = POISON_GARGANTUAN_SPIDER_VENOM;
|
nPoison = POISON_GARGANTUAN_SPIDER_VENOM;
|
||||||
}
|
}
|
||||||
else if (nHD >= 18)
|
else //if (nHD >= 18)
|
||||||
{
|
{
|
||||||
nPoison = POISON_COLOSSAL_SPIDER_VENOM;
|
nPoison = POISON_COLOSSAL_SPIDER_VENOM;
|
||||||
}
|
}
|
||||||
@@ -85,27 +87,27 @@ void main()
|
|||||||
{
|
{
|
||||||
nPoison = POISON_NIGHTSHADE;
|
nPoison = POISON_NIGHTSHADE;
|
||||||
}
|
}
|
||||||
else if (nHD <= 3 && nHD < 6)
|
else if (nHD < 6)
|
||||||
{
|
{
|
||||||
nPoison = POISON_BLADE_BANE;
|
nPoison = POISON_BLADE_BANE;
|
||||||
}
|
}
|
||||||
else if (nHD <= 6 && nHD < 9)
|
else if (nHD < 9)
|
||||||
{
|
{
|
||||||
nPoison = POISON_BLOODROOT;
|
nPoison = POISON_BLOODROOT;
|
||||||
}
|
}
|
||||||
else if (nHD <= 9 && nHD < 12)
|
else if (nHD < 12)
|
||||||
{
|
{
|
||||||
nPoison = POISON_LARGE_SPIDER_VENOM;
|
nPoison = POISON_LARGE_SPIDER_VENOM;
|
||||||
}
|
}
|
||||||
else if (nHD <= 12 && nHD < 15)
|
else if (nHD < 15)
|
||||||
{
|
{
|
||||||
nPoison = POISON_LICH_DUST;
|
nPoison = POISON_LICH_DUST;
|
||||||
}
|
}
|
||||||
else if (nHD <= 15 && nHD < 18)
|
else if (nHD < 18)
|
||||||
{
|
{
|
||||||
nPoison = POISON_DARK_REAVER_POWDER;
|
nPoison = POISON_DARK_REAVER_POWDER;
|
||||||
}
|
}
|
||||||
else if (nHD >= 18 )
|
else //if (nHD >= 18 )
|
||||||
{
|
{
|
||||||
nPoison = POISON_BLACK_LOTUS_EXTRACT;
|
nPoison = POISON_BLACK_LOTUS_EXTRACT;
|
||||||
}
|
}
|
||||||
@@ -113,11 +115,11 @@ void main()
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
//Make a ranged touch attack
|
//Make a ranged touch attack
|
||||||
if (TouchAttackRanged (oTarget))
|
if (PRCDoRangedTouchAttack (oTarget))
|
||||||
{
|
{
|
||||||
ePoison = EffectPoison(nPoison);
|
ePoison = EffectPoison(nPoison);
|
||||||
//Apply effects
|
//Apply effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, ePoison, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_PERMANENT, ePoison, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -5,15 +5,16 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Reflex or Will save is
|
the intended target.
|
||||||
needed to halve damage or avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -37,10 +38,9 @@ void main()
|
|||||||
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELLABILITY_BOLT_SHARDS));
|
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELLABILITY_BOLT_SHARDS));
|
||||||
|
|
||||||
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
||||||
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC);
|
//nDamage = GetReflexAdjustedDamage(nDamage, oTarget, nDC);
|
||||||
|
|
||||||
//Make a ranged touch attack
|
//Make a ranged touch attack
|
||||||
int nTouch = TouchAttackRanged(oTarget);
|
int nTouch = PRCDoRangedTouchAttack(oTarget);
|
||||||
if(nTouch > 0)
|
if(nTouch > 0)
|
||||||
{
|
{
|
||||||
if(nTouch == 2)
|
if(nTouch == 2)
|
||||||
@@ -52,7 +52,7 @@ void main()
|
|||||||
if(nDamage > 0)
|
if(nDamage > 0)
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -5,15 +5,16 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Reflex save is
|
the intended target.
|
||||||
needed to or avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: June 18 , 2001
|
//:: Created On: June 18 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -38,10 +39,10 @@ void main()
|
|||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_SLOW));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_SLOW));
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!/*Will Save*/ PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_MIND_SPELLS) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -5,15 +5,16 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Fort save is
|
the intended target.
|
||||||
needed to avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -37,12 +38,12 @@ void main()
|
|||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELLABILITY_BOLT_ABILITY_DRAIN_STRENGTH));
|
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELLABILITY_BOLT_ABILITY_DRAIN_STRENGTH));
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!/*Fort Save*/ PRCMySavingThrow(SAVING_THROW_FORT, oTarget, nDC, SAVING_THROW_TYPE_NEGATIVE) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
eBolt = EffectAbilityDecrease(ABILITY_STRENGTH, nCount);
|
eBolt = EffectAbilityDecrease(ABILITY_STRENGTH, nCount);
|
||||||
eBolt = SupernaturalEffect(eBolt);
|
eBolt = SupernaturalEffect(eBolt);
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget, RoundsToSeconds(nHD));
|
SPApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget);
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Binary file not shown.
@@ -5,15 +5,16 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Reflex or Will save is
|
the intended target.
|
||||||
needed to halve damage or avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -41,10 +42,10 @@ void main()
|
|||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_STUN));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_STUN));
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!/*Will Save*/ PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_MIND_SPELLS) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -10,9 +10,12 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: Jan 28, 2002
|
//:: Created On: Jan 28, 2002
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
|
#include "x2_inc_switches"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -36,9 +39,12 @@ void main()
|
|||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_WEB));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_WEB));
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!PRCMySavingThrow(SAVING_THROW_REFLEX, oTarget, nDC) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
if( !GetHasFeat(FEAT_WOODLAND_STRIDE, oTarget) && GetCreatureFlag(OBJECT_SELF, CREATURE_VAR_IS_INCORPOREAL) != TRUE )
|
||||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
{
|
||||||
|
//Apply the VFX impact and effects
|
||||||
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nCount));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -5,15 +5,16 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
/*
|
/*
|
||||||
Creature must make a ranged touch attack to hit
|
Creature must make a ranged touch attack to hit
|
||||||
the intended target. Fort save is
|
the intended target.
|
||||||
needed to avoid effect.
|
|
||||||
*/
|
*/
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11 , 2001
|
//:: Created On: May 11 , 2001
|
||||||
|
//:: Updated On: July 15, 2003 Georg Zoeller - Removed saving throws
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_inc_sp_tch"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -37,12 +38,12 @@ void main()
|
|||||||
//Fire cast spell at event for the specified target
|
//Fire cast spell at event for the specified target
|
||||||
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_ABILITY_DRAIN_WISDOM));
|
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_ABILITY_DRAIN_WISDOM));
|
||||||
//Make a saving throw check
|
//Make a saving throw check
|
||||||
if (!/*Fort Save*/ PRCMySavingThrow(SAVING_THROW_FORT, oTarget, nDC, SAVING_THROW_TYPE_NEGATIVE) && TouchAttackRanged(oTarget))
|
if (PRCDoRangedTouchAttack(oTarget))
|
||||||
{
|
{
|
||||||
eBolt = EffectAbilityDecrease(ABILITY_WISDOM, nCount);
|
eBolt = EffectAbilityDecrease(ABILITY_WISDOM, nCount);
|
||||||
eBolt = SupernaturalEffect(eBolt);
|
eBolt = SupernaturalEffect(eBolt);
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_PERMANENT, eBolt, oTarget);
|
||||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
@@ -12,8 +12,8 @@
|
|||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11, 2001
|
//:: Created On: May 11, 2001
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -36,14 +36,12 @@ void main()
|
|||||||
{
|
{
|
||||||
nLoop = 1;
|
nLoop = 1;
|
||||||
}
|
}
|
||||||
|
//Calculate the damage
|
||||||
//Calculate the damage
|
|
||||||
for (nLoop; nLoop > 0; nLoop--)
|
for (nLoop; nLoop > 0; nLoop--)
|
||||||
{
|
{
|
||||||
nDamage = nDamage + d6(2);
|
nDamage = nDamage + d6(2);
|
||||||
}
|
}
|
||||||
location lTargetLocation = GetSpellTargetLocation();
|
location lTargetLocation = PRCGetSpellTargetLocation();
|
||||||
|
|
||||||
effect eCone;
|
effect eCone;
|
||||||
effect eVis = EffectVisualEffect(VFX_IMP_ACID_S);
|
effect eVis = EffectVisualEffect(VFX_IMP_ACID_S);
|
||||||
|
|
||||||
@@ -60,7 +58,7 @@ void main()
|
|||||||
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
||||||
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC, SAVING_THROW_TYPE_ACID);
|
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC, SAVING_THROW_TYPE_ACID);
|
||||||
//Set damage effect
|
//Set damage effect
|
||||||
eCone = EffectDamage(nDamage, DAMAGE_TYPE_ACID);
|
eCone = PRCEffectDamage(oTarget, nDamage, DAMAGE_TYPE_ACID);
|
||||||
if(nDamage > 0)
|
if(nDamage > 0)
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
|
|||||||
Binary file not shown.
@@ -12,8 +12,8 @@
|
|||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11, 2001
|
//:: Created On: May 11, 2001
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -60,12 +60,13 @@ void main()
|
|||||||
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
||||||
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC, SAVING_THROW_TYPE_COLD);
|
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC, SAVING_THROW_TYPE_COLD);
|
||||||
//Set damage effect
|
//Set damage effect
|
||||||
eCone = EffectDamage(nDamage, DAMAGE_TYPE_COLD);
|
eCone = PRCEffectDamage(oTarget, nDamage, DAMAGE_TYPE_COLD);
|
||||||
|
|
||||||
|
DelayCommand(fDelay, SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget));
|
||||||
if(nDamage > 0)
|
if(nDamage > 0)
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget));
|
DelayCommand(fDelay, SPApplyEffectToObject(DURATION_TYPE_INSTANT, eCone, oTarget));
|
||||||
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_INSTANT, eCone, oTarget));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//Get next target in spell area
|
//Get next target in spell area
|
||||||
|
|||||||
Binary file not shown.
@@ -11,8 +11,8 @@
|
|||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 22, 2001
|
//:: Created On: May 22, 2001
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "NW_I0_SPELLS"
|
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "NW_I0_SPELLS"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -27,14 +27,13 @@ void main()
|
|||||||
int nRacial = MyPRCGetRacialType(oNPC);
|
int nRacial = MyPRCGetRacialType(oNPC);
|
||||||
int nDisease;
|
int nDisease;
|
||||||
|
|
||||||
location lTargetLocation = GetSpellTargetLocation();
|
location lTargetLocation = PRCGetSpellTargetLocation();
|
||||||
|
|
||||||
float fDelay;
|
float fDelay;
|
||||||
|
|
||||||
effect eCone = EffectDisease(nDisease);
|
effect eCone = EffectDisease(nDisease);
|
||||||
effect eVis = EffectVisualEffect(VFX_IMP_DISEASE_S);
|
effect eVis = EffectVisualEffect(VFX_IMP_DISEASE_S);
|
||||||
|
|
||||||
|
|
||||||
//Determine the disease type based on the Racial Type and HD
|
//Determine the disease type based on the Racial Type and HD
|
||||||
switch (nRacial)
|
switch (nRacial)
|
||||||
{
|
{
|
||||||
@@ -86,8 +85,8 @@ void main()
|
|||||||
//Get the delay time
|
//Get the delay time
|
||||||
fDelay = GetDistanceBetween(OBJECT_SELF, oTarget)/20;
|
fDelay = GetDistanceBetween(OBJECT_SELF, oTarget)/20;
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget));
|
DelayCommand(fDelay, SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget));
|
||||||
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_INSTANT, eCone, oTarget));
|
DelayCommand(fDelay, SPApplyEffectToObject(DURATION_TYPE_INSTANT, eCone, oTarget));
|
||||||
}
|
}
|
||||||
//Get next target in spell area
|
//Get next target in spell area
|
||||||
oTarget = GetNextObjectInShape(SHAPE_SPELLCONE, 11.0, lTargetLocation, TRUE);
|
oTarget = GetNextObjectInShape(SHAPE_SPELLCONE, 11.0, lTargetLocation, TRUE);
|
||||||
|
|||||||
Binary file not shown.
@@ -12,8 +12,10 @@
|
|||||||
//:: Created By: Preston Watamaniuk
|
//:: Created By: Preston Watamaniuk
|
||||||
//:: Created On: May 11, 2001
|
//:: Created On: May 11, 2001
|
||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
|
//:: Updated Georg Z, 2003-09-02: fixed cone not visible if no damage is done
|
||||||
#include "NW_I0_SPELLS"
|
#include "NW_I0_SPELLS"
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
|
#include "prc_add_spell_dc"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -36,14 +38,12 @@ void main()
|
|||||||
{
|
{
|
||||||
nLoop = 1;
|
nLoop = 1;
|
||||||
}
|
}
|
||||||
|
//Calculate the damage
|
||||||
//Calculate the damage
|
|
||||||
for (nLoop; nLoop > 0; nLoop--)
|
for (nLoop; nLoop > 0; nLoop--)
|
||||||
{
|
{
|
||||||
nDamage = nDamage + d6(2);
|
nDamage = nDamage + d6(2);
|
||||||
}
|
}
|
||||||
location lTargetLocation = GetSpellTargetLocation();
|
location lTargetLocation = PRCGetSpellTargetLocation();
|
||||||
|
|
||||||
effect eLightning = EffectBeam(VFX_BEAM_LIGHTNING, oNPC, BODY_NODE_HAND);
|
effect eLightning = EffectBeam(VFX_BEAM_LIGHTNING, oNPC, BODY_NODE_HAND);
|
||||||
effect eCone;
|
effect eCone;
|
||||||
effect eVis = EffectVisualEffect(VFX_IMP_LIGHTNING_S);
|
effect eVis = EffectVisualEffect(VFX_IMP_LIGHTNING_S);
|
||||||
@@ -61,13 +61,13 @@ void main()
|
|||||||
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
||||||
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC, SAVING_THROW_TYPE_ELECTRICITY);
|
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC, SAVING_THROW_TYPE_ELECTRICITY);
|
||||||
//Set damage effect
|
//Set damage effect
|
||||||
eCone = EffectDamage(nDamage, DAMAGE_TYPE_ELECTRICAL);
|
eCone = PRCEffectDamage(oTarget, nDamage, DAMAGE_TYPE_ELECTRICAL);
|
||||||
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eLightning,oTarget,0.5);
|
||||||
|
DelayCommand(fDelay, SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget));
|
||||||
if(nDamage > 0)
|
if(nDamage > 0)
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eLightning,oTarget,0.5));
|
DelayCommand(fDelay, SPApplyEffectToObject(DURATION_TYPE_INSTANT, eCone, oTarget));
|
||||||
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget));
|
|
||||||
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_INSTANT, eCone, oTarget));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//Get next target in spell area
|
//Get next target in spell area
|
||||||
|
|||||||
Binary file not shown.
@@ -14,6 +14,7 @@
|
|||||||
//:://////////////////////////////////////////////
|
//:://////////////////////////////////////////////
|
||||||
#include "prc_inc_spells"
|
#include "prc_inc_spells"
|
||||||
#include "NW_I0_SPELLS"
|
#include "NW_I0_SPELLS"
|
||||||
|
#include "prc_add_spell_dc"
|
||||||
//#include "wm_include"
|
//#include "wm_include"
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
@@ -36,13 +37,12 @@ void main()
|
|||||||
{
|
{
|
||||||
nLoop = 1;
|
nLoop = 1;
|
||||||
}
|
}
|
||||||
|
//Calculate the damage
|
||||||
//Calculate the damage
|
|
||||||
for (nLoop; nLoop > 0; nLoop--)
|
for (nLoop; nLoop > 0; nLoop--)
|
||||||
{
|
{
|
||||||
nDamage = nDamage + d6(2);
|
nDamage = nDamage + d6(2);
|
||||||
}
|
}
|
||||||
location lTargetLocation = GetSpellTargetLocation();
|
location lTargetLocation = PRCGetSpellTargetLocation();
|
||||||
|
|
||||||
effect eCone;
|
effect eCone;
|
||||||
effect eVis = EffectVisualEffect(VFX_IMP_SONIC);
|
effect eVis = EffectVisualEffect(VFX_IMP_SONIC);
|
||||||
@@ -60,12 +60,12 @@ void main()
|
|||||||
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
|
||||||
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC,DAMAGE_TYPE_SONIC);
|
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC,DAMAGE_TYPE_SONIC);
|
||||||
//Set damage effect
|
//Set damage effect
|
||||||
eCone = EffectDamage(nDamage, DAMAGE_TYPE_SONIC);
|
eCone = PRCEffectDamage(oTarget, nDamage, DAMAGE_TYPE_SONIC);
|
||||||
|
DelayCommand(fDelay, SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget));
|
||||||
if(nDamage > 0)
|
if(nDamage > 0)
|
||||||
{
|
{
|
||||||
//Apply the VFX impact and effects
|
//Apply the VFX impact and effects
|
||||||
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget));
|
DelayCommand(fDelay, SPApplyEffectToObject(DURATION_TYPE_INSTANT, eCone, oTarget));
|
||||||
DelayCommand(fDelay, ApplyEffectToObject(DURATION_TYPE_INSTANT, eCone, oTarget));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//Get next target in spell area
|
//Get next target in spell area
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user