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.
		
			
				
	
	
		
			59 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| /*
 | |
| 10/03/21 by Stratovarius
 | |
| 
 | |
| Scion of Dantalion, the Star Emperor
 | |
|   
 | |
| As a standard action, you send your thoughts out to
 | |
| a single creature whose thoughts you are reading (so it has
 | |
| already failed its Will save against your read thoughts ability),
 | |
| forcing it to succeed on a Will save (DC 10 + 1/2 your effective
 | |
| binder level + your Cha modifier) or be dazed for 1d4 rounds. 
 | |
| A successful save allows the creature to break free
 | |
| of your thought reading.
 | |
| */
 | |
| 
 | |
| #include "bnd_inc_bndfunc"
 | |
| 
 | |
| void DantalionOverwhelm(object oBinder, object oTarget, int nDC)
 | |
| {
 | |
| 	if (GetHasSpellEffect(VESTIGE_DANTALION_READ_THOUGHTS, oTarget))
 | |
| 	{
 | |
|     	if(!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_NONE))
 | |
|     	{
 | |
|     		ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(PSI_IMP_CONCUSSION_BLAST), oTarget);
 | |
|     		ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectDazed(), oTarget, RoundsToSeconds(d4()));
 | |
|     	}	
 | |
|     	else // Enemy succeeded on saving throw here
 | |
|     	{
 | |
|     		FloatingTextStringOnCreature(GetName(oTarget)+" breaks your Read Thoughts!", oBinder, FALSE);
 | |
| 			PRCRemoveSpellEffects(VESTIGE_DANTALION_READ_THOUGHTS, oBinder, oTarget);
 | |
| 			GZPRCRemoveSpellEffects(VESTIGE_DANTALION_READ_THOUGHTS, oTarget, FALSE);
 | |
|     	}	    	
 | |
|     }	
 | |
| }    
 | |
| 
 | |
| void main()
 | |
| {
 | |
| 	object oBinder = OBJECT_SELF;
 | |
|     object oTarget = PRCGetSpellTargetObject(); 
 | |
|     int nDC = 10 + GetBinderLevel(oBinder, VESTIGE_DANTALION)/2 + GetAbilityModifier(ABILITY_CHARISMA, oBinder);
 | |
|     
 | |
|     DantalionOverwhelm(oBinder, oTarget, nDC);
 | |
| 	
 | |
| 	if (GetLevelByClass(CLASS_TYPE_SCION_DANTALION, oBinder) >= 5)
 | |
| 	{
 | |
| 	    location lTarget = GetLocation(oBinder);
 | |
| 	    ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_DEEP_SLUMBER), oBinder);
 | |
| 	    // Use the function to get the closest creature as a target
 | |
| 	    object oAreaTarget = MyFirstObjectInShape(SHAPE_SPHERE, FeetToMeters(45.0), lTarget, TRUE, OBJECT_TYPE_CREATURE);
 | |
| 	    while(GetIsObjectValid(oAreaTarget))
 | |
| 	    {
 | |
| 	        if(oAreaTarget != oBinder && oAreaTarget != oTarget && GetIsEnemy(oBinder, oAreaTarget)) // Enemies only
 | |
| 	        {
 | |
| 				DantalionOverwhelm(oBinder, oAreaTarget, nDC);	
 | |
| 	        }
 | |
| 	    //Select the next target within the spell shape.
 | |
| 	    oAreaTarget = MyNextObjectInShape(SHAPE_SPHERE, FeetToMeters(45.0), lTarget, TRUE, OBJECT_TYPE_CREATURE);
 | |
| 	    }	
 | |
| 	}    
 | |
| } |