73 lines
2.2 KiB
C#
73 lines
2.2 KiB
C#
using System;
|
|
using Server.Mobiles;
|
|
|
|
namespace Server.Engines.Quests.Haven
|
|
{
|
|
public class UzeraanTurmoilTeleporter : DynamicTeleporter
|
|
{
|
|
[Constructable]
|
|
public UzeraanTurmoilTeleporter()
|
|
{
|
|
}
|
|
|
|
public UzeraanTurmoilTeleporter(Serial serial)
|
|
: base(serial)
|
|
{
|
|
}
|
|
|
|
public override bool GetDestination(PlayerMobile player, ref Point3D loc, ref Map map)
|
|
{
|
|
QuestSystem qs = player.Quest;
|
|
|
|
if (qs is UzeraanTurmoilQuest)
|
|
{
|
|
if (qs.IsObjectiveInProgress(typeof(FindSchmendrickObjective)) ||
|
|
qs.IsObjectiveInProgress(typeof(FindApprenticeObjective)) ||
|
|
UzeraanTurmoilQuest.HasLostScrollOfPower(player))
|
|
{
|
|
loc = new Point3D(5222, 1858, 0);
|
|
map = Map.Trammel;
|
|
return true;
|
|
}
|
|
else if (qs.IsObjectiveInProgress(typeof(FindDryadObjective)) ||
|
|
UzeraanTurmoilQuest.HasLostFertileDirt(player))
|
|
{
|
|
loc = new Point3D(3557, 2690, 2);
|
|
map = Map.Trammel;
|
|
return true;
|
|
}
|
|
else if (player.Profession != 5 // paladin
|
|
&&
|
|
(qs.IsObjectiveInProgress(typeof(GetDaemonBoneObjective)) ||
|
|
UzeraanTurmoilQuest.HasLostDaemonBone(player)))
|
|
{
|
|
loc = new Point3D(3422, 2653, 48);
|
|
map = Map.Trammel;
|
|
return true;
|
|
}
|
|
else if (qs.IsObjectiveInProgress(typeof(CashBankCheckObjective)))
|
|
{
|
|
loc = new Point3D(3624, 2610, 0);
|
|
map = Map.Trammel;
|
|
return true;
|
|
}
|
|
}
|
|
|
|
return false;
|
|
}
|
|
|
|
public override void Serialize(GenericWriter writer)
|
|
{
|
|
base.Serialize(writer);
|
|
|
|
writer.Write((int)0); // version
|
|
}
|
|
|
|
public override void Deserialize(GenericReader reader)
|
|
{
|
|
base.Deserialize(reader);
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
} |