74 lines
No EOL
1.8 KiB
C#
74 lines
No EOL
1.8 KiB
C#
using System;
|
|
using Server;
|
|
using Server.Items;
|
|
using Server.Mobiles;
|
|
using Server.Engines.Quests;
|
|
|
|
namespace Server.Engines.Quests.Haven
|
|
{
|
|
public class UzeraanTurmoilTeleporter : DynamicTeleporter
|
|
{
|
|
[Constructable]
|
|
public UzeraanTurmoilTeleporter()
|
|
{
|
|
}
|
|
|
|
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 UzeraanTurmoilTeleporter( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
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();
|
|
}
|
|
}
|
|
} |