Updated AMS marker feats. Removed arcane & divine marker feats. Updated Dread Necromancer for epic progression. Updated weapon baseitem models. Updated new weapons for crafting & npc equip. Updated prefix. Updated release archive.
91 lines
3.6 KiB
Plaintext
91 lines
3.6 KiB
Plaintext
/*:://////////////////////////////////////////////
|
|
//:: Spell Name Prestidigitation
|
|
//:: Spell FileName PHS_S_Prestidigi
|
|
//:://////////////////////////////////////////////
|
|
//:: In Game Spell desctiption
|
|
//:://////////////////////////////////////////////
|
|
Universal
|
|
Level: Brd 0, Sor/Wiz 0
|
|
Components: V, S
|
|
Casting Time: 1 standard action
|
|
Range: See Text
|
|
Effect: See text
|
|
Duration: 1 hour
|
|
Saving Throw: See text
|
|
Spell Resistance: No
|
|
|
|
Prestidigitations are minor tricks that novice spellcasters use for
|
|
practice. Once cast, a prestidigitation spell enables you to perform simple
|
|
magical effects for 1 hour. The magical tricks performed are visual and
|
|
consist of a varying amount of small visual effects. Once cast, you may
|
|
conjure these small effects for the duration, including finger fire, card
|
|
throwing, spinning balls of colour and so on.
|
|
//:://////////////////////////////////////////////
|
|
//:: Spell Effects Applied / Notes
|
|
//:://////////////////////////////////////////////
|
|
Not complete.
|
|
|
|
This will allow the use of the spell to conjure small visual effects for
|
|
the duration.
|
|
|
|
So simple. It uses the master kinda thing, for up to 5 set visuals. Either
|
|
this can be changed in the menus (maybe) or not.
|
|
//:://////////////////////////////////////////////
|
|
//:: Created By: Jasperre
|
|
//::////////////////////////////////////////////*/
|
|
|
|
#include "PHS_INC_SPELLS"
|
|
|
|
void main()
|
|
{
|
|
// Spell hook check
|
|
if(!PHS_SpellHookCheck(PHS_SPELL_PRESTIDIGITATION)) return;
|
|
|
|
// Declare major variables
|
|
object oCaster = OBJECT_SELF;
|
|
object oTarget = GetSpellTargetObject();
|
|
location lTarget = GetSpellTargetLocation();
|
|
int nMetaMagic = PHS_GetMetaMagicFeat();
|
|
|
|
// If the item being used is not the ability item, we will apply the
|
|
// duration effects for 1 hour.
|
|
if(GetTag(GetSpellCastItem()) != "PHS_CLASS_ITEM")
|
|
{
|
|
// Declare effect
|
|
effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE);
|
|
|
|
// Get duration (one hour)
|
|
float fDuration = PHS_GetDuration(PHS_HOURS, 1, nMetaMagic);
|
|
|
|
// Remove previous castings
|
|
PHS_RemoveMultipleSpellEffectsFromTarget(oTarget, PHS_SPELL_PRESTIDIGITATION,
|
|
PHS_SPELL_PRESTIDIGITATION_VFX1,
|
|
PHS_SPELL_PRESTIDIGITATION_VFX2,
|
|
PHS_SPELL_PRESTIDIGITATION_VFX3,
|
|
PHS_SPELL_PRESTIDIGITATION_VFX4,
|
|
PHS_SPELL_PRESTIDIGITATION_VFX5);
|
|
|
|
// Apply it for duration
|
|
PHS_ApplyDuration(oTarget, eDur, fDuration);
|
|
}
|
|
else
|
|
{
|
|
// Else it is, check if they do have the spell's effects, else fail.
|
|
if(!GetHasSpellEffect(PHS_SPELL_PRESTIDIGITATION, oCaster) &&
|
|
!GetHasSpellEffect(PHS_SPELL_PRESTIDIGITATION_VFX1, oCaster) &&
|
|
!GetHasSpellEffect(PHS_SPELL_PRESTIDIGITATION_VFX2, oCaster) &&
|
|
!GetHasSpellEffect(PHS_SPELL_PRESTIDIGITATION_VFX3, oCaster) &&
|
|
!GetHasSpellEffect(PHS_SPELL_PRESTIDIGITATION_VFX4, oCaster) &&
|
|
!GetHasSpellEffect(PHS_SPELL_PRESTIDIGITATION_VFX5, oCaster))
|
|
{
|
|
// Stop
|
|
return;
|
|
}
|
|
//const int PHS_SPELL_PRESTIDIGITATION_VFX1 = 101;
|
|
//const int PHS_SPELL_PRESTIDIGITATION_VFX2 = 102;
|
|
//const int PHS_SPELL_PRESTIDIGITATION_VFX3 = 103;
|
|
//const int PHS_SPELL_PRESTIDIGITATION_VFX4 = 104;
|
|
//const int PHS_SPELL_PRESTIDIGITATION_VFX5 = 105;
|
|
}
|
|
}
|