Files
Anphillia_PRC8/_removed/nw_s2_divtrick.nss
Jaysyn904 28cdb617b3 Initial commit
Adding all of the current content for Anphillia Unlimited.
2024-01-04 07:49:38 -05:00

54 lines
2.1 KiB
Plaintext

//::///////////////////////////////////////////////
//:: Divine Trickery
//:: NW_S2_DivTrick.nss
//:: Copyright (c) 2001 Bioware Corp.
//:://////////////////////////////////////////////
/*
Grants the user a bonus to Search, Disable Traps,
Move Silently, Open Lock , Pick Pockets
Set Trap for 5 Turns + Chr Mod
*/
/*
Anphillia Changes
Changed Skill Bonus to 1 + 1/4 Levels instead of 1 + 1/2 Levels
*/
//:://////////////////////////////////////////////
//:: Created By: Preston Watamaniuk
//:: Created On: November 9, 2001
//:://////////////////////////////////////////////
void main()
{
object oTarget = GetSpellTargetObject();
int nDuration = 5 + GetAbilityModifier(ABILITY_CHARISMA);
int nLevel = GetLevelByClass(CLASS_TYPE_CLERIC);
nLevel = 1 + nLevel/4; // Original: nLevel = 1 + nLevel/2;
//Declare major variables
effect eSearch = EffectSkillIncrease(SKILL_SEARCH, nLevel);
effect eDisable = EffectSkillIncrease(SKILL_DISABLE_TRAP, nLevel);
effect eMove = EffectSkillIncrease(SKILL_MOVE_SILENTLY, nLevel);
effect eOpen = EffectSkillIncrease(SKILL_OPEN_LOCK, nLevel);
effect ePick = EffectSkillIncrease(SKILL_PICK_POCKET, nLevel);
effect eHide = EffectSkillIncrease(SKILL_HIDE, nLevel);
effect ePers = EffectSkillIncrease(SKILL_PERSUADE, nLevel);
effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE);
//Link Effects
effect eLink = EffectLinkEffects(eSearch, eDisable);
eLink = EffectLinkEffects(eLink, eMove);
eLink = EffectLinkEffects(eLink, eOpen);
eLink = EffectLinkEffects(eLink, ePick);
eLink = EffectLinkEffects(eLink, eHide);
eLink = EffectLinkEffects(eLink, ePers);
eLink = EffectLinkEffects(eLink, eDur);
effect eVis = EffectVisualEffect(VFX_IMP_MAGICAL_VISION);
//Fire cast spell at event for the specified target
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELLABILITY_DIVINE_TRICKERY, FALSE));
//Apply the VFX impact and effects
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, TurnsToSeconds(nDuration));
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
}