location lTarget; object oTarget; //Put this script OnEnter void main() { object oPC = GetEnteringObject(); if (!GetIsPC(oPC)) return; //if (GetLocalInt(OBJECT_SELF, "DM_USED")>= 1) // return; if (GetItemPossessedBy(oPC, "guilesecret")!= OBJECT_INVALID) { if(GetItemPossessedBy(oPC, "guildpass")!= OBJECT_INVALID) { oTarget = GetWaypointByTag("gway"); lTarget = GetLocation(oTarget); if (GetAreaFromLocation(lTarget)==OBJECT_INVALID) return; AssignCommand(oPC, ClearAllActions()); AssignCommand(oPC, ActionJumpToLocation(lTarget)); } } //No matter what this only happens ONE TIME EVER! //SetLocalInt(OBJECT_SELF, "DM_USED", 1); //End script }