Files
HeroesStone_PRC8/_module/nss/rogueonlydoor.nss
Jaysyn904 1eefc84201 Initial Commit
Initial Commit.
2025-09-14 15:40:46 -04:00

81 lines
2.5 KiB
Plaintext

///////////////////////////////////////
// Door Script - Allows on rogues to enter
//
////////////////////////////////////////
#include "prc_class_const"
void main()
{
DelayCommand(10.0, ActionCloseDoor(OBJECT_SELF));
object oClicker = GetClickingObject();
object oTarget = GetTransitionTarget(OBJECT_SELF);
location lLoc = GetLocation(oTarget);
location lLoc2 = GetLocation(GetObjectByTag("WP_Throw_out"));
int iRogue = GetLevelByClass(CLASS_TYPE_ROGUE, oClicker)
+ GetLevelByClass(CLASS_TYPE_SCOUT, oClicker)
+ GetLevelByClass(CLASS_TYPE_BEGUILER, oClicker)
+ GetLevelByClass(CLASS_TYPE_NINJA, oClicker)
+ GetLevelByClass(CLASS_TYPE_FACTOTUM, oClicker)
+ GetLevelByClass(CLASS_TYPE_ASSASSIN, oClicker)
+ GetLevelByClass(CLASS_TYPE_ARCTRICK, oClicker)
+ GetLevelByClass(CLASS_TYPE_HANDOTWM, oClicker)
+ GetLevelByClass(CLASS_TYPE_NIGHTSHADE, oClicker)
+ GetLevelByClass(CLASS_TYPE_NINJA_SPY, oClicker)
+ GetLevelByClass(CLASS_TYPE_SHADOWLORD, oClicker)
+ GetLevelByClass(CLASS_TYPE_SHADOW_SUN_NINJA, oClicker)
+ GetLevelByClass(CLASS_TYPE_SHADOW_THIEF_AMN, oClicker)
+ GetLevelByClass(CLASS_TYPE_UNSEEN_SEER, oClicker)
+ GetLevelByClass(CLASS_TYPE_PSYCHIC_ROGUE, oClicker);
// Check if the PC has any levels in Paladin (works across all 8 class slots)
if (iRogue > 0)
AssignCommand(oClicker, JumpToLocation(lLoc));
else
AssignCommand(oClicker, JumpToLocation(lLoc2));
}
/* void main()
{
DelayCommand(10.0, ActionCloseDoor(OBJECT_SELF));
object oClicker = GetClickingObject();
object oTarget = GetTransitionTarget(OBJECT_SELF);
location lLoc = GetLocation(oTarget);
location lLoc2 = GetLocation(GetObjectByTag("WP_Throw_out"));
int oClass_1 = GetClassByPosition(1, oClicker);
int oClass_2 = GetClassByPosition(2, oClicker);
int oClass_3 = GetClassByPosition(3, oClicker);
int iPassed = 0;
if ((oClass_1==CLASS_TYPE_ROGUE)||(oClass_1==CLASS_TYPE_ROGUE))
iPassed = 1 ;
if((iPassed == 0) && (oClass_1==CLASS_TYPE_ROGUE))
iPassed = 1 ;
if ((oClass_2==CLASS_TYPE_ROGUE)||(oClass_2==CLASS_TYPE_ROGUE))
iPassed = 1 ;
if((iPassed == 0) && (oClass_2==CLASS_TYPE_ROGUE))
iPassed = 1 ;
if ((oClass_3==CLASS_TYPE_ROGUE)||(oClass_3==CLASS_TYPE_ROGUE))
iPassed = 1 ;
if((iPassed == 0) && (oClass_3==CLASS_TYPE_ROGUE))
iPassed = 1 ;
switch (iPassed)
{
case 0:
AssignCommand(oClicker,JumpToLocation(lLoc2));
break;
case 1:
AssignCommand(oClicker,JumpToLocation(lLoc));
break;
}
} */