Files
PRC8/nwn/nwnprc/trunk/scripts/prc_doa_mjrdevil.nss
Jaysyn904 48ca4b8acf 2026/01/21 Update
Swapped Disciple of Asmodeus' Summon Glabrezu for Summon Pit Fiend.  Glabrezu aren't devils.
Wisplings can qualify for Warsling Sniper.
Added Maeluth planetouched racialtype.
Maeluth can qualify for Dwarven Defender. Ollam and Ironsoul Forgemaster.
Added Mechanatrix planetouched racialtype.
Updated creature aura scripts to use PRCEffectDamage(), SPApplyEffectToObject() & PRCMySavingThrow().
2026-01-21 16:35:43 -05:00

43 lines
1.8 KiB
Plaintext

//::///////////////////////////////////////////////
//:: Disciple of Asmodeus Summon Major Devil
//:: prc_doa_mjrdevil.nss
//::///////////////////////////////////////////////
/*
Summons a Hellcat. At level 9, summons 1d4 Hellcats.
Duration as per summon monster
*/
//:://////////////////////////////////////////////
//:: Created By: Stratovarius
//:: Created On: 27.2.2006
//:://////////////////////////////////////////////
#include "prc_inc_spells"
void main()
{
//Declare major variables
object oPC = OBJECT_SELF;
if(DEBUG) DoDebug("prc_doa_mjrdevil: Begin");
effect eVis = EffectVisualEffect(VFX_FNF_SUMMON_GATE);
float fDuration = HoursToSeconds(24);
string sSummon;
int nDuration = PRCGetCasterLevel(oPC);
if(GetPRCSwitch(PRC_SUMMON_ROUND_PER_LEVEL))
fDuration = RoundsToSeconds(nDuration*GetPRCSwitch(PRC_SUMMON_ROUND_PER_LEVEL));
if (PRCGetSpellId() == SPELL_DISCIPLE_ASMODEUS_DEVIL_CORN) sSummon = "prc_sum_cornugon";
else if (PRCGetSpellId() == SPELL_DISCIPLE_ASMODEUS_DEVIL_GEL) sSummon = "prc_sum_gelugon";
else if (PRCGetSpellId() == SPELL_DISCIPLE_ASMODEUS_DEVIL_GLAB) sSummon = "twin_fiend"; //:; This was a Glabrezu for some stupid reason. Glabrezu are Demons, not Devils.
else if (PRCGetSpellId() == SPELL_DISCIPLE_ASMODEUS_DEVIL_HAM) sSummon = "prc_sum_hamatula";
else if (PRCGetSpellId() == SPELL_DISCIPLE_ASMODEUS_DEVIL_OSY) sSummon = "prc_sum_osyluth";
effect eSummon = EffectSummonCreature(sSummon);
// 1 summon only
MultisummonPreSummon(oPC);
ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eVis, GetSpellTargetLocation());
ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, eSummon, GetSpellTargetLocation(), fDuration);
if(DEBUG) DoDebug("prc_doa_mjrdevil: End");
}