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.
66 lines
2.0 KiB
Plaintext
66 lines
2.0 KiB
Plaintext
//::///////////////////////////////////////////////
|
|
//:: Name Revivify
|
|
//:: FileName sp_revivify.nss
|
|
//:://////////////////////////////////////////////
|
|
/** @file Revivify
|
|
Conjuration (Healing)
|
|
Level: Clr 5, Hlr 5
|
|
Components: V,S,M
|
|
Casting Time: 1 standard action
|
|
Range: Touch
|
|
Target: Dead creature touched
|
|
Duration: Instantaneous
|
|
Saving Throw: None
|
|
Spell Resistance: Yes (harmless)
|
|
|
|
Revivify miraculously restores life to a recently
|
|
deceased creature. However, the spell must be cast
|
|
within 1 round of the victim's dead. Before the
|
|
soul of the deceased has completely left the body,
|
|
this spell halts its journey while repairing
|
|
somewhat the damage to the body. This spell
|
|
functions like raise dead, except that the raised
|
|
creature receives no level loss, no Constitution
|
|
loss, and no loss of spells. The creature is only
|
|
restored to -1 hit points (but is stable).
|
|
|
|
Material Component: Diamonds worth at least 1000 gp.
|
|
**/
|
|
///////////////////////////////////////////////////
|
|
// Author: Tenjac
|
|
// Date: 6.10.06
|
|
///////////////////////////////////////////////////
|
|
|
|
#include "prc_alterations"
|
|
#include "prc_inc_spells"
|
|
|
|
void main()
|
|
{
|
|
if(!X2PreSpellCastCode()) return;
|
|
|
|
PRCSetSchool(SPELL_SCHOOL_CONJURATION);
|
|
|
|
object oPC = OBJECT_SELF;
|
|
object oTarget = PRCGetSpellTargetObject();
|
|
effect eResurrect = EffectResurrection();
|
|
effect eVis = EffectVisualEffect(VFX_IMP_RAISE_DEAD);
|
|
|
|
// Make sure the target is in fact dead
|
|
if(GetIsDead(oTarget))
|
|
{
|
|
// Let the AI know - Special handling
|
|
PRCSignalSpellEvent(oTarget, FALSE, SPELL_RAISE_DEAD, oPC);
|
|
|
|
// Apply effects
|
|
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eVis, GetLocation(oTarget));
|
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eResurrect, oTarget);
|
|
|
|
// Do special stuff
|
|
ExecuteScript("prc_pw_raisedead", oPC);
|
|
if(GetPRCSwitch(PRC_PW_DEATH_TRACKING) && GetIsPC(oTarget))
|
|
SetPersistantLocalInt(oTarget, "persist_dead", FALSE);
|
|
}
|
|
// end if - Deadness check
|
|
|
|
PRCSetSchool();
|
|
} |