Files
abysmal-isle/Scripts/Mobiles/NPCs/Beotham.cs
Unstable Kitsune b918192e4e Overwrite
Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
2023-11-28 23:20:26 -05:00

408 lines
11 KiB
C#

using System;
using Server.Items;
namespace Server.Engines.Quests
{
public class BrokenShaftQuest : BaseQuest
{
public BrokenShaftQuest()
: base()
{
this.AddObjective(new ObtainObjective(typeof(Arrow), "arrows", 10, 0xF3F));
this.AddReward(new BaseReward(typeof(FletcherCraftsmanSatchel), 1074282));
}
/* Broken Shaft */
public override object Title
{
get
{
return 1074018;
}
}
/* What do humans know of archery? Humans can barely shoot straight. Why, your efforts are
absurd. In fact, I will make a wager - if these so called human arrows I've heard about are
really as effective and innovative as human braggarts would have me believe, then I'll trade
you something useful. I might even teach you something of elven craftsmanship. */
public override object Description
{
get
{
return 1074112;
}
}
/* Fine then, I'm shall find another to run my errands then. */
public override object Refuse
{
get
{
return 1074063;
}
}
/* Hurry up! I don't have all day to wait for you to bring what I desire! */
public override object Uncomplete
{
get
{
return 1074064;
}
}
/* These human made goods are laughable! It offends so -- I must show you what elven skill is capable of! */
public override object Complete
{
get
{
return 1074065;
}
}
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 BendingTheBowQuest : BaseQuest
{
public BendingTheBowQuest()
: base()
{
this.AddObjective(new ObtainObjective(typeof(Bow), "bows", 10, 0x13B2));
this.AddReward(new BaseReward(typeof(FletcherCraftsmanSatchel), 1074282));
}
/* Bending the Bow */
public override object Title
{
get
{
return 1074019;
}
}
/* Human craftsmanship! Ha! Why, take an elven bow. It will last for a lifetime, never break and
always shoot an arrow straight and true. Can't say the same for a human, can you? Bring me some
of these human made bows, and I will show you. */
public override object Description
{
get
{
return 1074113;
}
}
/* Fine then, I'm shall find another to run my errands then. */
public override object Refuse
{
get
{
return 1074063;
}
}
/* Hurry up! I don't have all day to wait for you to bring what I desire! */
public override object Uncomplete
{
get
{
return 1074064;
}
}
/* These human made goods are laughable! It offends so -- I must show you what elven skill is capable of! */
public override object Complete
{
get
{
return 1074065;
}
}
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 ArmsRaceQuest : BaseQuest
{
public ArmsRaceQuest()
: base()
{
this.AddObjective(new ObtainObjective(typeof(Crossbow), "crossbows", 10, 0xF50));
this.AddReward(new BaseReward(typeof(FletcherCraftsmanSatchel), 1074282));
}
/* Arms Race */
public override object Title
{
get
{
return 1074020;
}
}
/* Leave it to a human to try and improve upon perfection. To take a bow and turn it into a mechanical
contraption like a crossbow. I wish to see more of this sort of "invention". Fetch for me a crossbow,
human. */
public override object Description
{
get
{
return 1074114;
}
}
/* Fine then, I'm shall find another to run my errands then. */
public override object Refuse
{
get
{
return 1074063;
}
}
/* Hurry up! I don't have all day to wait for you to bring what I desire! */
public override object Uncomplete
{
get
{
return 1074064;
}
}
/* These human made goods are laughable! It offends so -- I must show you what elven skill is capable of! */
public override object Complete
{
get
{
return 1074065;
}
}
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 ImprovedCrossbowsQuest : BaseQuest
{
public ImprovedCrossbowsQuest()
: base()
{
this.AddObjective(new ObtainObjective(typeof(HeavyCrossbow), "heavy crossbows", 10, 0x13FD));
this.AddReward(new BaseReward(typeof(FletcherCraftsmanSatchel), 1074282));
}
/* Improved Crossbows */
public override object Title
{
get
{
return 1074021;
}
}
/* How lazy is man! You cannot even be bothered to pull your own drawstring and hold an arrow ready? You
must invent a device to do it for you? I cannot understand, but perhaps if I examine a heavy crossbow for
myself, I will see their appeal. Go and bring me such a device and I will repay your meager favor. */
public override object Description
{
get
{
return 1074115;
}
}
/* Fine then, I'm shall find another to run my errands then. */
public override object Refuse
{
get
{
return 1074063;
}
}
/* Hurry up! I don't have all day to wait for you to bring what I desire! */
public override object Uncomplete
{
get
{
return 1074064;
}
}
/* These human made goods are laughable! It offends so -- I must show you what elven skill is capable of! */
public override object Complete
{
get
{
return 1074065;
}
}
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 BuildingTheBetterCrossbowQuest : BaseQuest
{
public BuildingTheBetterCrossbowQuest()
: base()
{
this.AddObjective(new ObtainObjective(typeof(RepeatingCrossbow), "repeating crossbow", 10, 0x26C3));
this.AddReward(new BaseReward(typeof(FletcherCraftsmanSatchel), 1074282));
}
/* Building the Better Crossbow */
public override object Title
{
get
{
return 1074022;
}
}
/* More is always better for a human, eh? Take these repeating crossbows. What sort of mind invents such a thing?
I must look at it more closely. Bring such a contraption to me and you'll receive a token for your efforts. */
public override object Description
{
get
{
return 1074116;
}
}
/* Fine then, I'm shall find another to run my errands then. */
public override object Refuse
{
get
{
return 1074063;
}
}
/* Hurry up! I don't have all day to wait for you to bring what I desire! */
public override object Uncomplete
{
get
{
return 1074064;
}
}
/* These human made goods are laughable! It offends so -- I must show you what elven skill is capable of! */
public override object Complete
{
get
{
return 1074065;
}
}
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 Beotham : MondainQuester
{
[Constructable]
public Beotham()
: base("Beotham", "the bowcrafter")
{
}
public Beotham(Serial serial)
: base(serial)
{
}
public override Type[] Quests
{
get
{
return new Type[]
{
typeof(BrokenShaftQuest),
typeof(BendingTheBowQuest),
typeof(ArmsRaceQuest),
typeof(ImprovedCrossbowsQuest),
typeof(BuildingTheBetterCrossbowQuest)
};
}
}
public override void InitBody()
{
this.InitStats(100, 100, 25);
this.Female = false;
this.CantWalk = true;
this.Race = Race.Elf;
this.Hue = 0x876C;
this.HairItemID = 0x2FC0;
this.HairHue = 0x238;
}
public override void InitOutfit()
{
this.AddItem(new Sandals(0x901));
this.AddItem(new LongPants(0x52C));
this.AddItem(new FancyShirt(0x546));
Item item;
item = new LeafGloves();
item.Hue = 0x901;
this.AddItem(item);
}
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();
}
}
}