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.
		
			
				
	
	
		
			62 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
/*:://////////////////////////////////////////////
 | 
						|
//:: Spell Name Antilife Shell
 | 
						|
//:: Spell FileName PHS_S_AntilifeS
 | 
						|
//:://////////////////////////////////////////////
 | 
						|
//:: In Game Spell desctiption
 | 
						|
//:://////////////////////////////////////////////
 | 
						|
    3.2M.- Radius, 10 min/level. Sepll resistance: Yes.
 | 
						|
 | 
						|
    Hedges out living creatures:
 | 
						|
    - The effect hedges out animals, aberrations, dragons, fey, giants, humanoids,
 | 
						|
    magical beasts, monstrous humanoids, oozes, plants, and vermin, but not
 | 
						|
    constructs, elementals, outsiders, or undead.
 | 
						|
    - Any creature already inside the Antilife Shell when cast can remain there.
 | 
						|
    This spell may be used only defensively, not aggressively. If anything enters
 | 
						|
    while moving, it breaks the spell.
 | 
						|
//:://////////////////////////////////////////////
 | 
						|
//:: Spell Effects Applied / Notes
 | 
						|
//:://////////////////////////////////////////////
 | 
						|
    It is a mobile barrier, with a special AOE.
 | 
						|
 | 
						|
    Basically, if the caster is doing an ACTION_TYPE_MOVE_TO_POINT and someone
 | 
						|
    activates the OnEnter script, that creature makes the barrier collapse.
 | 
						|
//:://////////////////////////////////////////////
 | 
						|
//:: Created By: Jasperre
 | 
						|
//::////////////////////////////////////////////*/
 | 
						|
 | 
						|
#include "PHS_INC_SPELLS"
 | 
						|
 | 
						|
void main()
 | 
						|
{
 | 
						|
    // Spell Hook Check.
 | 
						|
    if(!PHS_SpellHookCheck()) return;
 | 
						|
 | 
						|
    // Declare major variables
 | 
						|
    object oTarget = GetSpellTargetObject();// Should be OBJECT_SELF.
 | 
						|
    object oCaster = OBJECT_SELF;
 | 
						|
    int nCasterLevel = PHS_GetCasterLevel();
 | 
						|
    int nMetaMagic = PHS_GetMetaMagicFeat();
 | 
						|
 | 
						|
    // Make sure they are not immune to spells
 | 
						|
    if(PHS_TotalSpellImmunity(oTarget)) return;
 | 
						|
 | 
						|
    // Duration in 10 minutes/level
 | 
						|
    float fDuration = PHS_GetDuration(PHS_MINUTES, nCasterLevel * 10, nMetaMagic);
 | 
						|
 | 
						|
    // Declare effects - only an enter script.
 | 
						|
    // - Use scripts defined in the 2da.
 | 
						|
    effect eMob = EffectAreaOfEffect(PHS_AOE_MOB_ANTILIFE_SHELL);
 | 
						|
 | 
						|
    // Remove previous effects
 | 
						|
    PHS_RemoveSpellEffectsFromTarget(PHS_SPELL_ANTILIFE_SHELL, oTarget);
 | 
						|
 | 
						|
    // Set local integer so that the first ones will not be affected, which
 | 
						|
    // is removed after 1.0 seconds.
 | 
						|
    string sLocal = PHS_MOVING_BARRIER_START + IntToString(PHS_SPELL_ANTILIFE_SHELL);
 | 
						|
    SetLocalInt(oCaster, sLocal, TRUE);
 | 
						|
    DelayCommand(1.0, DeleteLocalInt(oCaster, sLocal));
 | 
						|
 | 
						|
    // Apply effects
 | 
						|
    PHS_ApplyDuration(oTarget, eMob, fDuration);
 | 
						|
}
 |