Overwrite

Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
Unstable Kitsune
2023-11-28 23:20:26 -05:00
parent 3cd54811de
commit b918192e4e
11608 changed files with 2644205 additions and 47 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,232 @@
using System;
namespace Server.Items
{
public class AquariumFishNet : SpecialFishingNet
{
[Constructable]
public AquariumFishNet()
{
this.ItemID = 0xDC8;
if (this.Hue == 0x8A0)
this.Hue = 0x240;
}
public AquariumFishNet(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074463;
}
}// An aquarium fishing net
public override bool RequireDeepWater
{
get
{
return false;
}
}
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();
}
protected override void AddNetProperties(ObjectPropertyList list)
{
}
protected override void FinishEffect(Point3D p, Map map, Mobile from)
{
if (from.Skills.Fishing.Value < 10)
{
from.SendLocalizedMessage(1074487); // The creatures are too quick for you!
}
else
{
BaseFish fish = this.GiveFish(from);
FishBowl bowl = Aquarium.GetEmptyBowl(from);
if (bowl != null)
{
fish.StopTimer();
bowl.AddItem(fish);
from.SendLocalizedMessage(1074489); // A live creature jumps into the fish bowl in your pack!
this.Delete();
return;
}
else
{
if (from.PlaceInBackpack(fish))
{
from.PlaySound(0x5A2);
from.SendLocalizedMessage(1074490); // A live creature flops around in your pack before running out of air.
fish.Kill();
this.Delete();
return;
}
else
{
fish.Delete();
from.SendLocalizedMessage(1074488); // You could not hold the creature.
}
}
}
this.InUse = false;
this.Movable = true;
if (!from.PlaceInBackpack(this))
{
if (from.Map == null || from.Map == Map.Internal)
this.Delete();
else
this.MoveToWorld(from.Location, from.Map);
}
}
private BaseFish GiveFish(Mobile from)
{
double skill = from.Skills.Fishing.Value;
if ((skill / 100.0) >= Utility.RandomDouble())
{
int max = (int)skill / 5;
if (max > 20)
max = 20;
switch ( Utility.Random(max) )
{
case 0:
return new MinocBlueFish();
case 1:
return new Shrimp();
case 2:
return new FandancerFish();
case 3:
return new GoldenBroadtail();
case 4:
return new RedDartFish();
case 5:
return new AlbinoCourtesanFish();
case 6:
return new MakotoCourtesanFish();
case 7:
return new NujelmHoneyFish();
case 8:
return new Jellyfish();
case 9:
return new SpeckledCrab();
case 10:
return new LongClawCrab();
case 11:
return new AlbinoFrog();
case 12:
return new KillerFrog();
case 13:
return new VesperReefTiger();
case 14:
return new PurpleFrog();
case 15:
return new BritainCrownFish();
case 16:
return new YellowFinBluebelly();
case 17:
return new SpottedBuccaneer();
case 18:
return new SpinedScratcherFish();
default:
return new SmallMouthSuckerFin();
}
}
return new MinocBlueFish();
}
}
// Legacy code
public class AquariumFishingNet : Item
{
public AquariumFishingNet()
{
}
public AquariumFishingNet(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074463;
}
}// An aquarium fishing net
public override void OnDoubleClick(Mobile from)
{
if (!this.IsChildOf(from.Backpack))
{
from.SendLocalizedMessage(1042001); // That must be in your pack for you to use it.
return;
}
Item replacement = this.CreateReplacement();
if (!from.PlaceInBackpack(replacement))
{
replacement.Delete();
from.SendLocalizedMessage(500720); // You don't have enough room in your backpack!
}
else
{
this.Delete();
from.Use(replacement);
}
}
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();
}
private Item CreateReplacement()
{
Item result = new AquariumFishNet();
result.Hue = this.Hue;
result.LootType = this.LootType;
result.Movable = this.Movable;
result.Name = this.Name;
result.QuestItem = this.QuestItem;
result.Visible = this.Visible;
return result;
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class AquariumFood : Item
{
[Constructable]
public AquariumFood()
: base(0xEFC)
{
}
public AquariumFood(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074819;
}
}// Aquarium food
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();
}
}
}

View File

@@ -0,0 +1,90 @@
using System;
using Server.Gumps;
using Server.Network;
namespace Server.Items
{
public class AquariumGump : Gump
{
private readonly Aquarium m_Aquarium;
public AquariumGump(Aquarium aquarium, bool edit)
: base(100, 100)
{
this.m_Aquarium = aquarium;
this.Closable = true;
this.Disposable = true;
this.Dragable = true;
this.Resizable = false;
this.AddPage(0);
this.AddBackground(0, 0, 350, 323, 0xE10);
this.AddImage(0, 0, 0x2C96);
if (this.m_Aquarium.Items.Count == 0)
return;
for (int i = 1; i <= this.m_Aquarium.Items.Count; i ++)
this.DisplayPage(i, edit);
}
public virtual void DisplayPage(int page, bool edit)
{
this.AddPage(page);
Item item = this.m_Aquarium.Items[page - 1];
// item name
if (item.LabelNumber != 0)
this.AddHtmlLocalized(20, 217, 250, 20, item.LabelNumber, 0xFFFFFF, false, false); // Name
// item details
if (item is BaseFish)
this.AddHtmlLocalized(20, 239, 315, 20, ((BaseFish)item).GetDescription(), 0xFFFFFF, false, false);
else
this.AddHtmlLocalized(20, 239, 315, 20, 1073634, 0xFFFFFF, false, false); // An aquarium decoration
// item image
this.AddItem(150, 80, item.ItemID, item.Hue);
// item number / all items
this.AddHtml(20, 195, 250, 20, String.Format("<BASEFONT COLOR=#FFFFFF>{0}/{1}</BASEFONT>", page, this.m_Aquarium.Items.Count), false, false);
// remove item
if (edit)
{
this.AddBackground(230, 195, 100, 26, 0x13BE);
this.AddButton(235, 200, 0x845, 0x846, page, GumpButtonType.Reply, 0);
this.AddHtmlLocalized(260, 198, 60, 26, 1073838, 0x0, false, false); // Remove
}
// next page
if (page < this.m_Aquarium.Items.Count)
{
this.AddButton(195, 280, 0xFA5, 0xFA7, 0, GumpButtonType.Page, page + 1);
this.AddHtmlLocalized(230, 283, 100, 18, 1044045, 0xFFFFFF, false, false); // NEXT PAGE
}
// previous page
if (page > 1)
{
this.AddButton(45, 280, 0xFAE, 0xFAF, 0, GumpButtonType.Page, page - 1);
this.AddHtmlLocalized(80, 283, 100, 18, 1044044, 0xFFFFFF, false, false); // PREV PAGE
}
}
public override void OnResponse(NetState sender, RelayInfo info)
{
if (this.m_Aquarium == null || this.m_Aquarium.Deleted)
return;
bool edit = this.m_Aquarium.HasAccess(sender.Mobile);
if (info.ButtonID > 0 && info.ButtonID <= this.m_Aquarium.Items.Count && edit)
this.m_Aquarium.RemoveItem(sender.Mobile, info.ButtonID - 1);
if (info.ButtonID > 0)
sender.Mobile.SendGump(new AquariumGump(this.m_Aquarium, edit));
}
}
}

View File

@@ -0,0 +1,113 @@
using System;
namespace Server.Items
{
public enum WaterState
{
Dead,
Dying,
Unhealthy,
Healthy,
Strong
}
public enum FoodState
{
Dead,
Starving,
Hungry,
Full,
Overfed
}
[PropertyObject]
public class AquariumState
{
private int m_State;
private int m_Maintain;
private int m_Improve;
private int m_Added;
public AquariumState()
{
}
[CommandProperty(AccessLevel.GameMaster)]
public int State
{
get
{
return this.m_State;
}
set
{
this.m_State = value;
if (this.m_State < 0)
this.m_State = 0;
if (this.m_State > 4)
this.m_State = 4;
}
}
[CommandProperty(AccessLevel.GameMaster)]
public int Maintain
{
get
{
return this.m_Maintain;
}
set
{
this.m_Maintain = value;
}
}
[CommandProperty(AccessLevel.GameMaster)]
public int Improve
{
get
{
return this.m_Improve;
}
set
{
this.m_Improve = value;
}
}
[CommandProperty(AccessLevel.GameMaster)]
public int Added
{
get
{
return this.m_Added;
}
set
{
this.m_Added = value;
}
}
public override string ToString()
{
return "...";
}
public virtual void Serialize(GenericWriter writer)
{
writer.Write(0); // version
writer.Write(this.m_State);
writer.Write(this.m_Maintain);
writer.Write(this.m_Improve);
writer.Write(this.m_Added);
}
public virtual void Deserialize(GenericReader reader)
{
int version = reader.ReadInt();
this.m_State = reader.ReadInt();
this.m_Maintain = reader.ReadInt();
this.m_Improve = reader.ReadInt();
this.m_Added = reader.ReadInt();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class AlbinoCourtesanFish : BaseFish
{
[Constructable]
public AlbinoCourtesanFish()
: base(0x3B04)
{
}
public AlbinoCourtesanFish(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074592;
}
}// Albino Courtesan Fish
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();
}
}
}

View File

@@ -0,0 +1,40 @@
using System;
namespace Server.Items
{
public class AlbinoFrog : BaseFish
{
[Constructable]
public AlbinoFrog()
: base(0x3B0D)
{
this.Hue = 0x47E;
}
public AlbinoFrog(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073824;
}
}// An Albino Frog
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class BritainCrownFish : BaseFish
{
[Constructable]
public BritainCrownFish()
: base(0x3AFF)
{
}
public BritainCrownFish(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074589;
}
}// Britain Crown Fish
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class FandancerFish : BaseFish
{
[Constructable]
public FandancerFish()
: base(0x3B02)
{
}
public FandancerFish(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074591;
}
}// Fandancer Fish
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class GoldenBroadtail : BaseFish
{
[Constructable]
public GoldenBroadtail()
: base(0x3B03)
{
}
public GoldenBroadtail(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073828;
}
}// A Golden Broadtail
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class Jellyfish : BaseFish
{
[Constructable]
public Jellyfish()
: base(0x3B0E)
{
}
public Jellyfish(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074593;
}
}// Jellyfish
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class KillerFrog : BaseFish
{
[Constructable]
public KillerFrog()
: base(0x3B0D)
{
}
public KillerFrog(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073825;
}
}// A Killer Frog
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();
}
}
}

View File

@@ -0,0 +1,40 @@
using System;
namespace Server.Items
{
public class LongClawCrab : BaseFish
{
[Constructable]
public LongClawCrab()
: base(0x3AFC)
{
this.Hue = 0x527;
}
public LongClawCrab(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073827;
}
}// A Long Claw Crab
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class MakotoCourtesanFish : BaseFish
{
[Constructable]
public MakotoCourtesanFish()
: base(0x3AFD)
{
}
public MakotoCourtesanFish(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073835;
}
}// A Makoto Courtesan Fish
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class MinocBlueFish : BaseFish
{
[Constructable]
public MinocBlueFish()
: base(0x3AFE)
{
}
public MinocBlueFish(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073829;
}
}// A Minoc Blue Fish
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class NujelmHoneyFish : BaseFish
{
[Constructable]
public NujelmHoneyFish()
: base(0x3B06)
{
}
public NujelmHoneyFish(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073830;
}
}// A Nujel'm Honey Fish
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();
}
}
}

View File

@@ -0,0 +1,40 @@
using System;
namespace Server.Items
{
public class PurpleFrog : BaseFish
{
[Constructable]
public PurpleFrog()
: base(0x3B0D)
{
this.Hue = 0x4FA;
}
public PurpleFrog(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073823;
}
}// A Purple Frog
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class RedDartFish : BaseFish
{
[Constructable]
public RedDartFish()
: base(0x3B00)
{
}
public RedDartFish(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073834;
}
}// A Red Dart Fish
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class Shrimp : BaseFish
{
[Constructable]
public Shrimp()
: base(0x3B14)
{
}
public Shrimp(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074596;
}
}// Shrimp
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class SmallMouthSuckerFin : BaseFish
{
[Constructable]
public SmallMouthSuckerFin()
: base(0x3B01)
{
}
public SmallMouthSuckerFin(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074590;
}
}// Small Mouth Sucker Fin
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class SpeckledCrab : BaseFish
{
[Constructable]
public SpeckledCrab()
: base(0x3AFC)
{
}
public SpeckledCrab(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073826;
}
}// A Speckled Crab
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class SpinedScratcherFish : BaseFish
{
[Constructable]
public SpinedScratcherFish()
: base(0x3B05)
{
}
public SpinedScratcherFish(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073832;
}
}// A Spined Scratcher Fish
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class SpottedBuccaneer : BaseFish
{
[Constructable]
public SpottedBuccaneer()
: base(0x3B09)
{
}
public SpottedBuccaneer(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073833;
}
}// A Spotted Buccaneer
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class VesperReefTiger : BaseFish
{
[Constructable]
public VesperReefTiger()
: base(0x3B08)
{
}
public VesperReefTiger(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073836;
}
}// A Vesper Reef Tiger
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class YellowFinBluebelly : BaseFish
{
[Constructable]
public YellowFinBluebelly()
: base(0x3B07)
{
}
public YellowFinBluebelly(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073831;
}
}// A Yellow Fin Bluebelly
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();
}
}
}

View File

@@ -0,0 +1,190 @@
using System;
using System.Collections.Generic;
using Server.ContextMenus;
using Server.Network;
namespace Server.Items
{
public class FishBowl : BaseContainer
{
[Constructable]
public FishBowl()
: base(0x241C)
{
this.Hue = 0x47E;
this.MaxItems = 1;
}
public FishBowl(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074499;
}
}// A fish bowl
[CommandProperty(AccessLevel.GameMaster)]
public bool Empty
{
get
{
return (this.Items.Count == 0);
}
}
[CommandProperty(AccessLevel.GameMaster)]
public BaseFish Fish
{
get
{
if (this.Empty)
return null;
if (this.Items[0] is BaseFish)
return (BaseFish)this.Items[0];
return null;
}
}
public override double DefaultWeight
{
get
{
return 2.0;
}
}
public override void OnDoubleClick(Mobile from)
{
}
public override bool TryDropItem(Mobile from, Item dropped, bool sendFullMessage)
{
if (!this.CheckHold(from, dropped, sendFullMessage, true))
return false;
this.DropItem(dropped);
return true;
}
public override bool OnDragDrop(Mobile from, Item dropped)
{
if (!this.IsAccessibleTo(from))
{
from.SendLocalizedMessage(502436); // That is not accessible.
return false;
}
if (!(dropped is BaseFish))
{
from.SendLocalizedMessage(1074836); // The container can not hold that type of object.
return false;
}
if (base.OnDragDrop(from, dropped))
{
((BaseFish)dropped).StopTimer();
this.InvalidateProperties();
return true;
}
return false;
}
public override bool CheckItemUse(Mobile from, Item item)
{
if (item != this)
return false;
return base.CheckItemUse(from, item);
}
public override bool CheckLift(Mobile from, Item item, ref LRReason reject)
{
if (item != this)
{
reject = LRReason.CannotLift;
return false;
}
return base.CheckLift(from, item, ref reject);
}
public override void AddNameProperties(ObjectPropertyList list)
{
base.AddNameProperties(list);
if (!this.Empty)
{
BaseFish fish = this.Fish;
if (fish != null)
list.Add(1074494, "#{0}", fish.LabelNumber); // Contains: ~1_CREATURE~
}
}
public override void GetContextMenuEntries(Mobile from, List<ContextMenuEntry> list)
{
base.GetContextMenuEntries(from, list);
if (!this.Empty && this.IsAccessibleTo(from))
list.Add(new RemoveCreature(this));
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)1); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
if (version == 0)
this.Weight = this.DefaultWeight;
}
private class RemoveCreature : ContextMenuEntry
{
private readonly FishBowl m_Bowl;
public RemoveCreature(FishBowl bowl)
: base(6242, 3)// Remove creature
{
this.m_Bowl = bowl;
}
public override void OnClick()
{
if (this.m_Bowl == null || this.m_Bowl.Deleted || !this.m_Bowl.IsAccessibleTo(this.Owner.From))
return;
BaseFish fish = this.m_Bowl.Fish;
if (fish != null)
{
if (fish.IsLockedDown) // for legacy fish bowls
{
this.Owner.From.SendLocalizedMessage(1010449); // You may not use this object while it is locked down.
}
else if (!this.Owner.From.PlaceInBackpack(fish))
{
this.Owner.From.SendLocalizedMessage(1074496); // There is no room in your pack for the creature.
}
else
{
this.Owner.From.SendLocalizedMessage(1074495); // The creature has been removed from the fish bowl.
fish.StartTimer();
this.m_Bowl.InvalidateProperties();
}
}
}
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class BrineShrimp : BaseFish
{
[Constructable]
public BrineShrimp()
: base(0x3B11)
{
}
public BrineShrimp(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074415;
}
}// Brine shrimp
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class Coral : BaseFish
{
[Constructable]
public Coral()
: base(Utility.RandomList(0x3AF9, 0x3AFA, 0x3AFB))
{
}
public Coral(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074588;
}
}// Coral
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class FullMoonFish : BaseFish
{
[Constructable]
public FullMoonFish()
: base(0x3B15)
{
}
public FullMoonFish(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074597;
}
}// A Full Moon Fish
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class SeaHorseFish : BaseFish
{
[Constructable]
public SeaHorseFish()
: base(0x3B10)
{
}
public SeaHorseFish(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074414;
}
}// A sea horse
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class StrippedFlakeFish : BaseFish
{
[Constructable]
public StrippedFlakeFish()
: base(0x3B0A)
{
}
public StrippedFlakeFish(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074595;
}
}// Stripped Flake Fish
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();
}
}
}

View File

@@ -0,0 +1,39 @@
using System;
namespace Server.Items
{
public class StrippedSosarianSwill : BaseFish
{
[Constructable]
public StrippedSosarianSwill()
: base(0x3B0A)
{
}
public StrippedSosarianSwill(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074594;
}
}// Stripped Sosarian Swill
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();
}
}
}

View File

@@ -0,0 +1,46 @@
using System;
namespace Server.Items
{
public class AquariumMessage : MessageInABottle
{
[Constructable]
public AquariumMessage()
: base()
{
}
public AquariumMessage(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1073894;
}
}// Message in a Bottle
public override void AddNameProperties(ObjectPropertyList list)
{
base.AddNameProperties(list);
list.Add(1073634); // An aquarium decoration
}
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();
}
}
}

View File

@@ -0,0 +1,46 @@
using System;
namespace Server.Items
{
public class CaptainBlackheartsFishingPole : FishingPole
{
[Constructable]
public CaptainBlackheartsFishingPole()
: base()
{
}
public CaptainBlackheartsFishingPole(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074571;
}
}// Captain Blackheart's Fishing Pole
public override void AddNameProperties(ObjectPropertyList list)
{
base.AddNameProperties(list);
list.Add(1073634); // An aquarium decoration
}
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();
}
}
}

View File

@@ -0,0 +1,95 @@
using System;
namespace Server.Items
{
public class CraftysFishingHat : BaseHat
{
[Constructable]
public CraftysFishingHat()
: base(0x1713)
{
}
public CraftysFishingHat(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074572;
}
}// Crafty's Fishing Hat
public override int BasePhysicalResistance
{
get
{
return 0;
}
}
public override int BaseFireResistance
{
get
{
return 5;
}
}
public override int BaseColdResistance
{
get
{
return 9;
}
}
public override int BasePoisonResistance
{
get
{
return 5;
}
}
public override int BaseEnergyResistance
{
get
{
return 5;
}
}
public override int InitMinHits
{
get
{
return 20;
}
}
public override int InitMaxHits
{
get
{
return 30;
}
}
public override void AddNameProperties(ObjectPropertyList list)
{
base.AddNameProperties(list);
list.Add(1073634); // An aquarium decoration
}
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();
}
}
}

View File

@@ -0,0 +1,53 @@
using System;
namespace Server.Items
{
public class FishBones : Item
{
[Constructable]
public FishBones()
: base(0x3B0C)
{
}
public FishBones(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074601;
}
}// Fish bones
public override double DefaultWeight
{
get
{
return 1.0;
}
}
public override void AddNameProperties(ObjectPropertyList list)
{
base.AddNameProperties(list);
list.Add(1073634); // An aquarium decoration
}
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();
}
}
}

View File

@@ -0,0 +1,53 @@
using System;
namespace Server.Items
{
public class IslandStatue : Item
{
[Constructable]
public IslandStatue()
: base(0x3B0F)
{
}
public IslandStatue(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074600;
}
}// An island statue
public override double DefaultWeight
{
get
{
return 1.0;
}
}
public override void AddNameProperties(ObjectPropertyList list)
{
base.AddNameProperties(list);
list.Add(1073634); // An aquarium decoration
}
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();
}
}
}

View File

@@ -0,0 +1,53 @@
using System;
namespace Server.Items
{
public class Shell : Item
{
[Constructable]
public Shell()
: base(Utility.RandomList(0x3B12, 0x3B13))
{
}
public Shell(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074598;
}
}// A shell
public override double DefaultWeight
{
get
{
return 1.0;
}
}
public override void AddNameProperties(ObjectPropertyList list)
{
base.AddNameProperties(list);
list.Add(1073634); // An aquarium decoration
}
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();
}
}
}

View File

@@ -0,0 +1,54 @@
using System;
namespace Server.Items
{
[FlipableAttribute(0x14F3, 0x14F4)]
public class ToyBoat : Item
{
[Constructable]
public ToyBoat()
: base(0x14F4)
{
}
public ToyBoat(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074363;
}
}// A toy boat
public override double DefaultWeight
{
get
{
return 1.0;
}
}
public override void AddNameProperties(ObjectPropertyList list)
{
base.AddNameProperties(list);
list.Add(1073634); // An aquarium decoration
}
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();
}
}
}

View File

@@ -0,0 +1,58 @@
using System;
namespace Server.Items
{
public class WaterloggedBoots : BaseShoes
{
[Constructable]
public WaterloggedBoots()
: base(0x1711)
{
if (Utility.RandomBool())
{
// thigh boots
this.ItemID = 0x1711;
this.Weight = 4.0;
}
else
{
// boots
this.ItemID = 0x170B;
this.Weight = 3.0;
}
}
public WaterloggedBoots(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074364;
}
}// Waterlogged boots
public override void AddNameProperties(ObjectPropertyList list)
{
base.AddNameProperties(list);
list.Add(1073634); // An aquarium decoration
}
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();
}
}
}

View File

@@ -0,0 +1,50 @@
using System;
namespace Server.Items
{
public class VacationWafer : Item
{
public const int VacationDays = 7;
[Constructable]
public VacationWafer()
: base(0x973)
{
}
public VacationWafer(Serial serial)
: base(serial)
{
}
public override int LabelNumber
{
get
{
return 1074431;
}
}// An aquarium flake sphere
public override void AddNameProperties(ObjectPropertyList list)
{
base.AddNameProperties(list);
list.Add(1074432, VacationDays.ToString()); // Vacation days: ~1_DAYS~
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)1); // version
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
if (version < 1 && this.ItemID == 0x971)
this.ItemID = 0x973;
}
}
}