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.
		
			
				
	
	
		
			56 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
/*:://////////////////////////////////////////////
 | 
						|
//:: Spell Name Maze : Heartbeat area
 | 
						|
//:: Spell FileName PHS_S_MazeC
 | 
						|
//:://////////////////////////////////////////////
 | 
						|
//:: Spell Effects Applied / Notes
 | 
						|
//:://////////////////////////////////////////////
 | 
						|
    On Heartbeat
 | 
						|
 | 
						|
    We can easily make them check intelligence every 6 seconds VIA heartbeat,
 | 
						|
    this is NOT the script in the area on heartbeat, but rather is executed
 | 
						|
    on an entering object every 6 seconds until it gets from 600 to 0...10 turns
 | 
						|
    of round checking.
 | 
						|
//:://////////////////////////////////////////////
 | 
						|
//:: Created By: Jasperre
 | 
						|
//::////////////////////////////////////////////*/
 | 
						|
 | 
						|
#include "PHS_INC_SPELLS"
 | 
						|
 | 
						|
void main()
 | 
						|
{
 | 
						|
    // Delcare Major Variables
 | 
						|
    object oTarget = OBJECT_SELF;
 | 
						|
 | 
						|
    // Jump out if they are not in the maze area
 | 
						|
    if(!PHS_IsInMazeArea(oTarget))
 | 
						|
    {
 | 
						|
        SetCommandable(TRUE, oTarget);
 | 
						|
        // Remove the spells effects (the visual mostly)
 | 
						|
        PHS_RemoveSpellEffectsFromTarget(PHS_SPELL_MAZE, oTarget);
 | 
						|
        return;
 | 
						|
    }
 | 
						|
 | 
						|
    // First, move the coutner down by 1 round
 | 
						|
    int iCounter = GetLocalInt(oTarget, PHS_S_MAZE_ROUND_COUNTER);
 | 
						|
    iCounter--;
 | 
						|
    // Set new counter value
 | 
						|
    SetLocalInt(oTarget, PHS_S_MAZE_ROUND_COUNTER, iCounter);
 | 
						|
 | 
						|
    // We make a hidden intelligence check :-)
 | 
						|
    int iIntelligence = GetAbilityModifier(ABILITY_INTELLIGENCE, oTarget);
 | 
						|
 | 
						|
    // DC of 20. OR we have been here 600 checks before...
 | 
						|
    if(iIntelligence + d20() >= 20 || iCounter <= 0)
 | 
						|
    {
 | 
						|
        // PASS
 | 
						|
        // - Execute jump out script. The script is also used for freedom.
 | 
						|
        ExecuteScript("phs_s_mazed", oTarget);
 | 
						|
    }
 | 
						|
    else
 | 
						|
    {
 | 
						|
        // FAIL
 | 
						|
        // - Continue to execute the script
 | 
						|
        DelayCommand(6.0, ExecuteScript("phs_s_mazec", oTarget));
 | 
						|
    }
 | 
						|
}
 |