Reverted to 4.56 to track down a bug that started in 4.57. Bugfixed back to 4.61. It's amazing the damage that one skipped case statement can do.
		
			
				
	
	
		
			701 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			701 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
//::///////////////////////////////////////////////
 | 
						|
//:: Summon Nature's Ally
 | 
						|
//:: sp_sum_nat_ally
 | 
						|
//:: 
 | 
						|
//:://////////////////////////////////////////////
 | 
						|
/*
 | 
						|
    Carries out the summoning of the appropriate
 | 
						|
    creature for the Summon Nature's Ally Series 
 | 
						|
	of spells 1 to 9
 | 
						|
*/
 | 
						|
//:://////////////////////////////////////////////
 | 
						|
//:: Created By: Jaysyn
 | 
						|
//:: Created On: 2025-08-01 22:02:26
 | 
						|
//:://////////////////////////////////////////////
 | 
						|
#include "prc_inc_spells"
 | 
						|
 | 
						|
void main()
 | 
						|
{
 | 
						|
    if(!X2PreSpellCastCode()) return;
 | 
						|
 | 
						|
    PRCSetSchool(SPELL_SCHOOL_CONJURATION);
 | 
						|
 | 
						|
    //Declare major variables
 | 
						|
    object oCaster 	= OBJECT_SELF;
 | 
						|
	
 | 
						|
	//int nSpellId 	= PRCGetSpellId();
 | 
						|
	int nSpellId 	= GetSpellId();
 | 
						|
	int nRandom;
 | 
						|
    int nMetaMagic 	= PRCGetMetaMagicFeat();
 | 
						|
    int nSwitch 	= GetPRCSwitch(PRC_SUMMON_ROUND_PER_LEVEL);
 | 
						|
	
 | 
						|
    float fDuration = nSwitch == 0 ? HoursToSeconds(24) :
 | 
						|
                                     RoundsToSeconds(PRCGetCasterLevel(oCaster) * nSwitch);
 | 
						|
    if(nMetaMagic & METAMAGIC_EXTEND)
 | 
						|
        fDuration *= 2;
 | 
						|
 | 
						|
    string sSummon;
 | 
						|
    int nVFX;
 | 
						|
	
 | 
						|
	switch(nSpellId)
 | 
						|
	{				
 | 
						|
		//:: Summon Nature's Ally 1
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_1_DIREBADGER: 
 | 
						|
		{
 | 
						|
			sSummon = "nw_s_badgerdire"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;					
 | 
						|
		}					
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_1_DIRERAT: 
 | 
						|
		{ 
 | 
						|
			sSummon = "prc_s_direrat001"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_1_DOG: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_dog001"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;									
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_1_HAWK: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_hawk001"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;		
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_1_TINY_VIPER: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_tnviper001";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;			
 | 
						|
		}	
 | 
						|
		//:: Summon Nature's Ally 2				
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_2_DIREBOAR: 
 | 
						|
		{
 | 
						|
			sSummon = "nw_s_boardire"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_2_COOSHEE: 
 | 
						|
		{ 
 | 
						|
			sSummon = "prc_s_cooshee001"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_2_WOLF: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_wolf001"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_2_SMALL_VIPER: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_smviper001";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;					
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_2_BLACKBEAR: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_blkbear001"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;	
 | 
						|
		}
 | 
						|
		//:: Summon Nature's Ally 3				
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_3_BROWNBEAR: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_brnbear001";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_3_DIREWOLK: 
 | 
						|
		{ 
 | 
						|
			sSummon = "nw_s_wolfdire"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;					
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_3_LARGE_VIPER: 
 | 
						|
		{ 
 | 
						|
			sSummon = "prc_s_lgviper001";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;				
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_3_LEOPARD: 
 | 
						|
		{ 
 | 
						|
			sSummon = "prc_s_leopard001";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;					
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_3_SATYR: 
 | 
						|
		{ 
 | 
						|
			sSummon = "prc_s_satyr001"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		//:: Summon Nature's Ally 4	
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_4_LION: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_lion001";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;										
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_4_POLAR_BEAR: 
 | 
						|
		{ 
 | 
						|
			sSummon = "prc_s_plrbear001";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;					
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_4_DIRE_SPIDER: 
 | 
						|
		{ 
 | 
						|
			sSummon = "nw_s_spiddire";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;						
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_4_HUGE_VIPER: 
 | 
						|
		{ 
 | 
						|
			sSummon = "prc_s_hgviper001";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;						
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_4_WEREBOAR: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_wrboar001";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;						
 | 
						|
		}				
 | 
						|
		//:: Summon Nature's Ally 5
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_5_MED_AIR: 
 | 
						|
		{
 | 
						|
			sSummon = "x1_s_airsmall"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;	
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_5_MED_EARTH: 
 | 
						|
		{
 | 
						|
			sSummon = "x1_s_earthsmall"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;	
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_5_MED_FIRE: 
 | 
						|
		{
 | 
						|
			sSummon = "x1_s_firesmall";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_5_MED_WATER: 
 | 
						|
		{
 | 
						|
			sSummon = "x1_s_watersmall"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_5_DIRE_BEAR: 
 | 
						|
		{
 | 
						|
			sSummon = "nw_s_beardire"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		//:: Summon Nature's Ally 6
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_6_LG_AIR: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_airlarge";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_6_LG_EARTH: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_earthlarge"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_6_LG_FIRE: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_firelarge"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_6_LG_WATER: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_waterlarge"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_6_DIRETIGER: 
 | 
						|
		{
 | 
						|
			sSummon = "nw_s_diretiger";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}			
 | 
						|
		//:: Summon Nature's Ally 7
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_7_BULETTE: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_bueltte001";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_7_INVSTALKER: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_invstlk001"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_7_PIXIE: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_pixie001"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_7_GORGON: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_gorgon001"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_7_MANTICORE: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_mntcore001";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}				
 | 
						|
		//:: Summon Nature's Ally 8
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_8_GR_AIR: 
 | 
						|
		{
 | 
						|
			sSummon = "nw_s_airgreat";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_8_GR_EARTH: 
 | 
						|
		{
 | 
						|
			sSummon = "nw_s_earthgreat"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_8_GR_FIRE: 
 | 
						|
		{
 | 
						|
			sSummon = "nw_s_firegreat"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_8_GR_WATER: 
 | 
						|
		{
 | 
						|
			sSummon = "nw_s_watergreat"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_8_NYMPH: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_nymph001";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}				
 | 
						|
		//:: Summon Nature's Ally 9
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_9_ELD_AIR: 
 | 
						|
		{
 | 
						|
			sSummon = "nw_s_airelder";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_9_ELD_EARTH: 
 | 
						|
		{
 | 
						|
			sSummon = "nw_s_earthelder"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_9_ELD_FIRE: 
 | 
						|
		{
 | 
						|
			sSummon = "nw_s_fireelder"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_9_ELD_WATER: 
 | 
						|
		{
 | 
						|
			sSummon = "nw_s_waterelder"; 
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_9_ARANEA: 
 | 
						|
		{
 | 
						|
			sSummon = "prc_s_aranea001";
 | 
						|
			nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
			break;
 | 
						|
		}				
 | 
						|
	}			
 | 
						|
			
 | 
						|
	if (DEBUG) DoDebug("sp_summon_nature: oCaster " +GetName(oCaster)+", GetSpellId " +IntToString(GetSpellId())+", sSummon " +sSummon);
 | 
						|
	
 | 
						|
	effect eSummon = EffectSummonCreature(sSummon, nVFX);
 | 
						|
 | 
						|
	//Apply the VFX impact and summon effect
 | 
						|
	MultisummonPreSummon();
 | 
						|
	ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eSummon, PRCGetSpellTargetLocation(), fDuration);
 | 
						|
 | 
						|
	DelayCommand(0.5, AugmentSummonedCreature(sSummon));
 | 
						|
 | 
						|
	PRCSetSchool();						
 | 
						|
}
 | 
						|
	
 | 
						|
 /*   switch(nSpellId)
 | 
						|
    {
 | 
						|
		
 | 
						|
	
 | 
						|
         case SPELL_SUMMON_NATURES_ALLY_1:
 | 
						|
		{
 | 
						|
            nRandom = Random(5)+1;
 | 
						|
			
 | 
						|
			switch(nRandom)
 | 
						|
			{
 | 
						|
				case 1: 
 | 
						|
				{
 | 
						|
					sSummon = "nw_s_badgerdire"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;					
 | 
						|
				}					
 | 
						|
				case 2: 
 | 
						|
				{ 
 | 
						|
					sSummon = "prc_s_direrat001"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 3: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_dog001"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;									
 | 
						|
				}
 | 
						|
				case 4: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_hawk001"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;		
 | 
						|
				}
 | 
						|
				case 5: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_tnviper001";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;			
 | 
						|
				}
 | 
						|
			}
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_2:
 | 
						|
		{
 | 
						|
            nRandom = Random(5)+1;
 | 
						|
			
 | 
						|
			switch(nRandom)
 | 
						|
			{
 | 
						|
				case 1: 
 | 
						|
				{
 | 
						|
					sSummon = "nw_s_boardire"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 2: 
 | 
						|
				{ 
 | 
						|
					sSummon = "prc_s_cooshee001"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 3: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_wolf001"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 4: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_smviper001";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;					
 | 
						|
				}
 | 
						|
				case 5: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_blkbear001"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;	
 | 
						|
				}
 | 
						|
			}
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_3:
 | 
						|
		{
 | 
						|
            nRandom = Random(5)+1;
 | 
						|
			
 | 
						|
			switch(nRandom)
 | 
						|
			{
 | 
						|
				case 1: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_brnbear001";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 2: 
 | 
						|
				{ 
 | 
						|
					sSummon = "nw_s_wolfdire"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;					
 | 
						|
				}
 | 
						|
				case 3: 
 | 
						|
				{ 
 | 
						|
					sSummon = "prc_s_lgviper001";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;				
 | 
						|
				}
 | 
						|
				case 4: 
 | 
						|
				{ 
 | 
						|
					sSummon = "prc_s_leopard001";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;					
 | 
						|
				}
 | 
						|
				case 5: 
 | 
						|
				{ 
 | 
						|
					sSummon = "prc_s_satyr001"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
			}
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_4:
 | 
						|
		{
 | 
						|
            nRandom = Random(5)+1;
 | 
						|
			
 | 
						|
			switch(nRandom)
 | 
						|
			{
 | 
						|
				case 1: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_lion001";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;										
 | 
						|
				}
 | 
						|
				case 2: 
 | 
						|
				{ 
 | 
						|
					sSummon = "prc_s_plrbear001";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;					
 | 
						|
				}
 | 
						|
				case 3: 
 | 
						|
				{ 
 | 
						|
					sSummon = "nw_s_spiddire";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;						
 | 
						|
				}
 | 
						|
				case 4: 
 | 
						|
				{ 
 | 
						|
					sSummon = "prc_s_hgviper001";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;						
 | 
						|
				}
 | 
						|
				case 5: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_wrboar001";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;						
 | 
						|
				}
 | 
						|
			}
 | 
						|
		}
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_5:
 | 
						|
		{
 | 
						|
            nRandom = Random(5)+1;
 | 
						|
			
 | 
						|
			switch(nRandom)
 | 
						|
			{
 | 
						|
				case 1: 
 | 
						|
				{
 | 
						|
					sSummon = "x1_s_airsmall"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;	
 | 
						|
				}
 | 
						|
				case 2: 
 | 
						|
				{
 | 
						|
					sSummon = "x1_s_earthsmall"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;	
 | 
						|
				}
 | 
						|
				case 3: 
 | 
						|
				{
 | 
						|
					sSummon = "x1_s_firesmall";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 4: 
 | 
						|
				{
 | 
						|
					sSummon = "x1_s_watersmall"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 5: 
 | 
						|
				{
 | 
						|
					sSummon = "nw_s_beardire"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
			}
 | 
						|
		}		
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_6:
 | 
						|
		{
 | 
						|
            nRandom = Random(5)+1;
 | 
						|
			
 | 
						|
			switch(nRandom)
 | 
						|
			{
 | 
						|
				case 1: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_airlarge";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 2: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_earthlarge"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 3: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_firelarge"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 4: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_waterlarge"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 5: 
 | 
						|
				{
 | 
						|
					sSummon = "nw_s_diretiger";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
			}
 | 
						|
		}		
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_7:
 | 
						|
		{
 | 
						|
            nRandom = Random(5)+1;
 | 
						|
			
 | 
						|
			switch(nRandom)
 | 
						|
			{
 | 
						|
				case 1: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_bueltte001";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 2: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_invstlk001"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 3: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_pixie001"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 4: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_gorgon001"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 5: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_mntcore001";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
			}
 | 
						|
		}		
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_8:
 | 
						|
		{
 | 
						|
            nRandom = Random(5)+1;
 | 
						|
			
 | 
						|
			switch(nRandom)
 | 
						|
			{
 | 
						|
				case 1: 
 | 
						|
				{
 | 
						|
					sSummon = "nw_s_airgreat";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 2: 
 | 
						|
				{
 | 
						|
					sSummon = "nw_s_earthgreat"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 3: 
 | 
						|
				{
 | 
						|
					sSummon = "nw_s_firegreat"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 4: 
 | 
						|
				{
 | 
						|
					sSummon = "nw_s_watergreat"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 5: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_nymph001";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
			}
 | 
						|
		}		
 | 
						|
		case SPELL_SUMMON_NATURES_ALLY_9:
 | 
						|
		{
 | 
						|
            nRandom = Random(5)+1;
 | 
						|
			
 | 
						|
			switch(nRandom)
 | 
						|
			{
 | 
						|
				case 1: 
 | 
						|
				{
 | 
						|
					sSummon = "nw_s_airelder";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 2: 
 | 
						|
				{
 | 
						|
					sSummon = "nw_s_earthelder"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 3: 
 | 
						|
				{
 | 
						|
					sSummon = "nw_s_fireelder"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 4: 
 | 
						|
				{
 | 
						|
					sSummon = "nw_s_waterelder"; 
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
				case 5: 
 | 
						|
				{
 | 
						|
					sSummon = "prc_s_aranea001";
 | 
						|
					nVFX = VFX_FNF_SUMMON_NATURES_ALLY_1;
 | 
						|
					break;
 | 
						|
				}
 | 
						|
			}
 | 
						|
		}		
 | 
						|
		
 | 
						|
 */
 | 
						|
 | 
						|
/* 		
 | 
						|
		// [TODO] Turn this into a proper template
 | 
						|
		if (GetHasFeat(FEAT_SUMMON_ALIEN, oCaster) || GetHasSpellEffect(VESTIGE_ZCERYLL, oCaster)) 
 | 
						|
		{
 | 
						|
			sSummon = "pseudo"+sSummon;
 | 
						|
		}
 | 
						|
		else     
 | 
						|
		{
 | 
						|
			sSummon = "nw_s_"+sSummon;
 | 
						|
		} */
 | 
						|
		
 | 
						|
 | 
						|
			
 | 
						|
		
 | 
						|
		
 | 
						|
		
 |