2025/08/22 Update
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.
This commit is contained in:
700
nwn/nwnprc/trunk/spells/sp_sum_nat_ally.nss
Normal file
700
nwn/nwnprc/trunk/spells/sp_sum_nat_ally.nss
Normal file
@@ -0,0 +1,700 @@
|
||||
//::///////////////////////////////////////////////
|
||||
//:: 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;
|
||||
} */
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user