Further file organization

Further file organization
This commit is contained in:
Jaysyn904
2023-08-23 22:11:00 -04:00
parent 3062876237
commit d87fe14826
22364 changed files with 0 additions and 3253 deletions

View File

@@ -0,0 +1,62 @@
/*:://////////////////////////////////////////////
//:: Spell Name Sanctuary
//:: Spell FileName PHS_S_Sanctuary
//:://////////////////////////////////////////////
//:: In Game Spell desctiption
//:://////////////////////////////////////////////
Range: Touch
Target: Creature touched
Duration: 1 round/level
Saving Throw: Will negates
Spell Resistance: No
All creatures who percieve the touched creature must attempt a Will save. If
the save succeeds, the opponent can see the target normally and is unaffected
by that casting of the spell. If the save fails, the opponent cannot see the
creature as if they were under the effect of invisibility. This spell does
not prevent the warded creature from being attacked or affected by area or
effect spells. The subject cannot attack without breaking the spell but may
use nonattack spells or otherwise act.
//:://////////////////////////////////////////////
//:: Spell Effects Applied / Notes
//:://////////////////////////////////////////////
As above - uses the default Bioware Sancuary, so its not exactly to D&D at all.
Sancuary, as far as I am aware, is a better invisiblity - as it is used
as a basis for the Bioware Etherealness.
//:://////////////////////////////////////////////
//:: Created By: Jasperre
//::////////////////////////////////////////////*/
#include "PHS_INC_SPELLS"
void main()
{
// Spell hook check
if(!PHS_SpellHookCheck(PHS_SPELL_SANCTUARY)) return;
// Declare major variables
object oCaster = OBJECT_SELF;
object oTarget = GetSpellTargetObject();
int nSpellSaveDC = PHS_GetSpellSaveDC();
int nCasterLevel = PHS_GetCasterLevel();
int nMetaMagic = PHS_GetMetaMagicFeat();
// Get duration in rounds
float fDuration = PHS_GetDuration(PHS_ROUNDS, nCasterLevel, nMetaMagic);
// Declare effects
effect eSanctuary = EffectSanctuary(nSpellSaveDC);
effect eDur = EffectVisualEffect(VFX_DUR_SANCTUARY);
effect eCessate = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE);
// Link effects
effect eLink = EffectLinkEffects(eSanctuary, eDur);
eLink = EffectLinkEffects(eLink, eCessate);
// Signal spell cast at event
PHS_SignalSpellCastAt(oTarget, PHS_SPELL_SANCTUARY, FALSE);
// Apply duration effects
PHS_ApplyDuration(oTarget, eLink, fDuration);
}