Updated Release Archive. Fixed Mage-killer prereqs. Removed old LETO & ConvoCC related files. Added organized spell scroll store. Fixed Gloura spellbook. Various TLK fixes. Reorganized Repo. Removed invalid user folders. Added DocGen back in.
68 lines
2.3 KiB
Plaintext
68 lines
2.3 KiB
Plaintext
/*:://////////////////////////////////////////////
|
|
//:: Spell Name Ghoul Touch - On Enter
|
|
//:: Spell FileName PHS_S_GhoulToucA
|
|
//:://////////////////////////////////////////////
|
|
//:: Spell Effects Applied / Notes
|
|
//:://////////////////////////////////////////////
|
|
Cannot decrease ability checks without decreasing the ability!
|
|
|
|
But the rest is fine, as is the paralysis :-)
|
|
|
|
This script is the on enter of the "carrion fog" around the target. Never
|
|
affects caster.
|
|
//:://////////////////////////////////////////////
|
|
//:: Created By: Jasperre
|
|
//::////////////////////////////////////////////*/
|
|
|
|
#include "PHS_INC_SPELLS"
|
|
|
|
void main()
|
|
{
|
|
// Declare Major Variables
|
|
object oCaster = GetAreaOfEffectCreator();
|
|
object oTarget = GetEnteringObject();
|
|
int nSpellSaveDC = PHS_GetSpellSaveDC();
|
|
|
|
// Duration of the sickening is forever, until wiped.
|
|
|
|
// Delcare Effects
|
|
effect eVis = EffectVisualEffect(VFX_IMP_POISON_L);
|
|
effect eAttack = EffectAttackDecrease(2);
|
|
effect eDamage = EffectDamageDecrease(2);
|
|
effect eSave = EffectSavingThrowDecrease(SAVING_THROW_ALL, 2);
|
|
effect eSkill = EffectSkillDecrease(SKILL_ALL_SKILLS, 2);
|
|
effect eCessate = EffectVisualEffect(VFX_DUR_CESSATE_NEGATIVE);
|
|
|
|
// Link effects
|
|
effect eLink = EffectLinkEffects(eAttack, eDamage);
|
|
eLink = EffectLinkEffects(eLink, eSave);
|
|
eLink = EffectLinkEffects(eLink, eSkill);
|
|
eLink = EffectLinkEffects(eLink, eCessate);
|
|
|
|
// Make sure it isn't just removed like that
|
|
// - Removed by neutralise poison.
|
|
eLink = SupernaturalEffect(eLink);
|
|
|
|
// Signal spell cast at event
|
|
PHS_SignalSpellCastAt(oTarget, PHS_SPELL_GHOUL_TOUCH);
|
|
|
|
// PvP check - it doesn't affect the caster
|
|
if(!GetIsReactionTypeFriendly(oTarget, oCaster) && oTarget != oCaster)
|
|
{
|
|
// Poison immunity
|
|
if(!PHS_ImmunityCheck(oTarget, IMMUNITY_TYPE_POISON))
|
|
{
|
|
// Spell resistance + immunity
|
|
if(!PHS_SpellResistanceCheck(oCaster, oTarget))
|
|
{
|
|
// Fortitude save
|
|
if(!PHS_SavingThrow(SAVING_THROW_FORT, oTarget, nSpellSaveDC, SAVING_THROW_TYPE_POISON, oCaster))
|
|
{
|
|
// Apply visual effect and negative effects
|
|
PHS_ApplyPermanentAndVFX(oTarget, eVis, eLink);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|