context: using System;
  using Server.Items;
  
  namespace Server.Engines.Quests
  {
      public class TheAncientWorldQuest : BaseQuest
      {
          public TheAncientWorldQuest()
          {
              AddObjective(new ObtainObjective(typeof (MapFragment), "fragment of a map", 1));
  
              AddReward(new BaseReward(1074876)); // Knowledge of the legendary minotaur.
          }
  
          public override QuestChain ChainID
          {
              get { return QuestChain.AncientWorld; }
          }
  
          public override Type NextQuest
          {
              get { return typeof (TheGoldenHornQuest); }
          }
  
          /* The Ancient World */
  
          public override object Title
          {
              get { return 1074534; }
          }
  
          /* The lore of my people mentions Mondain many times. In one tale, it is 
          revealed that he created and enslaved a race -- a sort of man bull, known 
          as a 'minotaur'. The tales speak of mighty warriors who charged with 
          blood-soaked horns into the heat of battle.  But, alas, the fate of the 
          bull-men is unknown after the rupture.  Will you seek information about 
          their civilization? */
  
          public override object Description
          {
              get { return 1074535; }
          }
  
          /* I am disappointed, but I respect your decision. */
  
          public override object Refuse
          {
              get { return 1074538; }
          }
  
          /* A traveler has told me that worshippers of Mondain still exist and 
          wander the land.  Perhaps their lore speaks of whether the bull-men 
          survived.  I do not think they share their secrets gladly.  You may 
          need to be 'persuasive'. */
  
          public override object Uncomplete
          {
              get { return 1074539; }
          }
  
          /* What have you found? */
  
          public override object Complete
          {
              get { return 1074542; }
          }
  
          public override bool CanOffer()
          {
              return MondainsLegacy.Labyrinth;
          }
  
          public override void OnCompleted()
          {
              Owner.SendLocalizedMessage(1074541, null, 0x23); // You have discovered an important clue!						
              Owner.PlaySound(CompleteSound);
          }
  
          public override void Serialize(GenericWriter writer)
          {
              base.Serialize(writer);
  
              writer.Write(0); // version
          }
  
          public override void Deserialize(GenericReader reader)
          {
              base.Deserialize(reader);
  
              var version = reader.ReadInt();
          }
      }
  
      public class TheGoldenHornQuest : BaseQuest
      {
          public TheGoldenHornQuest()
          {
              AddObjective(new DeliverObjective(typeof (MapFragment), "fragment of a map", 1, typeof (Braen),
                  "Braen (The Heartwood)"));
  
              AddReward(new BaseReward(1074876)); // Knowledge of the legendary minotaur.
          }
  
          public override QuestChain ChainID
          {
              get { return QuestChain.AncientWorld; }
          }
  
          public override Type NextQuest
          {
              get { return typeof (BullishQuest); }
          }
  
          /* The Golden Horn */
  
          public override object Title
          {
              get { return 1074543; }
          }
  
          /* Ah ha!  You see here ... and over here ... The map fragment places the 
          city of the bull-men, Labyrinth, on that piece of Sosaria that was thrown 
          into the sky. Hmmm, I would have you go there and find any artifacts that 
          remain that help tell the story.  But, legend speaks of a mighty barrier 
          to prevent invasion of the city. Take this map to Braen and explain the 
          problem. Perhaps he can devise a solution. */
  
          public override object Description
          {
              get { return 1074545; }
          }
  
          /* I am disappointed, but I respect your decision. */
  
          public override object Refuse
          {
              get { return 1074538; }
          }
  
          /* Braen is nearby, run and speak with him. */
  
          public override object Uncomplete
          {
              get { return 1074547; }
          }
  
          /* Yes?  What do you want?  I'm very busy. */
  
          public override object Complete
          {
              get { return 1074549; }
          }
  
          public override bool CanOffer()
          {
              return MondainsLegacy.Labyrinth;
          }
  
          public override void Serialize(GenericWriter writer)
          {
              base.Serialize(writer);
  
              writer.Write(0); // version
          }
  
          public override void Deserialize(GenericReader reader)
          {
              base.Deserialize(reader);
  
              var version = reader.ReadInt();
          }
      }
  
      public class BullishQuest : BaseQuest
      {
          public BullishQuest()
          {
              AddObjective(new ObtainObjective(typeof (GamanHorns), "gaman horns", 20, 0x1084));
  
              AddReward(new BaseReward(1074876)); // Knowledge of the legendary minotaur.
          }
  
          public override QuestChain ChainID
          {
              get { return QuestChain.AncientWorld; }
          }
  
          public override Type NextQuest
          {
              get { return typeof (LostCivilizationQuest); }
          }
  
          /* Bullish */
  
          public override object Title
          {
              get { return 1074550; }
          }
  
          /* Oh, I see. I will need some materials to infuse you with the essence of a 
          bull-man, so you can fool their defenses.  The most similar beast to the original 
          Baratarian bull that the minotaur were bred from is undoubtedly the mighty Gaman, 
          native to the Lands of the Feudal Lords.  I need horns, in great quantity to 
          undertake this magic. */
  
          public override object Description
          {
              get { return 1074552; }
          }
  
          /* Oh come now, don't be afraid.  The magic won't harm you. */
  
          public override object Refuse
          {
              get { return 1074554; }
          }
  
          /* I cannot grant you the ability to pass through the bull-men's defenses without 
          the gaman horns. */
  
          public override object Uncomplete
          {
              get { return 1074555; }
          }
  
          /* You've returned at last!  Give me just a moment to examine what you've brought 
          and I can perform the magic that will allow you enter the Labyrinth. */
  
          public override object Complete
          {
              get { return 1074556; }
          }
  
          public override bool CanOffer()
          {
              return MondainsLegacy.Labyrinth;
          }
  
          public override void Serialize(GenericWriter writer)
          {
              base.Serialize(writer);
  
              writer.Write(0); // version
          }
  
          public override void Deserialize(GenericReader reader)
          {
              base.Deserialize(reader);
  
              var version = reader.ReadInt();
          }
      }
  
      public class LostCivilizationQuest : BaseQuest
      {
          public LostCivilizationQuest()
          {
              AddObjective(new ObtainObjective(typeof (MinotaurArtifact), "minotaur artifacts", 3));
  
              AddReward(new BaseReward(typeof (RewardBox), 1072584)); // A strongbox.
          }
  
          public override QuestChain ChainID
          {
  
gt:             get { return QuestChain.AncientWorld; }