HiddenTradition_PRC8/_module/nss/ro_m_entry_port.nss
2024-06-20 15:47:42 -04:00

78 lines
1.4 KiB
Plaintext

object oDeny;
void main()
{
object oPC = GetLastUsedBy();
if (!GetIsPC(oPC)) return;
//Allows PC to spawn in directly @ Blade's Retreat if wearing Elven Resistance Amulet
if (GetTag(GetItemInSlot(INVENTORY_SLOT_NECK, oPC)) == "it_ElvenResistanceAmulet")
{
AssignCommand(oPC, ClearAllActions());
object oTarget;
location lTarget;
oTarget = GetWaypointByTag("WP_BLADES_RETREAT");
lTarget = GetLocation(oTarget);
if (GetAreaFromLocation(lTarget)==OBJECT_INVALID) return;
AssignCommand(oPC, ActionJumpToLocation(lTarget));
return;
}
//Allows PC to spawn in directly @ fREMMY'S if wearing Thievery Amulet
if (GetTag(GetItemInSlot(INVENTORY_SLOT_NECK, oPC)) == "AmuletofThievery")
{
AssignCommand(oPC, ClearAllActions());
object oTarget;
location lTarget;
oTarget = GetWaypointByTag("WP_FREMMY_TP");
lTarget = GetLocation(oTarget);
if (GetAreaFromLocation(lTarget)==OBJECT_INVALID) return;
AssignCommand(oPC, ActionJumpToLocation(lTarget));
return;
}
//checks PC level to see if they start in Montsegur or Ascalon
if (!(GetHitDice(oPC) >= 8))
{
oDeny = GetWaypointByTag("WP_VillageShrine");
AssignCommand(oPC, JumpToObject(oDeny));
return;
}
AssignCommand(oPC, ClearAllActions());
object oTarget;
oTarget = GetWaypointByTag("WP_AscalonBoat");
AssignCommand(oPC, ActionJumpToObject(oTarget));
}