Reorganizes Project (#41)
This commit is contained in:
parent
08bf44af9a
commit
3614a66aee
3499 changed files with 79 additions and 55 deletions
1169
Projects/Scripts/Items/Aquarium/Aquarium.cs
Normal file
1169
Projects/Scripts/Items/Aquarium/Aquarium.cs
Normal file
File diff suppressed because it is too large
Load diff
190
Projects/Scripts/Items/Aquarium/AquariumFishingNet.cs
Normal file
190
Projects/Scripts/Items/Aquarium/AquariumFishingNet.cs
Normal file
|
|
@ -0,0 +1,190 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class AquariumFishNet : SpecialFishingNet
|
||||
{
|
||||
[Constructible]
|
||||
public AquariumFishNet()
|
||||
{
|
||||
ItemID = 0xDC8;
|
||||
|
||||
if (Hue == 0x8A0)
|
||||
Hue = 0x240;
|
||||
}
|
||||
|
||||
public AquariumFishNet(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074463; // An aquarium fishing net
|
||||
|
||||
public override bool RequireDeepWater => false;
|
||||
|
||||
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 = 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!
|
||||
Delete();
|
||||
return;
|
||||
}
|
||||
|
||||
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();
|
||||
Delete();
|
||||
return;
|
||||
}
|
||||
|
||||
fish.Delete();
|
||||
|
||||
from.SendLocalizedMessage(1074488); // You could not hold the creature.
|
||||
}
|
||||
|
||||
InUse = false;
|
||||
Movable = true;
|
||||
|
||||
if (!from.PlaceInBackpack(this))
|
||||
{
|
||||
if (from.Map == null || from.Map == Map.Internal)
|
||||
Delete();
|
||||
else
|
||||
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();
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
|
||||
// Legacy code
|
||||
public class AquariumFishingNet : Item
|
||||
{
|
||||
public AquariumFishingNet()
|
||||
{
|
||||
}
|
||||
|
||||
public AquariumFishingNet(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074463; // An aquarium fishing net
|
||||
|
||||
private Item CreateReplacement()
|
||||
{
|
||||
Item result = new AquariumFishNet();
|
||||
result.Hue = Hue;
|
||||
result.LootType = LootType;
|
||||
result.Movable = Movable;
|
||||
result.Name = Name;
|
||||
result.QuestItem = QuestItem;
|
||||
result.Visible = Visible;
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
if (!IsChildOf(from.Backpack))
|
||||
{
|
||||
from.SendLocalizedMessage(1042001); // That must be in your pack for you to use it.
|
||||
return;
|
||||
}
|
||||
|
||||
Item replacement = CreateReplacement();
|
||||
|
||||
if (!from.PlaceInBackpack(replacement))
|
||||
{
|
||||
replacement.Delete();
|
||||
from.SendLocalizedMessage(500720); // You don't have enough room in your backpack!
|
||||
}
|
||||
else
|
||||
{
|
||||
Delete();
|
||||
from.Use(replacement);
|
||||
}
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/AquariumFood.cs
Normal file
30
Projects/Scripts/Items/Aquarium/AquariumFood.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class AquariumFood : Item
|
||||
{
|
||||
[Constructible]
|
||||
public AquariumFood() : base(0xEFC)
|
||||
{
|
||||
}
|
||||
|
||||
public AquariumFood(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074819; // Aquarium food
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
89
Projects/Scripts/Items/Aquarium/AquariumGump.cs
Normal file
89
Projects/Scripts/Items/Aquarium/AquariumGump.cs
Normal file
|
|
@ -0,0 +1,89 @@
|
|||
using Server.Gumps;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class AquariumGump : Gump
|
||||
{
|
||||
private Aquarium m_Aquarium;
|
||||
|
||||
public AquariumGump(Aquarium aquarium, bool edit) : base(100, 100)
|
||||
{
|
||||
m_Aquarium = aquarium;
|
||||
|
||||
Closable = true;
|
||||
Disposable = true;
|
||||
Draggable = true;
|
||||
Resizable = false;
|
||||
|
||||
AddPage(0);
|
||||
AddBackground(0, 0, 350, 323, 0xE10);
|
||||
AddImage(0, 0, 0x2C96);
|
||||
|
||||
if (m_Aquarium.Items.Count == 0)
|
||||
return;
|
||||
|
||||
for (int i = 1; i <= m_Aquarium.Items.Count; i++)
|
||||
DisplayPage(i, edit);
|
||||
}
|
||||
|
||||
public void DisplayPage(int page, bool edit)
|
||||
{
|
||||
AddPage(page);
|
||||
|
||||
Item item = m_Aquarium.Items[page - 1];
|
||||
|
||||
// item name
|
||||
if (item.LabelNumber != 0)
|
||||
AddHtmlLocalized(20, 217, 250, 20, item.LabelNumber, 0xFFFFFF); // Name
|
||||
|
||||
// item details
|
||||
if (item is BaseFish fish)
|
||||
AddHtmlLocalized(20, 239, 315, 20, fish.GetDescription(), 0xFFFFFF);
|
||||
else
|
||||
AddHtmlLocalized(20, 239, 315, 20, 1073634, 0xFFFFFF); // An aquarium decoration
|
||||
|
||||
// item image
|
||||
AddItem(150, 80, item.ItemID, item.Hue);
|
||||
|
||||
// item number / all items
|
||||
AddHtml(20, 195, 250, 20, $"<BASEFONT COLOR=#FFFFFF>{page}/{m_Aquarium.Items.Count}</BASEFONT>");
|
||||
|
||||
// remove item
|
||||
if (edit)
|
||||
{
|
||||
AddBackground(230, 195, 100, 26, 0x13BE);
|
||||
AddButton(235, 200, 0x845, 0x846, page);
|
||||
AddHtmlLocalized(260, 198, 60, 26, 1073838, 0x0); // Remove
|
||||
}
|
||||
|
||||
// next page
|
||||
if (page < m_Aquarium.Items.Count)
|
||||
{
|
||||
AddButton(195, 280, 0xFA5, 0xFA7, 0, GumpButtonType.Page, page + 1);
|
||||
AddHtmlLocalized(230, 283, 100, 18, 1044045, 0xFFFFFF); // NEXT PAGE
|
||||
}
|
||||
|
||||
// previous page
|
||||
if (page > 1)
|
||||
{
|
||||
AddButton(45, 280, 0xFAE, 0xFAF, 0, GumpButtonType.Page, page - 1);
|
||||
AddHtmlLocalized(80, 283, 100, 18, 1044044, 0xFFFFFF); // PREV PAGE
|
||||
}
|
||||
}
|
||||
|
||||
public override void OnResponse(NetState sender, RelayInfo info)
|
||||
{
|
||||
if (m_Aquarium?.Deleted != false)
|
||||
return;
|
||||
|
||||
bool edit = m_Aquarium.HasAccess(sender.Mobile);
|
||||
|
||||
if (info.ButtonID > 0 && info.ButtonID <= m_Aquarium.Items.Count && edit)
|
||||
m_Aquarium.RemoveItem(sender.Mobile, info.ButtonID - 1);
|
||||
|
||||
if (info.ButtonID > 0)
|
||||
sender.Mobile.SendGump(new AquariumGump(m_Aquarium, edit));
|
||||
}
|
||||
}
|
||||
}
|
||||
76
Projects/Scripts/Items/Aquarium/AquariumState.cs
Normal file
76
Projects/Scripts/Items/Aquarium/AquariumState.cs
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
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;
|
||||
|
||||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public int State
|
||||
{
|
||||
get => m_State;
|
||||
set
|
||||
{
|
||||
m_State = value;
|
||||
|
||||
if (m_State < 0)
|
||||
m_State = 0;
|
||||
|
||||
if (m_State > 4)
|
||||
m_State = 4;
|
||||
}
|
||||
}
|
||||
|
||||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public int Maintain{ get; set; }
|
||||
|
||||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public int Improve{ get; set; }
|
||||
|
||||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public int Added{ get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return "...";
|
||||
}
|
||||
|
||||
public virtual void Serialize(GenericWriter writer)
|
||||
{
|
||||
writer.Write(0); // version
|
||||
|
||||
writer.Write(m_State);
|
||||
writer.Write(Maintain);
|
||||
writer.Write(Improve);
|
||||
writer.Write(Added);
|
||||
}
|
||||
|
||||
public virtual void Deserialize(GenericReader reader)
|
||||
{
|
||||
int version = reader.ReadInt();
|
||||
|
||||
m_State = reader.ReadInt();
|
||||
Maintain = reader.ReadInt();
|
||||
Improve = reader.ReadInt();
|
||||
Added = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
93
Projects/Scripts/Items/Aquarium/BaseFish.cs
Normal file
93
Projects/Scripts/Items/Aquarium/BaseFish.cs
Normal file
|
|
@ -0,0 +1,93 @@
|
|||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class BaseFish : Item
|
||||
{
|
||||
private static readonly TimeSpan DeathDelay = TimeSpan.FromMinutes(5);
|
||||
|
||||
private Timer m_Timer;
|
||||
|
||||
[Constructible]
|
||||
public BaseFish(int itemID) : base(itemID)
|
||||
{
|
||||
StartTimer();
|
||||
}
|
||||
|
||||
public BaseFish(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public bool Dead => ItemID == 0x3B0C;
|
||||
|
||||
public virtual void StartTimer()
|
||||
{
|
||||
m_Timer?.Stop();
|
||||
|
||||
m_Timer = Timer.DelayCall(DeathDelay, Kill);
|
||||
|
||||
InvalidateProperties();
|
||||
}
|
||||
|
||||
public virtual void StopTimer()
|
||||
{
|
||||
m_Timer?.Stop();
|
||||
|
||||
m_Timer = null;
|
||||
|
||||
InvalidateProperties();
|
||||
}
|
||||
|
||||
public override void OnDelete()
|
||||
{
|
||||
StopTimer();
|
||||
}
|
||||
|
||||
public virtual void Kill()
|
||||
{
|
||||
ItemID = 0x3B0C;
|
||||
StopTimer();
|
||||
|
||||
InvalidateProperties();
|
||||
}
|
||||
|
||||
public int GetDescription()
|
||||
{
|
||||
// TODO: This will never return "very unusual dead aquarium creature" due to the way it is killed
|
||||
if (ItemID > 0x3B0F)
|
||||
return Dead ? 1074424 : 1074422; // A very unusual [dead/live] aquarium creature
|
||||
if (Hue != 0)
|
||||
return Dead ? 1074425 : 1074423; // A [dead/live] aquarium creature of unusual color
|
||||
|
||||
return Dead ? 1073623 : 1073622; // A [dead/live] aquarium creature
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
|
||||
list.Add(GetDescription());
|
||||
|
||||
if (!Dead && m_Timer != null)
|
||||
list.Add(1074507); // Gasping for air
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
if (!(Parent is Aquarium) && !(Parent is FishBowl))
|
||||
StartTimer();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/AlbinoCourtesanFish.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/AlbinoCourtesanFish.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class AlbinoCourtesanFish : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public AlbinoCourtesanFish() : base(0x3B04)
|
||||
{
|
||||
}
|
||||
|
||||
public AlbinoCourtesanFish(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074592; // Albino Courtesan Fish
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
31
Projects/Scripts/Items/Aquarium/Fish/AlbinoFrog.cs
Normal file
31
Projects/Scripts/Items/Aquarium/Fish/AlbinoFrog.cs
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class AlbinoFrog : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public AlbinoFrog() : base(0x3B0D)
|
||||
{
|
||||
Hue = 0x47E;
|
||||
}
|
||||
|
||||
public AlbinoFrog(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1073824; // An Albino Frog
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/BritainCrownFish.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/BritainCrownFish.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class BritainCrownFish : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public BritainCrownFish() : base(0x3AFF)
|
||||
{
|
||||
}
|
||||
|
||||
public BritainCrownFish(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074589; // Britain Crown Fish
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/FandancerFish.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/FandancerFish.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class FandancerFish : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public FandancerFish() : base(0x3B02)
|
||||
{
|
||||
}
|
||||
|
||||
public FandancerFish(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074591; // Fandancer Fish
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/GoldenBroadtail.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/GoldenBroadtail.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class GoldenBroadtail : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public GoldenBroadtail() : base(0x3B03)
|
||||
{
|
||||
}
|
||||
|
||||
public GoldenBroadtail(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1073828; // A Golden Broadtail
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/Jellyfish.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/Jellyfish.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class Jellyfish : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public Jellyfish() : base(0x3B0E)
|
||||
{
|
||||
}
|
||||
|
||||
public Jellyfish(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074593; // Jellyfish
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/KillerFrog.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/KillerFrog.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class KillerFrog : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public KillerFrog() : base(0x3B0D)
|
||||
{
|
||||
}
|
||||
|
||||
public KillerFrog(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1073825; // A Killer Frog
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
31
Projects/Scripts/Items/Aquarium/Fish/LongClawCrab.cs
Normal file
31
Projects/Scripts/Items/Aquarium/Fish/LongClawCrab.cs
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class LongClawCrab : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public LongClawCrab() : base(0x3AFC)
|
||||
{
|
||||
Hue = 0x527;
|
||||
}
|
||||
|
||||
public LongClawCrab(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1073827; // A Long Claw Crab
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/MakotoCourtesanFish.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/MakotoCourtesanFish.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class MakotoCourtesanFish : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public MakotoCourtesanFish() : base(0x3AFD)
|
||||
{
|
||||
}
|
||||
|
||||
public MakotoCourtesanFish(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1073835; // A Makoto Courtesan Fish
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/MinocBlueFish.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/MinocBlueFish.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class MinocBlueFish : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public MinocBlueFish() : base(0x3AFE)
|
||||
{
|
||||
}
|
||||
|
||||
public MinocBlueFish(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1073829; // A Minoc Blue Fish
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/NujelmHoneyFish.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/NujelmHoneyFish.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class NujelmHoneyFish : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public NujelmHoneyFish() : base(0x3B06)
|
||||
{
|
||||
}
|
||||
|
||||
public NujelmHoneyFish(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1073830; // A Nujel'm Honey Fish
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
31
Projects/Scripts/Items/Aquarium/Fish/PurpleFrog.cs
Normal file
31
Projects/Scripts/Items/Aquarium/Fish/PurpleFrog.cs
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class PurpleFrog : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public PurpleFrog() : base(0x3B0D)
|
||||
{
|
||||
Hue = 0x4FA;
|
||||
}
|
||||
|
||||
public PurpleFrog(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1073823; // A Purple Frog
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/RedDartFish.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/RedDartFish.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class RedDartFish : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public RedDartFish() : base(0x3B00)
|
||||
{
|
||||
}
|
||||
|
||||
public RedDartFish(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1073834; // A Red Dart Fish
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/Shrimp.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/Shrimp.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class Shrimp : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public Shrimp() : base(0x3B14)
|
||||
{
|
||||
}
|
||||
|
||||
public Shrimp(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074596; // Shrimp
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/SmallMouthSuckerFin.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/SmallMouthSuckerFin.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class SmallMouthSuckerFin : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public SmallMouthSuckerFin() : base(0x3B01)
|
||||
{
|
||||
}
|
||||
|
||||
public SmallMouthSuckerFin(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074590; // Small Mouth Sucker Fin
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/SpeckledCrab.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/SpeckledCrab.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class SpeckledCrab : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public SpeckledCrab() : base(0x3AFC)
|
||||
{
|
||||
}
|
||||
|
||||
public SpeckledCrab(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1073826; // A Speckled Crab
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/SpinedScratcherFish.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/SpinedScratcherFish.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class SpinedScratcherFish : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public SpinedScratcherFish() : base(0x3B05)
|
||||
{
|
||||
}
|
||||
|
||||
public SpinedScratcherFish(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1073832; // A Spined Scratcher Fish
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/SpottedBuccaneer.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/SpottedBuccaneer.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class SpottedBuccaneer : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public SpottedBuccaneer() : base(0x3B09)
|
||||
{
|
||||
}
|
||||
|
||||
public SpottedBuccaneer(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1073833; // A Spotted Buccaneer
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/VesperReefTiger.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/VesperReefTiger.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class VesperReefTiger : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public VesperReefTiger() : base(0x3B08)
|
||||
{
|
||||
}
|
||||
|
||||
public VesperReefTiger(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1073836; // A Vesper Reef Tiger
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Fish/YellowFinBluebelly.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Fish/YellowFinBluebelly.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class YellowFinBluebelly : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public YellowFinBluebelly() : base(0x3B07)
|
||||
{
|
||||
}
|
||||
|
||||
public YellowFinBluebelly(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1073831; // A Yellow Fin Bluebelly
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
170
Projects/Scripts/Items/Aquarium/FishBowl.cs
Normal file
170
Projects/Scripts/Items/Aquarium/FishBowl.cs
Normal file
|
|
@ -0,0 +1,170 @@
|
|||
using System.Collections.Generic;
|
||||
using Server.ContextMenus;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class FishBowl : BaseContainer
|
||||
{
|
||||
[Constructible]
|
||||
public FishBowl() : base(0x241C)
|
||||
{
|
||||
Hue = 0x47E;
|
||||
MaxItems = 1;
|
||||
}
|
||||
|
||||
public FishBowl(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074499; // A fish bowl
|
||||
|
||||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public bool Empty => Items.Count == 0;
|
||||
|
||||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public BaseFish Fish
|
||||
{
|
||||
get
|
||||
{
|
||||
if (Empty)
|
||||
return null;
|
||||
|
||||
return Items[0] as BaseFish;
|
||||
}
|
||||
}
|
||||
|
||||
public override double DefaultWeight => 2.0;
|
||||
|
||||
public override void OnDoubleClick(Mobile from)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool TryDropItem(Mobile from, Item dropped, bool sendFullMessage)
|
||||
{
|
||||
if (!CheckHold(from, dropped, sendFullMessage, true))
|
||||
return false;
|
||||
|
||||
DropItem(dropped);
|
||||
return true;
|
||||
}
|
||||
|
||||
public override bool OnDragDrop(Mobile from, Item dropped)
|
||||
{
|
||||
if (!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();
|
||||
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 (!Empty)
|
||||
{
|
||||
BaseFish fish = 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 (!Empty && IsAccessibleTo(from))
|
||||
list.Add(new RemoveCreature(this));
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(1); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
if (version == 0)
|
||||
Weight = DefaultWeight;
|
||||
}
|
||||
|
||||
private class RemoveCreature : ContextMenuEntry
|
||||
{
|
||||
private FishBowl m_Bowl;
|
||||
|
||||
public RemoveCreature(FishBowl bowl) : base(6242, 3) // Remove creature
|
||||
{
|
||||
m_Bowl = bowl;
|
||||
}
|
||||
|
||||
public override void OnClick()
|
||||
{
|
||||
if (m_Bowl?.Deleted != false || !m_Bowl.IsAccessibleTo(Owner.From))
|
||||
return;
|
||||
|
||||
BaseFish fish = m_Bowl.Fish;
|
||||
|
||||
if (fish == null)
|
||||
return;
|
||||
|
||||
if (fish.IsLockedDown) // for legacy fish bowls
|
||||
{
|
||||
Owner.From.SendLocalizedMessage(1010449); // You may not use this object while it is locked down.
|
||||
}
|
||||
else if (!Owner.From.PlaceInBackpack(fish))
|
||||
{
|
||||
Owner.From.SendLocalizedMessage(1074496); // There is no room in your pack for the creature.
|
||||
}
|
||||
else
|
||||
{
|
||||
Owner.From.SendLocalizedMessage(1074495); // The creature has been removed from the fish bowl.
|
||||
fish.StartTimer();
|
||||
m_Bowl.InvalidateProperties();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Reward Fish/BrineShrimp.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Reward Fish/BrineShrimp.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class BrineShrimp : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public BrineShrimp() : base(0x3B11)
|
||||
{
|
||||
}
|
||||
|
||||
public BrineShrimp(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074415; // Brine shrimp
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Reward Fish/Coral.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Reward Fish/Coral.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class Coral : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public Coral() : base(Utility.RandomList(0x3AF9, 0x3AFA, 0x3AFB))
|
||||
{
|
||||
}
|
||||
|
||||
public Coral(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074588; // Coral
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Reward Fish/FullMoonFish.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Reward Fish/FullMoonFish.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class FullMoonFish : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public FullMoonFish() : base(0x3B15)
|
||||
{
|
||||
}
|
||||
|
||||
public FullMoonFish(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074597; // A Full Moon Fish
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Projects/Scripts/Items/Aquarium/Reward Fish/SeaHorse.cs
Normal file
30
Projects/Scripts/Items/Aquarium/Reward Fish/SeaHorse.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class SeaHorseFish : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public SeaHorseFish() : base(0x3B10)
|
||||
{
|
||||
}
|
||||
|
||||
public SeaHorseFish(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074414; // A sea horse
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class StrippedFlakeFish : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public StrippedFlakeFish() : base(0x3B0A)
|
||||
{
|
||||
}
|
||||
|
||||
public StrippedFlakeFish(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074595; // Stripped Flake Fish
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class StrippedSosarianSwill : BaseFish
|
||||
{
|
||||
[Constructible]
|
||||
public StrippedSosarianSwill() : base(0x3B0A)
|
||||
{
|
||||
}
|
||||
|
||||
public StrippedSosarianSwill(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074594; // Stripped Sosarian Swill
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
|
||||
writer.Write(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
37
Projects/Scripts/Items/Aquarium/Rewards/AquariumMessage.cs
Normal file
37
Projects/Scripts/Items/Aquarium/Rewards/AquariumMessage.cs
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class AquariumMessage : MessageInABottle
|
||||
{
|
||||
[Constructible]
|
||||
public AquariumMessage()
|
||||
{
|
||||
}
|
||||
|
||||
public AquariumMessage(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 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(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class CaptainBlackheartsFishingPole : FishingPole
|
||||
{
|
||||
[Constructible]
|
||||
public CaptainBlackheartsFishingPole()
|
||||
{
|
||||
}
|
||||
|
||||
public CaptainBlackheartsFishingPole(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 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(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
46
Projects/Scripts/Items/Aquarium/Rewards/CraftysFishingHat.cs
Normal file
46
Projects/Scripts/Items/Aquarium/Rewards/CraftysFishingHat.cs
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class CraftysFishingHat : BaseHat
|
||||
{
|
||||
[Constructible]
|
||||
public CraftysFishingHat() : base(0x1713)
|
||||
{
|
||||
}
|
||||
|
||||
public CraftysFishingHat(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074572; // Crafty's Fishing Hat
|
||||
|
||||
public override int BasePhysicalResistance => 0;
|
||||
public override int BaseFireResistance => 5;
|
||||
public override int BaseColdResistance => 9;
|
||||
public override int BasePoisonResistance => 5;
|
||||
public override int BaseEnergyResistance => 5;
|
||||
|
||||
public override int InitMinHits => 20;
|
||||
public override int InitMaxHits => 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(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
38
Projects/Scripts/Items/Aquarium/Rewards/FishBones.cs
Normal file
38
Projects/Scripts/Items/Aquarium/Rewards/FishBones.cs
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class FishBones : Item
|
||||
{
|
||||
[Constructible]
|
||||
public FishBones() : base(0x3B0C)
|
||||
{
|
||||
}
|
||||
|
||||
public FishBones(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074601; // Fish bones
|
||||
public override double DefaultWeight => 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(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
38
Projects/Scripts/Items/Aquarium/Rewards/IslandStatue.cs
Normal file
38
Projects/Scripts/Items/Aquarium/Rewards/IslandStatue.cs
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class IslandStatue : Item
|
||||
{
|
||||
[Constructible]
|
||||
public IslandStatue() : base(0x3B0F)
|
||||
{
|
||||
}
|
||||
|
||||
public IslandStatue(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074600; // An island statue
|
||||
public override double DefaultWeight => 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(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
38
Projects/Scripts/Items/Aquarium/Rewards/Shell.cs
Normal file
38
Projects/Scripts/Items/Aquarium/Rewards/Shell.cs
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class Shell : Item
|
||||
{
|
||||
[Constructible]
|
||||
public Shell() : base(Utility.RandomList(0x3B12, 0x3B13))
|
||||
{
|
||||
}
|
||||
|
||||
public Shell(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074598; // A shell
|
||||
public override double DefaultWeight => 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(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
39
Projects/Scripts/Items/Aquarium/Rewards/ToyBoat.cs
Normal file
39
Projects/Scripts/Items/Aquarium/Rewards/ToyBoat.cs
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
[Flippable(0x14F3, 0x14F4)]
|
||||
public class ToyBoat : Item
|
||||
{
|
||||
[Constructible]
|
||||
public ToyBoat() : base(0x14F4)
|
||||
{
|
||||
}
|
||||
|
||||
public ToyBoat(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 1074363; // A toy boat
|
||||
public override double DefaultWeight => 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(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
49
Projects/Scripts/Items/Aquarium/Rewards/WaterloggedBoots.cs
Normal file
49
Projects/Scripts/Items/Aquarium/Rewards/WaterloggedBoots.cs
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class WaterloggedBoots : BaseShoes
|
||||
{
|
||||
[Constructible]
|
||||
public WaterloggedBoots() : base(0x1711)
|
||||
{
|
||||
if (Utility.RandomBool())
|
||||
{
|
||||
// thigh boots
|
||||
ItemID = 0x1711;
|
||||
Weight = 4.0;
|
||||
}
|
||||
else
|
||||
{
|
||||
// boots
|
||||
ItemID = 0x170B;
|
||||
Weight = 3.0;
|
||||
}
|
||||
}
|
||||
|
||||
public WaterloggedBoots(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 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(0); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
42
Projects/Scripts/Items/Aquarium/VacationWafer.cs
Normal file
42
Projects/Scripts/Items/Aquarium/VacationWafer.cs
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
namespace Server.Items
|
||||
{
|
||||
public class VacationWafer : Item
|
||||
{
|
||||
public const int VacationDays = 7;
|
||||
|
||||
[Constructible]
|
||||
public VacationWafer() : base(0x973)
|
||||
{
|
||||
}
|
||||
|
||||
public VacationWafer(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int LabelNumber => 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(1); // version
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
if (version < 1 && ItemID == 0x971)
|
||||
ItemID = 0x973;
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue