218 lines
No EOL
5.1 KiB
C#
218 lines
No EOL
5.1 KiB
C#
using Server.Items;
|
|
using Server.Mobiles;
|
|
|
|
namespace Server.Engines.Quests.Ninja
|
|
{
|
|
public class FindEminoBeginObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063174;
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation(new FindZoelConversation());
|
|
}
|
|
}
|
|
|
|
public class FindZoelObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063176;
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation(new EnterCaveConversation());
|
|
}
|
|
}
|
|
|
|
public class EnterCaveObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063179;
|
|
|
|
public override void CheckProgress()
|
|
{
|
|
if (System.From.Map == Map.Malas && System.From.InRange(new Point3D(406, 1141, 0), 2))
|
|
Complete();
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation(new SneakPastGuardiansConversation());
|
|
}
|
|
}
|
|
|
|
public class SneakPastGuardiansObjective : QuestObjective
|
|
{
|
|
public bool TaughtHowToUseSkills{ get; set; }
|
|
|
|
public override object Message => 1063261;
|
|
|
|
public override void CheckProgress()
|
|
{
|
|
if (System.From.Map == Map.Malas && System.From.InRange(new Point3D(412, 1123, 0), 3))
|
|
Complete();
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation(new UseTeleporterConversation());
|
|
}
|
|
|
|
public override void ChildDeserialize(GenericReader reader)
|
|
{
|
|
int version = reader.ReadEncodedInt();
|
|
|
|
TaughtHowToUseSkills = reader.ReadBool();
|
|
}
|
|
|
|
public override void ChildSerialize(GenericWriter writer)
|
|
{
|
|
writer.WriteEncodedInt(0); // version
|
|
|
|
writer.Write(TaughtHowToUseSkills);
|
|
}
|
|
}
|
|
|
|
public class UseTeleporterObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063183;
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation(new GiveZoelNoteConversation());
|
|
}
|
|
}
|
|
|
|
public class GiveZoelNoteObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063185;
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation(new GainInnInformationConversation());
|
|
}
|
|
}
|
|
|
|
public class GainInnInformationObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063190;
|
|
|
|
public override void CheckProgress()
|
|
{
|
|
Mobile from = System.From;
|
|
|
|
if (from.Map == Map.Malas && from.X > 399 && from.X < 408 && from.Y > 1091 && from.Y < 1099)
|
|
Complete();
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation(new ReturnFromInnConversation());
|
|
}
|
|
}
|
|
|
|
public class ReturnFromInnObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063197;
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation(new SearchForSwordConversation());
|
|
}
|
|
}
|
|
|
|
public class SearchForSwordObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063200;
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation(new HallwayWalkConversation());
|
|
}
|
|
}
|
|
|
|
public class HallwayWalkObjective : QuestObjective
|
|
{
|
|
public bool StolenTreasure{ get; set; }
|
|
|
|
public override object Message => 1063202;
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation(new ReturnSwordConversation());
|
|
}
|
|
|
|
public override void ChildDeserialize(GenericReader reader)
|
|
{
|
|
int version = reader.ReadEncodedInt();
|
|
|
|
StolenTreasure = reader.ReadBool();
|
|
}
|
|
|
|
public override void ChildSerialize(GenericWriter writer)
|
|
{
|
|
writer.WriteEncodedInt(0); // version
|
|
|
|
writer.Write(StolenTreasure);
|
|
}
|
|
}
|
|
|
|
public class ReturnSwordObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063204;
|
|
|
|
public override void CheckProgress()
|
|
{
|
|
Mobile from = System.From;
|
|
|
|
if (from.Map != Map.Malas || from.Y > 992)
|
|
Complete();
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation(new SlayHenchmenConversation());
|
|
}
|
|
}
|
|
|
|
public class SlayHenchmenObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063206;
|
|
|
|
public override int MaxProgress => 3;
|
|
|
|
public override void RenderProgress(BaseQuestGump gump)
|
|
{
|
|
if (!Completed)
|
|
{
|
|
// Henchmen killed:
|
|
gump.AddHtmlLocalized(70, 260, 270, 100, 1063207, BaseQuestGump.Blue);
|
|
gump.AddLabel(70, 280, 0x64, CurProgress.ToString());
|
|
gump.AddLabel(100, 280, 0x64, "/");
|
|
gump.AddLabel(130, 280, 0x64, MaxProgress.ToString());
|
|
}
|
|
else
|
|
{
|
|
base.RenderProgress(gump);
|
|
}
|
|
}
|
|
|
|
public override void OnKill(BaseCreature creature, Container corpse)
|
|
{
|
|
if (creature is Henchman)
|
|
CurProgress++;
|
|
}
|
|
|
|
public override void OnComplete()
|
|
{
|
|
System.AddConversation(new GiveEminoSwordConversation());
|
|
}
|
|
}
|
|
|
|
public class GiveEminoSwordObjective : QuestObjective
|
|
{
|
|
public override object Message => 1063210;
|
|
|
|
public override void OnComplete()
|
|
{
|
|
}
|
|
}
|
|
} |