context: using System;
  using Server.Items;
  using Server.Mobiles;
  
  namespace Server.Engines.Quests
  { 
      public class DaemonicPrismQuest : BaseQuest
      { 
          public DaemonicPrismQuest()
              : base()
          { 
              this.AddObjective(new SlayObjective(typeof(CrystalDaemon), "crystal daemons", 3, "Prism of Light"));
  			
              this.AddReward(new BaseReward(typeof(LargeTreasureBag), 1072706));
          }
  
          /* Daemonic Prism */
          public override object Title
          {
              get
              {
                  return 1073053;
              }
          }
          /* Good, you're here.  The presence of a twisted creature deep under the earth near Nu'Jelm has 
          corrupted the natural growth of crystals in that region.  They've become infused with the 
          twisting energy - they've come to a sort of life.  This is an abomination that festers within 
          Sosaria. You must eradicate the crystal daemons. */
          public override object Description
          {
              get
              {
                  return 1074668;
              }
          }
          /* These abominations must not be permitted to fester! */
          public override object Refuse
          {
              get
              {
                  return 1074671;
              }
          }
          /* You must not waste time. Do not suffer these crystalline abominations to live. */
          public override object Uncomplete
          {
              get
              {
                  return 1074672;
              }
          }
          /* You have done well.  Enjoy this reward. */
          public override object Complete
          {
              get
              {
                  return 1074673;
              }
          }
          public override bool CanOffer()
          {
              return MondainsLegacy.PrismOfLight;
          }
  
          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();
          }
      }
  
      public class HowManyHeadsQuest : BaseQuest
      { 
          public HowManyHeadsQuest()
              : base()
          { 
              this.AddObjective(new SlayObjective(typeof(CrystalHydra), "crystal hydras", 3, "Prism of Light"));
  			
              this.AddReward(new BaseReward(typeof(LargeTreasureBag), 1072706));
          }
  
          /* How Many Heads? */
          public override object Title
          {
              get
              {
                  return 1073050;
              }
          }
          /* Good, you're here.  The presence of a twisted creature deep under the earth near Nu'Jelm has 
          corrupted the natural growth of crystals in that region.  They've become infused with the twisting 
          energy - they've come to a sort of life.  This is an abomination that festers within Sosaria. You 
          must eradicate the crystal hydras. */
          public override object Description
          {
              get
              {
                  return 1074674;
              }
          }
          /* These abominations must not be permitted to fester! */
          public override object Refuse
          {
              get
              {
                  return 1074671;
              }
          }
          /* You must not waste time. Do not suffer these crystalline abominations to live. */
          public override object Uncomplete
          {
              get
              {
                  return 1074672;
              }
          }
          /* You have done well.  Enjoy this reward. */
          public override object Complete
          {
              get
              {
                  return 1074673;
              }
          }
          public override bool CanOffer()
          {
              return MondainsLegacy.PrismOfLight;
          }
  
          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();
          }
      }
  
      public class GlassyFoeQuest : BaseQuest
      { 
          public GlassyFoeQuest()
              : base()
          { 
              this.AddObjective(new SlayObjective(typeof(CrystalLatticeSeeker), "crystal lattice seekers", 5, "Prism of Light"));
  			
              this.AddReward(new BaseReward(typeof(LargeTreasureBag), 1072706));
          }
  
          /* Glassy Foe */
          public override object Title
          {
              get
              {
                  return 1073055;
              }
          }
          /* Good, you're here.  The presence of a twisted creature deep under the earth near Nu'Jelm has 
          corrupted the natural growth of crystals in that region.  They've become infused with the twisting 
          energy - they've come to a sort of life.  This is an abomination that festers within Sosaria.  You 
          must eradicate the crystal lattice seekers. */
          public override object Description
          {
              get
              {
                  return 1074669;
              }
          }
          /* These abominations must not be permitted to fester! */
          public override object Refuse
          {
              get
              {
                  return 1074671;
              }
          }
          /* You must not waste time. Do not suffer these crystalline abominations to live. */
          public override object Uncomplete
          {
              get
              {
                  return 1074672;
              }
          }
          /* You have done well.  Enjoy this reward. */
          public override object Complete
          {
              get
              {
                  return 1074673;
              }
          }
          public override bool CanOffer()
          {
              return MondainsLegacy.PrismOfLight;
          }
  
          public override void Serialize(GenericWriter writer)
          {
              base.Serialize(writer);
  
              writer.Write((int)0); // version
          }
  
          public override void Deserialize(GenericReader reader)
          {
              base.Deserialize(reader);
  
  
gt:             int version = reader.ReadInt();