ModernUO/Projects/Scripts/Items/Weapons/Ranged/JukaBow.cs
2019-12-30 12:16:35 -08:00

91 lines
No EOL
2.3 KiB
C#

using Server.Targeting;
namespace Server.Items
{
[Flippable(0x13B2, 0x13B1)]
public class JukaBow : Bow
{
[Constructible]
public JukaBow()
{
}
public JukaBow(Serial serial) : base(serial)
{
}
public override int AosStrengthReq => 80;
public override int AosDexterityReq => 80;
public override int OldStrengthReq => 80;
public override int OldDexterityReq => 80;
[CommandProperty(AccessLevel.GameMaster)]
public bool IsModified => Hue == 0x453;
public override void OnDoubleClick(Mobile from)
{
if (IsModified)
{
from.SendMessage("That has already been modified.");
}
else if (!IsChildOf(from.Backpack))
{
from.SendMessage("This must be in your backpack to modify it.");
}
else if (from.Skills.Fletching.Base < 100.0)
{
from.SendMessage("Only a grandmaster bowcrafter can modify this weapon.");
}
else
{
from.BeginTarget(2, false, TargetFlags.None, OnTargetGears);
from.SendMessage("Select the gears you wish to use.");
}
}
public void OnTargetGears(Mobile from, object targ)
{
if (!(targ is Gears g) || !g.IsChildOf(from.Backpack))
{
from.SendMessage(
"Those are not gears."); // Apparently gears that aren't in your backpack aren't really gears at all. :-(
}
else if (IsModified)
{
from.SendMessage("That has already been modified.");
}
else if (!IsChildOf(from.Backpack))
{
from.SendMessage("This must be in your backpack to modify it.");
}
else if (from.Skills.Fletching.Base < 100.0)
{
from.SendMessage("Only a grandmaster bowcrafter can modify this weapon.");
}
else
{
g.Consume();
Hue = 0x453;
Slayer = (SlayerName)Utility.Random(2, 25);
from.SendMessage("You modify it.");
}
}
public override void Serialize(IGenericWriter writer)
{
base.Serialize(writer);
writer.Write(0); // version
}
public override void Deserialize(IGenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}