35 lines
1.2 KiB
Plaintext
35 lines
1.2 KiB
Plaintext
#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);
|
|
}
|
|
|
|
}
|
|
|