Updated AMS marker feats. Removed arcane & divine marker feats. Updated Dread Necromancer for epic progression. Updated weapon baseitem models. Updated new weapons for crafting & npc equip. Updated prefix. Updated release archive.
		
			
				
	
	
		
			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);
 | 
						|
                }
 | 
						|
            }
 | 
						|
        }
 | 
						|
    }
 | 
						|
}
 |