#include "prc_class_const" void main() { object oPlayer = GetItemActivator(); int iRogue = GetLevelByClass(CLASS_TYPE_ROGUE, oPlayer) + GetLevelByClass(CLASS_TYPE_SCOUT, oPlayer) + GetLevelByClass(CLASS_TYPE_NINJA, oPlayer) + GetLevelByClass(CLASS_TYPE_FACTOTUM, oPlayer) + GetLevelByClass(CLASS_TYPE_PSYCHIC_ROGUE, oPlayer); if((iRogue >= 25) || GetLevelByClass(CLASS_TYPE_ASSASSIN, oPlayer) >= 25 || GetLevelByClass(CLASS_TYPE_RANGER, oPlayer) >= 25 || GetLevelByClass(CLASS_TYPE_SHADOWDANCER, oPlayer) >= 25) { effect eVis = EffectVisualEffect(VFX_DUR_MAGICAL_SIGHT); effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE); effect eSight = EffectSeeInvisible(); effect eLink = EffectLinkEffects(eVis, eSight); eLink = EffectLinkEffects(eLink, eDur); SignalEvent(oPlayer, EventSpellCastAt(oPlayer, SPELL_SEE_INVISIBILITY, FALSE)); int nDuration = 20; ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oPlayer, TurnsToSeconds(nDuration)); } else{ FloatingTextStringOnCreature("Your Ranger/Rogue/Assassin/Shadow_Dancer abilites are still too low", oPlayer); } }