Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //::///////////////////////////////////////////////
- //:: [Ressurection]
- //:: [NW_S0_Ressurec.nss]
- //:: Copyright (c) 2000 Bioware Corp.
- //:://////////////////////////////////////////////
- //:: Brings a character back to life with full
- //:: health.
- //:: When cast on placeables, you get a default error message.
- //:: * You can specify a different message in
- //:: X2_L_RESURRECT_SPELL_MSG_RESREF
- //:: * You can turn off the message by setting the variable
- //:: to -1
- //:://////////////////////////////////////////////
- //:: Created By: Preston Watamaniuk
- //:: Created On: Jan 31, 2001
- //:://////////////////////////////////////////////
- //:: Last Updated By: Georg Z on 2003-07-31
- //:: VFX Pass By: Preston W, On: June 22, 2001
- //:: Last Updated By: Michael Marzilli (11/15/2006): Added function to update Database Table with function Row_PlayerRaise
- //::
- #include "x2_inc_spellhook"
- #include "row_inc_functions"
- void main()
- {
- /*
- Spellcast Hook Code
- Added 2003-06-20 by Georg
- If you want to make changes to all spells,
- check x2_inc_spellhook.nss to find out more
- */
- if (!X2PreSpellCastCode())
- {
- // If code within the PreSpellCastHook (i.e. UMD) reports FALSE, do not run this spell
- return;
- }
- // End of Spell Cast Hook
- //Get the spell target
- object oTarget = GetSpellTargetObject();
- //Check to make sure the target is dead first
- //Fire cast spell at event for the specified target
- if (GetIsObjectValid(oTarget))
- {
- SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELL_RESURRECTION, FALSE));
- if(GetIsDead(oTarget))
- {
- Row_PlayerRaise(FALSE, oTarget);
- //Declare major variables
- int nHealed = GetMaxHitPoints(oTarget);
- effect eRaise = EffectResurrection();
- effect eHeal = EffectHeal(nHealed + 10);
- effect eVis = EffectVisualEffect(VFX_IMP_HEALING_G);
- //Apply the heal, raise dead and VFX impact effect
- // ApplyEffectToObject(DURATION_TYPE_INSTANT, eRaise, oTarget);
- ApplyEffectToObject(DURATION_TYPE_INSTANT, eHeal, oTarget);
- ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eVis, GetLocation(oTarget));
- }
- else if(GetObjectType(oTarget) == OBJECT_TYPE_PLACEABLE)
- {
- int nStrRef = GetLocalInt(oTarget,"X2_L_RESURRECT_SPELL_MSG_RESREF");
- if (nStrRef == 0) { nStrRef = 83861; }
- if (nStrRef != -1) { FloatingTextStrRefOnCreature(nStrRef,OBJECT_SELF); }
- }
- }
- }
Add Comment
Please, Sign In to add comment