Updated Release Archive. Fixed Mage-killer prereqs. Removed old LETO & ConvoCC related files. Added organized spell scroll store. Fixed Gloura spellbook. Various TLK fixes. Reorganized Repo. Removed invalid user folders. Added DocGen back in.
63 lines
1.7 KiB
Plaintext
63 lines
1.7 KiB
Plaintext
//::///////////////////////////////////////////////
|
|
//:: Name Dragon Ally
|
|
//:: FileName sp_drgn_ally.nss
|
|
//:://////////////////////////////////////////////
|
|
/**@file Dragon Ally
|
|
Conjuration (Summoning)
|
|
Level: Sor/Wiz 7
|
|
Components: V, XP
|
|
Casting Time: 1 round
|
|
Range: Special (see text)
|
|
Effect: One dragon ally (see text)
|
|
Duration: 1 minute. + 1 turn/level (Original had no specific duration)
|
|
Saving Throw: None
|
|
Spell Resistance: No
|
|
|
|
This spell summons a juvenile red dragon to perform a short task for you.
|
|
The dragon will arrive a minute after hearing the summons.
|
|
|
|
Special: Sorcerers cast this spell at +1 caster level.
|
|
|
|
XP Cost: 250
|
|
|
|
Author: Fox
|
|
Created: 11/16/07
|
|
*/
|
|
//:://////////////////////////////////////////////
|
|
//:://////////////////////////////////////////////
|
|
|
|
#include "prc_alterations"
|
|
#include "prc_inc_spells"
|
|
|
|
void main()
|
|
{
|
|
if(!X2PreSpellCastCode()) return;
|
|
|
|
PRCSetSchool(SPELL_SCHOOL_CONJURATION);
|
|
|
|
object oPC = OBJECT_SELF;
|
|
object oArea = GetArea(oPC);
|
|
|
|
location lLoc = PRCGetSpellTargetLocation();
|
|
int nCasterLevel = PRCGetCasterLevel(oPC);
|
|
if(GetLevelByClass(CLASS_TYPE_SORCERER, oPC)) nCasterLevel += 1;
|
|
float fDur = TurnsToSeconds(nCasterLevel);
|
|
if(PRCGetMetaMagicFeat() & METAMAGIC_EXTEND)
|
|
fDur *= 2; //Duration is +100%
|
|
int nXP = GetXP(oPC);
|
|
|
|
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_SUMMONDRAGON), lLoc);
|
|
|
|
MultisummonPreSummon();
|
|
string sSummon = "prc_drgnally";
|
|
ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, EffectSummonCreature(sSummon), lLoc, fDur);
|
|
DelayCommand(0.5, AugmentSummonedCreature(sSummon));
|
|
|
|
//only pay the cost if cast sucessfully
|
|
SetXP(oPC, nXP - 250);
|
|
|
|
PRCSetSchool();
|
|
}
|
|
|
|
|