2025/12/24 Update

Hooked up new GUI module event.
Updated PRC8 includes.
Updated "_removed".
Updated nasher.cfg
This commit is contained in:
Jaysyn904
2025-12-24 15:20:02 -05:00
parent 32fd183ca0
commit 42894064d8
197 changed files with 25660 additions and 1516 deletions

View File

@@ -0,0 +1,72 @@
//::///////////////////////////////////////////////
//:: Incendiary Cloud
//:: NW_S0_IncCloud.nss
//:: Copyright (c) 2001 Bioware Corp.
//:://////////////////////////////////////////////
/*
Person within the AoE take 4d6 fire damage
per round.
*/
//:://////////////////////////////////////////////
//:: Created By: Preston Watamaniuk
//:: Created On: May 17, 2001
//:://////////////////////////////////////////////
#include "x2_inc_spellhook"
void main()
{
/*
Spellcast Hook Code
Added 2003-06-20 by Georg
If you want to make changes to all spells,
check x2_inc_spellhook.nss to find out more
*/
if (!X2PreSpellCastCode())
{
// If code within the PreSpellCastHook (i.e. UMD) reports FALSE, do not run this spell
return;
}
// End of Spell Cast Hook
//Declare major variables, including the Area of Effect object.
object oCaster = OBJECT_SELF;
object oPC = GetFirstPC();
int nInt=GetLocalInt(oPC, "Underwater");
effect eFail = SupernaturalEffect(EffectSpellFailure());
effect eAOE = EffectAreaOfEffect(AOE_PER_FOGFIRE);
//Capture the spell target location so that the AoE object can be created.
location lTarget = GetSpellTargetLocation();
int nDuration = GetCasterLevel(OBJECT_SELF);
effect eImpact = EffectVisualEffect(260);
//Spell fails if caster is underwater.
if (nInt == 1)
{
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eFail,oCaster,0.1);
FloatingTextStringOnCreature("The spell 'Incendiary Cloud' will not work underwater!", oPC);
return;
}
//Normal spell effects.
if (nInt != 1)
{
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eImpact, lTarget);
if(nDuration < 1)
{
nDuration = 1;
}
int nMetaMagic = GetMetaMagicFeat();
//Check for metamagic extend
if (nMetaMagic == METAMAGIC_EXTEND)
{
nDuration = nDuration *2; //Duration is +100%
}
//Create the object at the location so that the objects scripts will start working.
ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eAOE, lTarget, RoundsToSeconds(nDuration));
}
}