170 lines
4.7 KiB
C#
170 lines
4.7 KiB
C#
using System;
|
|
using Server;
|
|
|
|
namespace Server.Items
|
|
{
|
|
public class UnknownBardSkeleton : BaseContainer
|
|
{
|
|
public override int DefaultGumpID { get { return 0x9; } }
|
|
|
|
[Constructable]
|
|
public UnknownBardSkeleton()
|
|
: base(0xECA + Utility.Random(9))
|
|
{
|
|
Name = "An Unknown Bard's Skeleton";
|
|
Weight = 35.0;
|
|
|
|
DropItem(new Gold(Utility.RandomMinMax(200, 400)));
|
|
DropItem(new Doublet(Utility.RandomNondyedHue()));
|
|
DropItem(new JesterHat(Utility.RandomNondyedHue()));
|
|
DropItem(new Bandage(Utility.RandomMinMax(10, 20)));
|
|
|
|
switch (Utility.Random(2))
|
|
{
|
|
case 0: DropItem(new Kilt(Utility.RandomNondyedHue())); break;
|
|
case 1: DropItem(new ShortPants(Utility.RandomNondyedHue())); break;
|
|
}
|
|
|
|
switch (Utility.Random(3))
|
|
{
|
|
case 0: DropItem(new BeverageBottle(BeverageType.Ale)); break;
|
|
case 1: DropItem(new BeverageBottle(BeverageType.Wine)); break;
|
|
case 2: DropItem(new BeverageBottle(BeverageType.Liquor)); break;
|
|
}
|
|
|
|
DropItem(Loot.RandomInstrument());
|
|
}
|
|
|
|
public UnknownBardSkeleton(Serial serial)
|
|
: base(serial)
|
|
{
|
|
}
|
|
|
|
public override void Serialize(GenericWriter writer)
|
|
{
|
|
base.Serialize(writer);
|
|
|
|
writer.WriteEncodedInt(0); // version
|
|
}
|
|
|
|
public override void Deserialize(GenericReader reader)
|
|
{
|
|
base.Deserialize(reader);
|
|
|
|
int version = reader.ReadEncodedInt();
|
|
}
|
|
}
|
|
|
|
public class UnknownRogueSkeleton : BaseContainer
|
|
{
|
|
public override int DefaultGumpID { get { return 0x9; } }
|
|
|
|
[Constructable]
|
|
public UnknownRogueSkeleton()
|
|
: base(0xECA + Utility.Random(9))
|
|
{
|
|
Name = "An Unknown Rogue's Skeleton";
|
|
Weight = 35.0;
|
|
|
|
DropItem(new LeatherChest());
|
|
DropItem(new LeatherGloves());
|
|
DropItem(new LeatherArms());
|
|
DropItem(new Dagger());
|
|
DropItem(new Shovel(50));
|
|
DropItem(new Lockpick(Utility.RandomMinMax(1, 4)));
|
|
|
|
if (Utility.RandomBool())
|
|
DropItem(new Torch());
|
|
else
|
|
DropItem(new Lantern());
|
|
|
|
if (0.1 >= Utility.RandomDouble())
|
|
DropItem(Loot.RandomRangedWeapon());
|
|
else
|
|
DropItem(Loot.RandomWeapon());
|
|
|
|
DropItem(new TreasureMap(Utility.RandomMinMax(3, 5), Map.Felucca));
|
|
}
|
|
|
|
public UnknownRogueSkeleton(Serial serial)
|
|
: base(serial)
|
|
{
|
|
}
|
|
|
|
public override void Serialize(GenericWriter writer)
|
|
{
|
|
base.Serialize(writer);
|
|
|
|
writer.WriteEncodedInt(0); // version
|
|
}
|
|
|
|
public override void Deserialize(GenericReader reader)
|
|
{
|
|
base.Deserialize(reader);
|
|
|
|
int version = reader.ReadEncodedInt();
|
|
}
|
|
}
|
|
|
|
public class UnknownMageSkeleton : BaseContainer
|
|
{
|
|
public override int DefaultGumpID { get { return 0x9; } }
|
|
|
|
[Constructable]
|
|
public UnknownMageSkeleton()
|
|
: base(0xECA + Utility.Random(9))
|
|
{
|
|
Name = "An Unknown Mage's Skeleton";
|
|
Weight = 35.0;
|
|
|
|
DropItem(new Robe(Utility.RandomNondyedHue()));
|
|
DropItem(new Sandals());
|
|
DropItem(Loot.RandomJewelry());
|
|
|
|
if (Utility.RandomBool())
|
|
DropItem(new QuarterStaff());
|
|
else
|
|
DropItem(new GnarledStaff());
|
|
|
|
Item item;
|
|
|
|
for (int i = 0; i < 3; i++)
|
|
{
|
|
item = Loot.RandomReagent();
|
|
item.Amount = Utility.RandomMinMax(15, 20);
|
|
DropItem(item);
|
|
}
|
|
|
|
for (int i = 0; i < 3; i++)
|
|
{
|
|
if (0.25 >= Utility.RandomDouble())
|
|
item = Loot.RandomScroll(0, Loot.NecromancyScrollTypes.Length, SpellbookType.Necromancer);
|
|
else
|
|
item = Loot.RandomScroll(0, Loot.RegularScrollTypes.Length, SpellbookType.Regular);
|
|
|
|
item.Amount = Utility.RandomMinMax(1, 2);
|
|
DropItem(item);
|
|
}
|
|
}
|
|
|
|
public UnknownMageSkeleton(Serial serial)
|
|
: base(serial)
|
|
{
|
|
}
|
|
|
|
public override void Serialize(GenericWriter writer)
|
|
{
|
|
base.Serialize(writer);
|
|
|
|
writer.WriteEncodedInt(0); // version
|
|
}
|
|
|
|
public override void Deserialize(GenericReader reader)
|
|
{
|
|
base.Deserialize(reader);
|
|
|
|
int version = reader.ReadEncodedInt();
|
|
}
|
|
}
|
|
}
|