Fixes code according to modern code style. Fixes a few expression bugs.

This commit is contained in:
Kamron Batman 2018-09-15 09:58:51 -07:00
parent 89eea25e5f
commit 970fd563b2
3324 changed files with 441118 additions and 433755 deletions

View file

@ -3,185 +3,188 @@ using Server.Network;
namespace Server.Items
{
[Flippable( 0x2A5D, 0x2A61 )]
public class AwesomeDisturbingPortraitComponent : AddonComponent
{
public override int LabelNumber => 1074479; // Disturbing portrait
public bool FacingSouth => ItemID < 0x2A61;
[Flippable(0x2A5D, 0x2A61)]
public class AwesomeDisturbingPortraitComponent : AddonComponent
{
private InternalTimer m_Timer;
private InternalTimer m_Timer;
public AwesomeDisturbingPortraitComponent() : base(0x2A5D)
{
m_Timer = new InternalTimer(this, TimeSpan.FromSeconds(1));
m_Timer.Start();
}
public AwesomeDisturbingPortraitComponent() : base( 0x2A5D )
{
m_Timer = new InternalTimer( this, TimeSpan.FromSeconds( 1 ) );
m_Timer.Start();
}
public AwesomeDisturbingPortraitComponent(Serial serial) : base(serial)
{
}
public AwesomeDisturbingPortraitComponent( Serial serial ) : base( serial )
{
}
public override int LabelNumber => 1074479; // Disturbing portrait
public bool FacingSouth => ItemID < 0x2A61;
public override void OnDoubleClick( Mobile from )
{
if ( Utility.InRange( Location, from.Location, 2 ) )
{
int hours;
int minutes;
public override void OnDoubleClick(Mobile from)
{
if (Utility.InRange(Location, from.Location, 2))
{
int hours;
int minutes;
Clock.GetTime( Map, X, Y, out hours, out minutes );
Clock.GetTime(Map, X, Y, out hours, out minutes);
if ( hours < 4 || hours > 20 )
Effects.PlaySound( Location, Map, 0x569 );
if (hours < 4 || hours > 20)
Effects.PlaySound(Location, Map, 0x569);
UpdateImage();
}
else
from.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1019045 ); // I can't reach that.
}
UpdateImage();
}
else
{
from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1019045); // I can't reach that.
}
}
public override void OnAfterDelete()
{
base.OnAfterDelete();
public override void OnAfterDelete()
{
base.OnAfterDelete();
if ( m_Timer != null && m_Timer.Running )
m_Timer.Stop();
}
if (m_Timer != null && m_Timer.Running)
m_Timer.Stop();
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
int version = reader.ReadEncodedInt();
m_Timer = new InternalTimer( this, TimeSpan.Zero );
m_Timer.Start();
}
m_Timer = new InternalTimer(this, TimeSpan.Zero);
m_Timer.Start();
}
private void UpdateImage()
{
int hours;
int minutes;
private void UpdateImage()
{
int hours;
int minutes;
Clock.GetTime( Map, X, Y, out hours, out minutes );
Clock.GetTime(Map, X, Y, out hours, out minutes);
if ( FacingSouth )
{
if ( hours < 4 )
ItemID = 0x2A60;
else if ( hours < 6 )
ItemID = 0x2A5F;
else if ( hours < 8 )
ItemID = 0x2A5E;
else if ( hours < 16 )
ItemID = 0x2A5D;
else if ( hours < 18 )
ItemID = 0x2A5E;
else if ( hours < 20 )
ItemID = 0x2A5F;
else
ItemID = 0x2A60;
}
else
{
if ( hours < 4 )
ItemID = 0x2A64;
else if ( hours < 6 )
ItemID = 0x2A63;
else if ( hours < 8 )
ItemID = 0x2A62;
else if ( hours < 16 )
ItemID = 0x2A61;
else if ( hours < 18 )
ItemID = 0x2A62;
else if ( hours < 20 )
ItemID = 0x2A63;
else
ItemID = 0x2A64;
}
}
if (FacingSouth)
{
if (hours < 4)
ItemID = 0x2A60;
else if (hours < 6)
ItemID = 0x2A5F;
else if (hours < 8)
ItemID = 0x2A5E;
else if (hours < 16)
ItemID = 0x2A5D;
else if (hours < 18)
ItemID = 0x2A5E;
else if (hours < 20)
ItemID = 0x2A5F;
else
ItemID = 0x2A60;
}
else
{
if (hours < 4)
ItemID = 0x2A64;
else if (hours < 6)
ItemID = 0x2A63;
else if (hours < 8)
ItemID = 0x2A62;
else if (hours < 16)
ItemID = 0x2A61;
else if (hours < 18)
ItemID = 0x2A62;
else if (hours < 20)
ItemID = 0x2A63;
else
ItemID = 0x2A64;
}
}
private class InternalTimer : Timer
{
private AwesomeDisturbingPortraitComponent m_Component;
private class InternalTimer : Timer
{
private AwesomeDisturbingPortraitComponent m_Component;
public InternalTimer( AwesomeDisturbingPortraitComponent c, TimeSpan delay ) : base( delay, TimeSpan.FromMinutes( 10 ) )
{
m_Component = c;
public InternalTimer(AwesomeDisturbingPortraitComponent c, TimeSpan delay) : base(delay,
TimeSpan.FromMinutes(10))
{
m_Component = c;
Priority = TimerPriority.OneMinute;
}
Priority = TimerPriority.OneMinute;
}
protected override void OnTick()
{
if ( m_Component != null && !m_Component.Deleted )
m_Component.UpdateImage();
}
}
}
protected override void OnTick()
{
if (m_Component != null && !m_Component.Deleted)
m_Component.UpdateImage();
}
}
}
public class AwesomeDisturbingPortraitAddon : BaseAddon
{
public override BaseAddonDeed Deed => new AwesomeDisturbingPortraitDeed();
public class AwesomeDisturbingPortraitAddon : BaseAddon
{
[Constructible]
public AwesomeDisturbingPortraitAddon()
{
AddComponent(new AwesomeDisturbingPortraitComponent(), 0, 0, 0);
}
[Constructible]
public AwesomeDisturbingPortraitAddon()
{
AddComponent( new AwesomeDisturbingPortraitComponent(), 0, 0, 0 );
}
public AwesomeDisturbingPortraitAddon(Serial serial) : base(serial)
{
}
public AwesomeDisturbingPortraitAddon( Serial serial ) : base( serial )
{
}
public override BaseAddonDeed Deed => new AwesomeDisturbingPortraitDeed();
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class AwesomeDisturbingPortraitDeed : BaseAddonDeed
{
public override BaseAddon Addon => new AwesomeDisturbingPortraitAddon();
public override int LabelNumber => 1074479; // Disturbing portrait
public class AwesomeDisturbingPortraitDeed : BaseAddonDeed
{
[Constructible]
public AwesomeDisturbingPortraitDeed()
{
LootType = LootType.Blessed;
}
[Constructible]
public AwesomeDisturbingPortraitDeed()
{
LootType = LootType.Blessed;
}
public AwesomeDisturbingPortraitDeed(Serial serial) : base(serial)
{
}
public AwesomeDisturbingPortraitDeed( Serial serial ) : base( serial )
{
}
public override BaseAddon Addon => new AwesomeDisturbingPortraitAddon();
public override int LabelNumber => 1074479; // Disturbing portrait
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -2,192 +2,190 @@ using System;
namespace Server.Items
{
public class BedOfNailsComponent : AddonComponent
{
public override int LabelNumber => 1074801; // Bed of Nails
public class BedOfNailsComponent : AddonComponent
{
public BedOfNailsComponent(int itemID)
: base(itemID)
{
}
public BedOfNailsComponent( int itemID )
: base( itemID )
{
}
public BedOfNailsComponent(Serial serial)
: base(serial)
{
}
public BedOfNailsComponent( Serial serial )
: base( serial )
{
}
public override int LabelNumber => 1074801; // Bed of Nails
public override bool OnMoveOver( Mobile m )
{
bool allow = base.OnMoveOver( m );
public override bool OnMoveOver(Mobile m)
{
bool allow = base.OnMoveOver(m);
if ( allow && Addon is BedOfNailsAddon addon )
addon.OnMoveOver( m );
if (allow && Addon is BedOfNailsAddon addon)
addon.OnMoveOver(m);
return allow;
}
return allow;
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
[FlippableAddon( Direction.South, Direction.East )]
public class BedOfNailsAddon : BaseAddon
{
public override BaseAddonDeed Deed => new BedOfNailsDeed();
[FlippableAddon(Direction.South, Direction.East)]
public class BedOfNailsAddon : BaseAddon
{
private InternalTimer m_Timer;
private InternalTimer m_Timer;
[Constructible]
public BedOfNailsAddon()
{
Direction = Direction.South;
[Constructible]
public BedOfNailsAddon()
{
Direction = Direction.South;
AddComponent(new BedOfNailsComponent(0x2A81), 0, 0, 0);
AddComponent(new BedOfNailsComponent(0x2A82), 0, -1, 0);
}
AddComponent( new BedOfNailsComponent( 0x2A81 ), 0, 0, 0 );
AddComponent( new BedOfNailsComponent( 0x2A82 ), 0, -1, 0 );
}
public BedOfNailsAddon(Serial serial)
: base(serial)
{
}
public BedOfNailsAddon( Serial serial )
: base( serial )
{
}
public override BaseAddonDeed Deed => new BedOfNailsDeed();
public override bool OnMoveOver( Mobile m )
{
if ( m.Alive && ( m.AccessLevel == AccessLevel.Player || !m.Hidden ) )
{
if ( m.Player )
{
if ( m.Female )
Effects.PlaySound( Location, Map, Utility.RandomMinMax( 0x53B, 0x53D ) );
else
Effects.PlaySound( Location, Map, Utility.RandomMinMax( 0x53E, 0x540 ) );
}
public override bool OnMoveOver(Mobile m)
{
if (m.Alive && (m.AccessLevel == AccessLevel.Player || !m.Hidden))
{
if (m.Player)
{
if (m.Female)
Effects.PlaySound(Location, Map, Utility.RandomMinMax(0x53B, 0x53D));
else
Effects.PlaySound(Location, Map, Utility.RandomMinMax(0x53E, 0x540));
}
if ( m_Timer == null || !m_Timer.Running )
( m_Timer = new InternalTimer( m ) ).Start();
}
if (m_Timer == null || !m_Timer.Running)
(m_Timer = new InternalTimer(m)).Start();
}
return true;
}
return true;
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
int version = reader.ReadEncodedInt();
}
public virtual void Flip( Mobile from, Direction direction )
{
switch( direction )
{
case Direction.East:
AddComponent( new BedOfNailsComponent( 0x2A89 ), 0, 0, 0 );
AddComponent( new BedOfNailsComponent( 0x2A8A ), -1, 0, 0 );
break;
case Direction.South:
AddComponent( new BedOfNailsComponent( 0x2A81 ), 0, 0, 0 );
AddComponent( new BedOfNailsComponent( 0x2A82 ), 0, -1, 0 );
break;
}
}
public virtual void Flip(Mobile from, Direction direction)
{
switch (direction)
{
case Direction.East:
AddComponent(new BedOfNailsComponent(0x2A89), 0, 0, 0);
AddComponent(new BedOfNailsComponent(0x2A8A), -1, 0, 0);
break;
case Direction.South:
AddComponent(new BedOfNailsComponent(0x2A81), 0, 0, 0);
AddComponent(new BedOfNailsComponent(0x2A82), 0, -1, 0);
break;
}
}
private class InternalTimer : Timer
{
private Mobile m_Mobile;
private Point3D m_Location;
private class InternalTimer : Timer
{
private Point3D m_Location;
private Mobile m_Mobile;
public InternalTimer( Mobile m )
: base( TimeSpan.Zero, TimeSpan.FromSeconds( 1 ), 5 )
{
m_Mobile = m;
m_Location = Point3D.Zero;
}
public InternalTimer(Mobile m)
: base(TimeSpan.Zero, TimeSpan.FromSeconds(1), 5)
{
m_Mobile = m;
m_Location = Point3D.Zero;
}
protected override void OnTick()
{
if ( m_Mobile?.Map == null || m_Mobile.Deleted || !m_Mobile.Alive || m_Mobile.Map == Map.Internal )
{
Stop();
}
else
{
if ( m_Location != m_Mobile.Location )
{
int amount = Utility.RandomMinMax( 0, 7 );
protected override void OnTick()
{
if (m_Mobile?.Map == null || m_Mobile.Deleted || !m_Mobile.Alive || m_Mobile.Map == Map.Internal)
{
Stop();
}
else
{
if (m_Location != m_Mobile.Location)
{
int amount = Utility.RandomMinMax(0, 7);
for( int i = 0; i < amount; i++ )
{
int x = m_Mobile.X + Utility.RandomMinMax( -1, 1 );
int y = m_Mobile.Y + Utility.RandomMinMax( -1, 1 );
int z = m_Mobile.Z;
for (int i = 0; i < amount; i++)
{
int x = m_Mobile.X + Utility.RandomMinMax(-1, 1);
int y = m_Mobile.Y + Utility.RandomMinMax(-1, 1);
int z = m_Mobile.Z;
if ( !m_Mobile.Map.CanFit( x, y, z, 1, false, false, true ) )
{
z = m_Mobile.Map.GetAverageZ( x, y );
if (!m_Mobile.Map.CanFit(x, y, z, 1, false, false, true))
{
z = m_Mobile.Map.GetAverageZ(x, y);
if ( !m_Mobile.Map.CanFit( x, y, z, 1, false, false, true ) )
{
continue;
}
}
if (!m_Mobile.Map.CanFit(x, y, z, 1, false, false, true)) continue;
}
Blood blood = new Blood( Utility.RandomMinMax( 0x122C, 0x122F ) );
blood.MoveToWorld( new Point3D( x, y, z ), m_Mobile.Map );
}
m_Location = m_Mobile.Location;
}
}
}
}
}
Blood blood = new Blood(Utility.RandomMinMax(0x122C, 0x122F));
blood.MoveToWorld(new Point3D(x, y, z), m_Mobile.Map);
}
public class BedOfNailsDeed : BaseAddonDeed
{
public override BaseAddon Addon => new BedOfNailsAddon();
public override int LabelNumber => 1074801; // Bed of Nails
m_Location = m_Mobile.Location;
}
}
}
}
}
[Constructible]
public BedOfNailsDeed()
{
LootType = LootType.Blessed;
}
public class BedOfNailsDeed : BaseAddonDeed
{
[Constructible]
public BedOfNailsDeed()
{
LootType = LootType.Blessed;
}
public BedOfNailsDeed( Serial serial )
: base( serial )
{
}
public BedOfNailsDeed(Serial serial)
: base(serial)
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override BaseAddon Addon => new BedOfNailsAddon();
public override int LabelNumber => 1074801; // Bed of Nails
writer.WriteEncodedInt( 0 ); // version
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
writer.WriteEncodedInt(0); // version
}
int version = reader.ReadEncodedInt();
}
}
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -1,117 +1,117 @@
namespace Server.Items
{
public class BoneCouchComponent : AddonComponent
{
public override int LabelNumber => 1074477; // Bone couch
public class BoneCouchComponent : AddonComponent
{
public BoneCouchComponent(int itemID) : base(itemID)
{
}
public BoneCouchComponent( int itemID ) : base( itemID )
{
}
public BoneCouchComponent(Serial serial) : base(serial)
{
}
public BoneCouchComponent( Serial serial ) : base( serial )
{
}
public override int LabelNumber => 1074477; // Bone couch
public override bool OnMoveOver( Mobile m )
{
bool allow = base.OnMoveOver( m );
public override bool OnMoveOver(Mobile m)
{
bool allow = base.OnMoveOver(m);
if ( allow && m.Alive && m.Player && ( m.AccessLevel == AccessLevel.Player || !m.Hidden ) )
Effects.PlaySound( Location, Map, Utility.RandomMinMax( 0x547, 0x54A ) );
if (allow && m.Alive && m.Player && (m.AccessLevel == AccessLevel.Player || !m.Hidden))
Effects.PlaySound(Location, Map, Utility.RandomMinMax(0x547, 0x54A));
return allow;
}
return allow;
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
[FlippableAddon( Direction.South, Direction.East )]
public class BoneCouchAddon : BaseAddon
{
public override BaseAddonDeed Deed => new BoneCouchDeed();
[FlippableAddon(Direction.South, Direction.East)]
public class BoneCouchAddon : BaseAddon
{
[Constructible]
public BoneCouchAddon()
{
Direction = Direction.South;
[Constructible]
public BoneCouchAddon()
{
Direction = Direction.South;
AddComponent(new BoneCouchComponent(0x2A5A), 0, 0, 0);
AddComponent(new BoneCouchComponent(0x2A5B), -1, 0, 0);
}
AddComponent( new BoneCouchComponent( 0x2A5A ), 0, 0, 0 );
AddComponent( new BoneCouchComponent( 0x2A5B ), -1, 0, 0 );
}
public BoneCouchAddon(Serial serial) : base(serial)
{
}
public BoneCouchAddon( Serial serial ) : base( serial )
{
}
public override BaseAddonDeed Deed => new BoneCouchDeed();
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
int version = reader.ReadEncodedInt();
}
public virtual void Flip( Mobile from, Direction direction )
{
switch ( direction )
{
case Direction.East:
AddComponent( new BoneCouchComponent( 0x2A80 ), 0, 0, 0 );
AddComponent( new BoneCouchComponent( 0x2A7F ), 0, 1, 0 );
break;
case Direction.South:
AddComponent( new BoneCouchComponent( 0x2A5A ), 0, 0, 0 );
AddComponent( new BoneCouchComponent( 0x2A5B ), -1, 0, 0 );
break;
}
}
}
public virtual void Flip(Mobile from, Direction direction)
{
switch (direction)
{
case Direction.East:
AddComponent(new BoneCouchComponent(0x2A80), 0, 0, 0);
AddComponent(new BoneCouchComponent(0x2A7F), 0, 1, 0);
break;
case Direction.South:
AddComponent(new BoneCouchComponent(0x2A5A), 0, 0, 0);
AddComponent(new BoneCouchComponent(0x2A5B), -1, 0, 0);
break;
}
}
}
public class BoneCouchDeed : BaseAddonDeed
{
public override BaseAddon Addon => new BoneCouchAddon();
public override int LabelNumber => 1074477; // Bone couch
public class BoneCouchDeed : BaseAddonDeed
{
[Constructible]
public BoneCouchDeed()
{
LootType = LootType.Blessed;
}
[Constructible]
public BoneCouchDeed()
{
LootType = LootType.Blessed;
}
public BoneCouchDeed(Serial serial) : base(serial)
{
}
public BoneCouchDeed( Serial serial ) : base( serial )
{
}
public override BaseAddon Addon => new BoneCouchAddon();
public override int LabelNumber => 1074477; // Bone couch
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -1,61 +1,61 @@
namespace Server.Items
{
public class BoneTableAddon : BaseAddon
{
public override BaseAddonDeed Deed => new BoneTableDeed();
public class BoneTableAddon : BaseAddon
{
[Constructible]
public BoneTableAddon()
{
AddComponent(new LocalizedAddonComponent(0x2A5C, 1074478), 0, 0, 0);
}
[Constructible]
public BoneTableAddon()
{
AddComponent( new LocalizedAddonComponent( 0x2A5C, 1074478 ), 0, 0, 0 );
}
public BoneTableAddon(Serial serial) : base(serial)
{
}
public BoneTableAddon( Serial serial ) : base( serial )
{
}
public override BaseAddonDeed Deed => new BoneTableDeed();
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class BoneTableDeed : BaseAddonDeed
{
public override BaseAddon Addon => new BoneTableAddon();
public override int LabelNumber => 1074478; // Bone table
public class BoneTableDeed : BaseAddonDeed
{
[Constructible]
public BoneTableDeed()
{
LootType = LootType.Blessed;
}
[Constructible]
public BoneTableDeed()
{
LootType = LootType.Blessed;
}
public BoneTableDeed(Serial serial) : base(serial)
{
}
public BoneTableDeed( Serial serial ) : base( serial )
{
}
public override BaseAddon Addon => new BoneTableAddon();
public override int LabelNumber => 1074478; // Bone table
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -1,99 +1,99 @@
namespace Server.Items
{
[Flippable( 0x2A58, 0x2A59 )]
public class BoneThroneComponent : AddonComponent
{
public override int LabelNumber => 1074476; // Bone throne
[Flippable(0x2A58, 0x2A59)]
public class BoneThroneComponent : AddonComponent
{
public BoneThroneComponent() : base(0x2A58)
{
}
public BoneThroneComponent() : base( 0x2A58 )
{
}
public BoneThroneComponent(Serial serial) : base(serial)
{
}
public BoneThroneComponent( Serial serial ) : base( serial )
{
}
public override int LabelNumber => 1074476; // Bone throne
public override bool OnMoveOver( Mobile m )
{
bool allow = base.OnMoveOver( m );
public override bool OnMoveOver(Mobile m)
{
bool allow = base.OnMoveOver(m);
if ( allow && m.Alive && m.Player && ( m.AccessLevel == AccessLevel.Player || !m.Hidden ) )
Effects.PlaySound( Location, Map, Utility.RandomMinMax( 0x54B, 0x54D ) );
if (allow && m.Alive && m.Player && (m.AccessLevel == AccessLevel.Player || !m.Hidden))
Effects.PlaySound(Location, Map, Utility.RandomMinMax(0x54B, 0x54D));
return allow;
}
return allow;
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class BoneThroneAddon : BaseAddon
{
public override BaseAddonDeed Deed => new BoneThroneDeed();
public class BoneThroneAddon : BaseAddon
{
[Constructible]
public BoneThroneAddon()
{
AddComponent(new BoneThroneComponent(), 0, 0, 0);
}
[Constructible]
public BoneThroneAddon()
{
AddComponent( new BoneThroneComponent(), 0, 0, 0 );
}
public BoneThroneAddon(Serial serial) : base(serial)
{
}
public BoneThroneAddon( Serial serial ) : base( serial )
{
}
public override BaseAddonDeed Deed => new BoneThroneDeed();
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class BoneThroneDeed : BaseAddonDeed
{
public override BaseAddon Addon => new BoneThroneAddon();
public override int LabelNumber => 1074476; // Bone throne
public class BoneThroneDeed : BaseAddonDeed
{
[Constructible]
public BoneThroneDeed()
{
LootType = LootType.Blessed;
}
[Constructible]
public BoneThroneDeed()
{
LootType = LootType.Blessed;
}
public BoneThroneDeed(Serial serial) : base(serial)
{
}
public BoneThroneDeed( Serial serial ) : base( serial )
{
}
public override BaseAddon Addon => new BoneThroneAddon();
public override int LabelNumber => 1074476; // Bone throne
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -3,135 +3,135 @@ using Server.Network;
namespace Server.Items
{
[Flippable( 0x2A69, 0x2A6D )]
public class CreepyPortraitComponent : AddonComponent
{
public override int LabelNumber => 1074481; // Creepy portrait
public override bool HandlesOnMovement => true;
[Flippable(0x2A69, 0x2A6D)]
public class CreepyPortraitComponent : AddonComponent
{
public CreepyPortraitComponent() : base(0x2A69)
{
}
public CreepyPortraitComponent() : base( 0x2A69 )
{
}
public CreepyPortraitComponent(Serial serial) : base(serial)
{
}
public CreepyPortraitComponent( Serial serial ) : base( serial )
{
}
public override int LabelNumber => 1074481; // Creepy portrait
public override bool HandlesOnMovement => true;
public override void OnDoubleClick( Mobile from )
{
if ( Utility.InRange( Location, from.Location, 2 ) )
Effects.PlaySound( Location, Map, Utility.RandomMinMax( 0x565, 0x566 ) );
else
from.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1019045 ); // I can't reach that.
}
public override void OnDoubleClick(Mobile from)
{
if (Utility.InRange(Location, from.Location, 2))
Effects.PlaySound(Location, Map, Utility.RandomMinMax(0x565, 0x566));
else
from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1019045); // I can't reach that.
}
public override void OnMovement( Mobile m, Point3D old )
{
if ( m.Alive && m.Player && ( m.AccessLevel == AccessLevel.Player || !m.Hidden ) )
{
if ( !Utility.InRange( old, Location, 2 ) && Utility.InRange( m.Location, Location, 2 ) )
{
if ( ItemID == 0x2A69 || ItemID == 0x2A6D )
{
Up();
Timer.DelayCall( TimeSpan.FromSeconds( 0.5 ), TimeSpan.FromSeconds( 0.5 ), 2, Up );
}
}
else if ( Utility.InRange( old, Location, 2 ) && !Utility.InRange( m.Location, Location, 2 ) )
{
if ( ItemID == 0x2A6C || ItemID == 0x2A70 )
{
Down();
Timer.DelayCall( TimeSpan.FromSeconds( 0.5 ), TimeSpan.FromSeconds( 0.5 ), 2, Down );
}
}
}
}
public override void OnMovement(Mobile m, Point3D old)
{
if (m.Alive && m.Player && (m.AccessLevel == AccessLevel.Player || !m.Hidden))
{
if (!Utility.InRange(old, Location, 2) && Utility.InRange(m.Location, Location, 2))
{
if (ItemID == 0x2A69 || ItemID == 0x2A6D)
{
Up();
Timer.DelayCall(TimeSpan.FromSeconds(0.5), TimeSpan.FromSeconds(0.5), 2, Up);
}
}
else if (Utility.InRange(old, Location, 2) && !Utility.InRange(m.Location, Location, 2))
{
if (ItemID == 0x2A6C || ItemID == 0x2A70)
{
Down();
Timer.DelayCall(TimeSpan.FromSeconds(0.5), TimeSpan.FromSeconds(0.5), 2, Down);
}
}
}
}
private void Up()
{
ItemID += 1;
}
private void Up()
{
ItemID += 1;
}
private void Down()
{
ItemID -= 1;
}
private void Down()
{
ItemID -= 1;
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 1 ); // version
}
writer.WriteEncodedInt(1); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
int version = reader.ReadEncodedInt();
if ( version == 0 && ItemID != 0x2A69 && ItemID != 0x2A6D )
ItemID = 0x2A69;
}
}
if (version == 0 && ItemID != 0x2A69 && ItemID != 0x2A6D)
ItemID = 0x2A69;
}
}
public class CreepyPortraitAddon : BaseAddon
{
public override BaseAddonDeed Deed => new CreepyPortraitDeed();
public class CreepyPortraitAddon : BaseAddon
{
[Constructible]
public CreepyPortraitAddon()
{
AddComponent(new CreepyPortraitComponent(), 0, 0, 0);
}
[Constructible]
public CreepyPortraitAddon()
{
AddComponent( new CreepyPortraitComponent(), 0, 0, 0 );
}
public CreepyPortraitAddon(Serial serial) : base(serial)
{
}
public CreepyPortraitAddon( Serial serial ) : base( serial )
{
}
public override BaseAddonDeed Deed => new CreepyPortraitDeed();
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class CreepyPortraitDeed : BaseAddonDeed
{
public override BaseAddon Addon => new CreepyPortraitAddon();
public override int LabelNumber => 1074481; // Creepy portrait
public class CreepyPortraitDeed : BaseAddonDeed
{
[Constructible]
public CreepyPortraitDeed()
{
LootType = LootType.Blessed;
}
[Constructible]
public CreepyPortraitDeed()
{
LootType = LootType.Blessed;
}
public CreepyPortraitDeed(Serial serial) : base(serial)
{
}
public CreepyPortraitDeed( Serial serial ) : base( serial )
{
}
public override BaseAddon Addon => new CreepyPortraitAddon();
public override int LabelNumber => 1074481; // Creepy portrait
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -3,119 +3,119 @@ using Server.Network;
namespace Server.Items
{
[Flippable( 0x2A5D, 0x2A61 )]
public class DisturbingPortraitComponent : AddonComponent
{
public override int LabelNumber => 1074479; // Disturbing portrait
[Flippable(0x2A5D, 0x2A61)]
public class DisturbingPortraitComponent : AddonComponent
{
private Timer m_Timer;
private Timer m_Timer;
public DisturbingPortraitComponent() : base(0x2A5D)
{
m_Timer = Timer.DelayCall(TimeSpan.FromMinutes(3), TimeSpan.FromMinutes(3), Change);
}
public DisturbingPortraitComponent() : base( 0x2A5D )
{
m_Timer = Timer.DelayCall( TimeSpan.FromMinutes( 3 ), TimeSpan.FromMinutes( 3 ), Change );
}
public DisturbingPortraitComponent(Serial serial) : base(serial)
{
}
public DisturbingPortraitComponent( Serial serial ) : base( serial )
{
}
public override int LabelNumber => 1074479; // Disturbing portrait
public override void OnDoubleClick( Mobile from )
{
if ( Utility.InRange( Location, from.Location, 2 ) )
Effects.PlaySound( Location, Map, Utility.RandomMinMax( 0x567, 0x568 ) );
else
from.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1019045 ); // I can't reach that.
}
public override void OnDoubleClick(Mobile from)
{
if (Utility.InRange(Location, from.Location, 2))
Effects.PlaySound(Location, Map, Utility.RandomMinMax(0x567, 0x568));
else
from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1019045); // I can't reach that.
}
public override void OnAfterDelete()
{
base.OnAfterDelete();
public override void OnAfterDelete()
{
base.OnAfterDelete();
if ( m_Timer != null && m_Timer.Running )
m_Timer.Stop();
}
if (m_Timer != null && m_Timer.Running)
m_Timer.Stop();
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
int version = reader.ReadEncodedInt();
m_Timer = Timer.DelayCall( TimeSpan.FromMinutes( 3 ), TimeSpan.FromMinutes( 3 ), Change );
}
m_Timer = Timer.DelayCall(TimeSpan.FromMinutes(3), TimeSpan.FromMinutes(3), Change);
}
private void Change()
{
if ( ItemID < 0x2A61 )
ItemID = Utility.RandomMinMax( 0x2A5D, 0x2A60 );
else
ItemID = Utility.RandomMinMax( 0x2A61, 0x2A64 );
}
}
private void Change()
{
if (ItemID < 0x2A61)
ItemID = Utility.RandomMinMax(0x2A5D, 0x2A60);
else
ItemID = Utility.RandomMinMax(0x2A61, 0x2A64);
}
}
public class DisturbingPortraitAddon : BaseAddon
{
public override BaseAddonDeed Deed => new DisturbingPortraitDeed();
public class DisturbingPortraitAddon : BaseAddon
{
[Constructible]
public DisturbingPortraitAddon()
{
AddComponent(new DisturbingPortraitComponent(), 0, 0, 0);
}
[Constructible]
public DisturbingPortraitAddon()
{
AddComponent( new DisturbingPortraitComponent(), 0, 0, 0 );
}
public DisturbingPortraitAddon(Serial serial) : base(serial)
{
}
public DisturbingPortraitAddon( Serial serial ) : base( serial )
{
}
public override BaseAddonDeed Deed => new DisturbingPortraitDeed();
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class DisturbingPortraitDeed : BaseAddonDeed
{
public override BaseAddon Addon => new DisturbingPortraitAddon();
public override int LabelNumber => 1074479; // Disturbing portrait
public class DisturbingPortraitDeed : BaseAddonDeed
{
[Constructible]
public DisturbingPortraitDeed()
{
LootType = LootType.Blessed;
}
[Constructible]
public DisturbingPortraitDeed()
{
LootType = LootType.Blessed;
}
public DisturbingPortraitDeed(Serial serial) : base(serial)
{
}
public DisturbingPortraitDeed( Serial serial ) : base( serial )
{
}
public override BaseAddon Addon => new DisturbingPortraitAddon();
public override int LabelNumber => 1074479; // Disturbing portrait
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -1,112 +1,112 @@
namespace Server.Items
{
[Flippable( 0x2A7B, 0x2A7D )]
public class HaunterMirrorComponent : AddonComponent
{
public override int LabelNumber => 1074800; // Haunted Mirror
public override bool HandlesOnMovement => true;
[Flippable(0x2A7B, 0x2A7D)]
public class HaunterMirrorComponent : AddonComponent
{
public HaunterMirrorComponent() : base(0x2A7B)
{
}
public HaunterMirrorComponent() : base( 0x2A7B )
{
}
public HaunterMirrorComponent(Serial serial) : base(serial)
{
}
public HaunterMirrorComponent( Serial serial ) : base( serial )
{
}
public override int LabelNumber => 1074800; // Haunted Mirror
public override bool HandlesOnMovement => true;
public override void OnMovement( Mobile m, Point3D old )
{
base.OnMovement( m, old );
public override void OnMovement(Mobile m, Point3D old)
{
base.OnMovement(m, old);
if ( m.Alive && m.Player && ( m.AccessLevel == AccessLevel.Player || !m.Hidden ) )
{
if ( !Utility.InRange( old, Location, 2 ) && Utility.InRange( m.Location, Location, 2 ) )
{
if ( ItemID == 0x2A7B || ItemID == 0x2A7D )
{
Effects.PlaySound( Location, Map, Utility.RandomMinMax( 0x551, 0x553 ) );
ItemID += 1;
}
}
else if ( Utility.InRange( old, Location, 2 ) && !Utility.InRange( m.Location, Location, 2 ) )
{
if ( ItemID == 0x2A7C || ItemID == 0x2A7E )
ItemID -= 1;
}
}
}
if (m.Alive && m.Player && (m.AccessLevel == AccessLevel.Player || !m.Hidden))
{
if (!Utility.InRange(old, Location, 2) && Utility.InRange(m.Location, Location, 2))
{
if (ItemID == 0x2A7B || ItemID == 0x2A7D)
{
Effects.PlaySound(Location, Map, Utility.RandomMinMax(0x551, 0x553));
ItemID += 1;
}
}
else if (Utility.InRange(old, Location, 2) && !Utility.InRange(m.Location, Location, 2))
{
if (ItemID == 0x2A7C || ItemID == 0x2A7E)
ItemID -= 1;
}
}
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class HaunterMirrorAddon : BaseAddon
{
public override BaseAddonDeed Deed => new HaunterMirrorDeed();
public class HaunterMirrorAddon : BaseAddon
{
[Constructible]
public HaunterMirrorAddon()
{
AddComponent(new HaunterMirrorComponent(), 0, 0, 0);
}
[Constructible]
public HaunterMirrorAddon()
{
AddComponent( new HaunterMirrorComponent(), 0, 0, 0 );
}
public HaunterMirrorAddon(Serial serial) : base(serial)
{
}
public HaunterMirrorAddon( Serial serial ) : base( serial )
{
}
public override BaseAddonDeed Deed => new HaunterMirrorDeed();
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class HaunterMirrorDeed : BaseAddonDeed
{
public override BaseAddon Addon => new HaunterMirrorAddon();
public override int LabelNumber => 1074800; // Haunted Mirror
public class HaunterMirrorDeed : BaseAddonDeed
{
[Constructible]
public HaunterMirrorDeed()
{
LootType = LootType.Blessed;
}
[Constructible]
public HaunterMirrorDeed()
{
LootType = LootType.Blessed;
}
public HaunterMirrorDeed(Serial serial) : base(serial)
{
}
public HaunterMirrorDeed( Serial serial ) : base( serial )
{
}
public override BaseAddon Addon => new HaunterMirrorAddon();
public override int LabelNumber => 1074800; // Haunted Mirror
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -2,97 +2,97 @@ using Server.Network;
namespace Server.Items
{
[Flippable( 0x2A75, 0x2A76 )]
public class MountedPixieBlueComponent : AddonComponent
{
public override int LabelNumber => 1074482; // Mounted pixie
[Flippable(0x2A75, 0x2A76)]
public class MountedPixieBlueComponent : AddonComponent
{
public MountedPixieBlueComponent() : base(0x2A75)
{
}
public MountedPixieBlueComponent() : base( 0x2A75 )
{
}
public MountedPixieBlueComponent(Serial serial) : base(serial)
{
}
public MountedPixieBlueComponent( Serial serial ) : base( serial )
{
}
public override int LabelNumber => 1074482; // Mounted pixie
public override void OnDoubleClick( Mobile from )
{
if ( Utility.InRange( Location, from.Location, 2 ) )
Effects.PlaySound( Location, Map, Utility.RandomMinMax( 0x55C, 0x55E ) );
else
from.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1019045 ); // I can't reach that.
}
public override void OnDoubleClick(Mobile from)
{
if (Utility.InRange(Location, from.Location, 2))
Effects.PlaySound(Location, Map, Utility.RandomMinMax(0x55C, 0x55E));
else
from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1019045); // I can't reach that.
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class MountedPixieBlueAddon : BaseAddon
{
public override BaseAddonDeed Deed => new MountedPixieBlueDeed();
public class MountedPixieBlueAddon : BaseAddon
{
public MountedPixieBlueAddon()
{
AddComponent(new MountedPixieBlueComponent(), 0, 0, 0);
}
public MountedPixieBlueAddon()
{
AddComponent( new MountedPixieBlueComponent(), 0, 0, 0 );
}
public MountedPixieBlueAddon(Serial serial) : base(serial)
{
}
public MountedPixieBlueAddon( Serial serial ) : base( serial )
{
}
public override BaseAddonDeed Deed => new MountedPixieBlueDeed();
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class MountedPixieBlueDeed : BaseAddonDeed
{
public override BaseAddon Addon => new MountedPixieBlueAddon();
public override int LabelNumber => 1074482; // Mounted pixie
public class MountedPixieBlueDeed : BaseAddonDeed
{
[Constructible]
public MountedPixieBlueDeed()
{
LootType = LootType.Blessed;
}
[Constructible]
public MountedPixieBlueDeed()
{
LootType = LootType.Blessed;
}
public MountedPixieBlueDeed(Serial serial) : base(serial)
{
}
public MountedPixieBlueDeed( Serial serial ) : base( serial )
{
}
public override BaseAddon Addon => new MountedPixieBlueAddon();
public override int LabelNumber => 1074482; // Mounted pixie
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -2,97 +2,97 @@ using Server.Network;
namespace Server.Items
{
[Flippable( 0x2A71, 0x2A72 )]
public class MountedPixieGreenComponent : AddonComponent
{
public override int LabelNumber => 1074482; // Mounted pixie
[Flippable(0x2A71, 0x2A72)]
public class MountedPixieGreenComponent : AddonComponent
{
public MountedPixieGreenComponent() : base(0x2A71)
{
}
public MountedPixieGreenComponent() : base( 0x2A71 )
{
}
public MountedPixieGreenComponent(Serial serial) : base(serial)
{
}
public MountedPixieGreenComponent( Serial serial ) : base( serial )
{
}
public override int LabelNumber => 1074482; // Mounted pixie
public override void OnDoubleClick( Mobile from )
{
if ( Utility.InRange( Location, from.Location, 2 ) )
Effects.PlaySound( Location, Map, Utility.RandomMinMax( 0x554, 0x557 ) );
else
from.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1019045 ); // I can't reach that.
}
public override void OnDoubleClick(Mobile from)
{
if (Utility.InRange(Location, from.Location, 2))
Effects.PlaySound(Location, Map, Utility.RandomMinMax(0x554, 0x557));
else
from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1019045); // I can't reach that.
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class MountedPixieGreenAddon : BaseAddon
{
public override BaseAddonDeed Deed => new MountedPixieGreenDeed();
public class MountedPixieGreenAddon : BaseAddon
{
public MountedPixieGreenAddon()
{
AddComponent(new MountedPixieGreenComponent(), 0, 0, 0);
}
public MountedPixieGreenAddon()
{
AddComponent( new MountedPixieGreenComponent(), 0, 0, 0 );
}
public MountedPixieGreenAddon(Serial serial) : base(serial)
{
}
public MountedPixieGreenAddon( Serial serial ) : base( serial )
{
}
public override BaseAddonDeed Deed => new MountedPixieGreenDeed();
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class MountedPixieGreenDeed : BaseAddonDeed
{
public override BaseAddon Addon => new MountedPixieGreenAddon();
public override int LabelNumber => 1074482; // Mounted pixie
public class MountedPixieGreenDeed : BaseAddonDeed
{
[Constructible]
public MountedPixieGreenDeed()
{
LootType = LootType.Blessed;
}
[Constructible]
public MountedPixieGreenDeed()
{
LootType = LootType.Blessed;
}
public MountedPixieGreenDeed(Serial serial) : base(serial)
{
}
public MountedPixieGreenDeed( Serial serial ) : base( serial )
{
}
public override BaseAddon Addon => new MountedPixieGreenAddon();
public override int LabelNumber => 1074482; // Mounted pixie
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -2,97 +2,97 @@ using Server.Network;
namespace Server.Items
{
[Flippable( 0x2A77, 0x2A78 )]
public class MountedPixieLimeComponent : AddonComponent
{
public override int LabelNumber => 1074482; // Mounted pixie
[Flippable(0x2A77, 0x2A78)]
public class MountedPixieLimeComponent : AddonComponent
{
public MountedPixieLimeComponent() : base(0x2A77)
{
}
public MountedPixieLimeComponent() : base( 0x2A77 )
{
}
public MountedPixieLimeComponent(Serial serial) : base(serial)
{
}
public MountedPixieLimeComponent( Serial serial ) : base( serial )
{
}
public override int LabelNumber => 1074482; // Mounted pixie
public override void OnDoubleClick( Mobile from )
{
if ( Utility.InRange( Location, from.Location, 2 ) )
Effects.PlaySound( Location, Map, Utility.RandomMinMax( 0x55F, 0x561 ) );
else
from.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1019045 ); // I can't reach that.
}
public override void OnDoubleClick(Mobile from)
{
if (Utility.InRange(Location, from.Location, 2))
Effects.PlaySound(Location, Map, Utility.RandomMinMax(0x55F, 0x561));
else
from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1019045); // I can't reach that.
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class MountedPixieLimeAddon : BaseAddon
{
public override BaseAddonDeed Deed => new MountedPixieLimeDeed();
public class MountedPixieLimeAddon : BaseAddon
{
public MountedPixieLimeAddon()
{
AddComponent(new MountedPixieLimeComponent(), 0, 0, 0);
}
public MountedPixieLimeAddon()
{
AddComponent( new MountedPixieLimeComponent(), 0, 0, 0 );
}
public MountedPixieLimeAddon(Serial serial) : base(serial)
{
}
public MountedPixieLimeAddon( Serial serial ) : base( serial )
{
}
public override BaseAddonDeed Deed => new MountedPixieLimeDeed();
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class MountedPixieLimeDeed : BaseAddonDeed
{
public override BaseAddon Addon => new MountedPixieLimeAddon();
public override int LabelNumber => 1074482; // Mounted pixie
public class MountedPixieLimeDeed : BaseAddonDeed
{
[Constructible]
public MountedPixieLimeDeed()
{
LootType = LootType.Blessed;
}
[Constructible]
public MountedPixieLimeDeed()
{
LootType = LootType.Blessed;
}
public MountedPixieLimeDeed(Serial serial) : base(serial)
{
}
public MountedPixieLimeDeed( Serial serial ) : base( serial )
{
}
public override BaseAddon Addon => new MountedPixieLimeAddon();
public override int LabelNumber => 1074482; // Mounted pixie
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -2,97 +2,97 @@ using Server.Network;
namespace Server.Items
{
[Flippable( 0x2A73, 0x2A74 )]
public class MountedPixieOrangeComponent : AddonComponent
{
public override int LabelNumber => 1074482; // Mounted pixie
[Flippable(0x2A73, 0x2A74)]
public class MountedPixieOrangeComponent : AddonComponent
{
public MountedPixieOrangeComponent() : base(0x2A73)
{
}
public MountedPixieOrangeComponent() : base( 0x2A73 )
{
}
public MountedPixieOrangeComponent(Serial serial) : base(serial)
{
}
public MountedPixieOrangeComponent( Serial serial ) : base( serial )
{
}
public override int LabelNumber => 1074482; // Mounted pixie
public override void OnDoubleClick( Mobile from )
{
if ( Utility.InRange( Location, from.Location, 2 ) )
Effects.PlaySound( Location, Map, Utility.RandomMinMax( 0x558, 0x55B ) );
else
from.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1019045 ); // I can't reach that.
}
public override void OnDoubleClick(Mobile from)
{
if (Utility.InRange(Location, from.Location, 2))
Effects.PlaySound(Location, Map, Utility.RandomMinMax(0x558, 0x55B));
else
from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1019045); // I can't reach that.
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class MountedPixieOrangeAddon : BaseAddon
{
public override BaseAddonDeed Deed => new MountedPixieOrangeDeed();
public class MountedPixieOrangeAddon : BaseAddon
{
public MountedPixieOrangeAddon()
{
AddComponent(new MountedPixieOrangeComponent(), 0, 0, 0);
}
public MountedPixieOrangeAddon()
{
AddComponent( new MountedPixieOrangeComponent(), 0, 0, 0 );
}
public MountedPixieOrangeAddon(Serial serial) : base(serial)
{
}
public MountedPixieOrangeAddon( Serial serial ) : base( serial )
{
}
public override BaseAddonDeed Deed => new MountedPixieOrangeDeed();
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class MountedPixieOrangeDeed : BaseAddonDeed
{
public override BaseAddon Addon => new MountedPixieOrangeAddon();
public override int LabelNumber => 1074482; // Mounted pixie
public class MountedPixieOrangeDeed : BaseAddonDeed
{
[Constructible]
public MountedPixieOrangeDeed()
{
LootType = LootType.Blessed;
}
[Constructible]
public MountedPixieOrangeDeed()
{
LootType = LootType.Blessed;
}
public MountedPixieOrangeDeed(Serial serial) : base(serial)
{
}
public MountedPixieOrangeDeed( Serial serial ) : base( serial )
{
}
public override BaseAddon Addon => new MountedPixieOrangeAddon();
public override int LabelNumber => 1074482; // Mounted pixie
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -2,97 +2,97 @@ using Server.Network;
namespace Server.Items
{
[Flippable( 0x2A79, 0x2A7A )]
public class MountedPixieWhiteComponent : AddonComponent
{
public override int LabelNumber => 1074482; // Mounted pixie
[Flippable(0x2A79, 0x2A7A)]
public class MountedPixieWhiteComponent : AddonComponent
{
public MountedPixieWhiteComponent() : base(0x2A79)
{
}
public MountedPixieWhiteComponent() : base( 0x2A79 )
{
}
public MountedPixieWhiteComponent(Serial serial) : base(serial)
{
}
public MountedPixieWhiteComponent( Serial serial ) : base( serial )
{
}
public override int LabelNumber => 1074482; // Mounted pixie
public override void OnDoubleClick( Mobile from )
{
if ( Utility.InRange( Location, from.Location, 2 ) )
Effects.PlaySound( Location, Map, Utility.RandomMinMax( 0x562, 0x564 ) );
else
from.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1019045 ); // I can't reach that.
}
public override void OnDoubleClick(Mobile from)
{
if (Utility.InRange(Location, from.Location, 2))
Effects.PlaySound(Location, Map, Utility.RandomMinMax(0x562, 0x564));
else
from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1019045); // I can't reach that.
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class MountedPixieWhiteAddon : BaseAddon
{
public override BaseAddonDeed Deed => new MountedPixieWhiteDeed();
public class MountedPixieWhiteAddon : BaseAddon
{
public MountedPixieWhiteAddon()
{
AddComponent(new MountedPixieWhiteComponent(), 0, 0, 0);
}
public MountedPixieWhiteAddon()
{
AddComponent( new MountedPixieWhiteComponent(), 0, 0, 0 );
}
public MountedPixieWhiteAddon(Serial serial) : base(serial)
{
}
public MountedPixieWhiteAddon( Serial serial ) : base( serial )
{
}
public override BaseAddonDeed Deed => new MountedPixieWhiteDeed();
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class MountedPixieWhiteDeed : BaseAddonDeed
{
public override BaseAddon Addon => new MountedPixieWhiteAddon();
public override int LabelNumber => 1074482; // Mounted pixie
public class MountedPixieWhiteDeed : BaseAddonDeed
{
[Constructible]
public MountedPixieWhiteDeed()
{
LootType = LootType.Blessed;
}
[Constructible]
public MountedPixieWhiteDeed()
{
LootType = LootType.Blessed;
}
public MountedPixieWhiteDeed(Serial serial) : base(serial)
{
}
public MountedPixieWhiteDeed( Serial serial ) : base( serial )
{
}
public override BaseAddon Addon => new MountedPixieWhiteAddon();
public override int LabelNumber => 1074482; // Mounted pixie
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -2,160 +2,158 @@ using System;
namespace Server.Items
{
[FlippableAddon( Direction.South, Direction.East )]
public class SacrificialAltarAddon : BaseAddonContainer
{
public override BaseAddonContainerDeed Deed => new SacrificialAltarDeed();
public override int LabelNumber => 1074818; // Sacrificial Altar
public override int DefaultMaxWeight => 0;
public override int DefaultGumpID => 0x107;
public override int DefaultDropSound => 0x42;
[FlippableAddon(Direction.South, Direction.East)]
public class SacrificialAltarAddon : BaseAddonContainer
{
private Timer m_Timer;
private Timer m_Timer;
[Constructible]
public SacrificialAltarAddon() : base(0x2A9B)
{
Direction = Direction.South;
[Constructible]
public SacrificialAltarAddon() : base( 0x2A9B )
{
Direction = Direction.South;
AddComponent(new LocalizedContainerComponent(0x2A9A, 1074818), 1, 0, 0);
}
AddComponent( new LocalizedContainerComponent( 0x2A9A, 1074818 ), 1, 0, 0 );
}
public SacrificialAltarAddon(Serial serial) : base(serial)
{
}
public SacrificialAltarAddon( Serial serial ) : base( serial )
{
}
public override BaseAddonContainerDeed Deed => new SacrificialAltarDeed();
public override int LabelNumber => 1074818; // Sacrificial Altar
public override int DefaultMaxWeight => 0;
public override int DefaultGumpID => 0x107;
public override int DefaultDropSound => 0x42;
public override bool OnDragDrop( Mobile from, Item dropped )
{
if ( !base.OnDragDrop( from, dropped ) )
return false;
public override bool OnDragDrop(Mobile from, Item dropped)
{
if (!base.OnDragDrop(from, dropped))
return false;
if ( TotalItems >= 50 )
{
SendLocalizedMessageTo( from, 501478 ); // The trash is full! Emptying!
Empty();
}
else
{
SendLocalizedMessageTo( from, 1010442 ); // The item will be deleted in three minutes
if (TotalItems >= 50)
{
SendLocalizedMessageTo(from, 501478); // The trash is full! Emptying!
Empty();
}
else
{
SendLocalizedMessageTo(from, 1010442); // The item will be deleted in three minutes
m_Timer?.Stop();
m_Timer?.Stop();
m_Timer = Timer.DelayCall( TimeSpan.FromMinutes( 3 ), Empty );
}
m_Timer = Timer.DelayCall(TimeSpan.FromMinutes(3), Empty);
}
return true;
}
return true;
}
public override bool OnDragDropInto( Mobile from, Item item, Point3D p )
{
if ( !base.OnDragDropInto( from, item, p ) )
return false;
public override bool OnDragDropInto(Mobile from, Item item, Point3D p)
{
if (!base.OnDragDropInto(from, item, p))
return false;
if ( TotalItems >= 50 )
{
SendLocalizedMessageTo( from, 501478 ); // The trash is full! Emptying!
Empty();
}
else
{
SendLocalizedMessageTo( from, 1010442 ); // The item will be deleted in three minutes
if (TotalItems >= 50)
{
SendLocalizedMessageTo(from, 501478); // The trash is full! Emptying!
Empty();
}
else
{
SendLocalizedMessageTo(from, 1010442); // The item will be deleted in three minutes
m_Timer?.Stop();
m_Timer?.Stop();
m_Timer = Timer.DelayCall( TimeSpan.FromMinutes( 3 ), Empty );
}
m_Timer = Timer.DelayCall(TimeSpan.FromMinutes(3), Empty);
}
return true;
}
return true;
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
int version = reader.ReadEncodedInt();
if ( Items.Count > 0 )
m_Timer = Timer.DelayCall( TimeSpan.FromMinutes( 3 ), Empty );
}
if (Items.Count > 0)
m_Timer = Timer.DelayCall(TimeSpan.FromMinutes(3), Empty);
}
public virtual void Flip( Mobile from, Direction direction )
{
switch ( direction )
{
case Direction.East:
ItemID = 0x2A9C;
AddComponent( new LocalizedContainerComponent( 0x2A9D, 1074818 ), 0, -1, 0 );
break;
case Direction.South:
ItemID = 0x2A9B;
AddComponent( new LocalizedContainerComponent( 0x2A9A, 1074818 ), 1, 0, 0 );
break;
}
}
public virtual void Flip(Mobile from, Direction direction)
{
switch (direction)
{
case Direction.East:
ItemID = 0x2A9C;
AddComponent(new LocalizedContainerComponent(0x2A9D, 1074818), 0, -1, 0);
break;
case Direction.South:
ItemID = 0x2A9B;
AddComponent(new LocalizedContainerComponent(0x2A9A, 1074818), 1, 0, 0);
break;
}
}
public virtual void Empty()
{
if ( Items.Count > 0 )
{
Point3D location = Location;
location.Z += 10;
public virtual void Empty()
{
if (Items.Count > 0)
{
Point3D location = Location;
location.Z += 10;
Effects.SendLocationEffect( location, Map, 0x3709, 10, 10, 0x356, 0 );
Effects.PlaySound( location, Map, 0x32E );
Effects.SendLocationEffect(location, Map, 0x3709, 10, 10, 0x356, 0);
Effects.PlaySound(location, Map, 0x32E);
if ( Items.Count > 0 )
{
for ( int i = Items.Count - 1; i >= 0; --i )
{
if ( i >= Items.Count )
continue;
if (Items.Count > 0)
for (int i = Items.Count - 1; i >= 0; --i)
{
if (i >= Items.Count)
continue;
Items[ i ].Delete();
}
}
}
Items[i].Delete();
}
}
m_Timer?.Stop();
m_Timer?.Stop();
m_Timer = null;
}
}
m_Timer = null;
}
}
public class SacrificialAltarDeed : BaseAddonContainerDeed
{
public override BaseAddonContainer Addon => new SacrificialAltarAddon();
public override int LabelNumber => 1074818; // Sacrificial Altar
public class SacrificialAltarDeed : BaseAddonContainerDeed
{
[Constructible]
public SacrificialAltarDeed()
{
LootType = LootType.Blessed;
}
[Constructible]
public SacrificialAltarDeed()
{
LootType = LootType.Blessed;
}
public SacrificialAltarDeed(Serial serial) : base(serial)
{
}
public SacrificialAltarDeed( Serial serial ) : base( serial )
{
}
public override BaseAddonContainer Addon => new SacrificialAltarAddon();
public override int LabelNumber => 1074818; // Sacrificial Altar
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}
int version = reader.ReadEncodedInt();
}
}
}

View file

@ -3,122 +3,122 @@ using Server.Network;
namespace Server.Items
{
[Flippable( 0x2A65, 0x2A67 )]
public class UnsettlingPortraitComponent : AddonComponent
{
public override int LabelNumber => 1074480; // Unsettling portrait
[Flippable(0x2A65, 0x2A67)]
public class UnsettlingPortraitComponent : AddonComponent
{
private Timer m_Timer;
private Timer m_Timer;
public UnsettlingPortraitComponent() : base(0x2A65)
{
m_Timer = Timer.DelayCall(TimeSpan.FromMinutes(3), TimeSpan.FromMinutes(3), ChangeDirection);
}
public UnsettlingPortraitComponent() : base( 0x2A65 )
{
m_Timer = Timer.DelayCall( TimeSpan.FromMinutes( 3 ), TimeSpan.FromMinutes( 3 ), ChangeDirection );
}
public UnsettlingPortraitComponent(Serial serial) : base(serial)
{
}
public UnsettlingPortraitComponent( Serial serial ) : base( serial )
{
}
public override int LabelNumber => 1074480; // Unsettling portrait
public override void OnDoubleClick( Mobile from )
{
if ( Utility.InRange( Location, from.Location, 2 ) )
Effects.PlaySound( Location, Map, Utility.RandomMinMax( 0x567, 0x568 ) );
else
from.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1019045 ); // I can't reach that.
}
public override void OnDoubleClick(Mobile from)
{
if (Utility.InRange(Location, from.Location, 2))
Effects.PlaySound(Location, Map, Utility.RandomMinMax(0x567, 0x568));
else
from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1019045); // I can't reach that.
}
public override void OnAfterDelete()
{
base.OnAfterDelete();
public override void OnAfterDelete()
{
base.OnAfterDelete();
m_Timer?.Stop();
}
m_Timer?.Stop();
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
int version = reader.ReadEncodedInt();
m_Timer = Timer.DelayCall( TimeSpan.FromMinutes( 3 ), TimeSpan.FromMinutes( 3 ), ChangeDirection );
}
m_Timer = Timer.DelayCall(TimeSpan.FromMinutes(3), TimeSpan.FromMinutes(3), ChangeDirection);
}
private void ChangeDirection()
{
if ( ItemID == 0x2A65 )
ItemID += 1;
else if ( ItemID == 0x2A66 )
ItemID -= 1;
else if ( ItemID == 0x2A67 )
ItemID += 1;
else if ( ItemID == 0x2A68 )
ItemID -= 1;
}
}
private void ChangeDirection()
{
if (ItemID == 0x2A65)
ItemID += 1;
else if (ItemID == 0x2A66)
ItemID -= 1;
else if (ItemID == 0x2A67)
ItemID += 1;
else if (ItemID == 0x2A68)
ItemID -= 1;
}
}
public class UnsettlingPortraitAddon : BaseAddon
{
public override BaseAddonDeed Deed => new UnsettlingPortraitDeed();
public class UnsettlingPortraitAddon : BaseAddon
{
[Constructible]
public UnsettlingPortraitAddon()
{
AddComponent(new UnsettlingPortraitComponent(), 0, 0, 0);
}
[Constructible]
public UnsettlingPortraitAddon()
{
AddComponent( new UnsettlingPortraitComponent(), 0, 0, 0 );
}
public UnsettlingPortraitAddon(Serial serial) : base(serial)
{
}
public UnsettlingPortraitAddon( Serial serial ) : base( serial )
{
}
public override BaseAddonDeed Deed => new UnsettlingPortraitDeed();
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
int version = reader.ReadEncodedInt();
}
}
public class UnsettlingPortraitDeed : BaseAddonDeed
{
public override BaseAddon Addon => new UnsettlingPortraitAddon();
public override int LabelNumber => 1074480; // Unsettling portrait
public class UnsettlingPortraitDeed : BaseAddonDeed
{
[Constructible]
public UnsettlingPortraitDeed()
{
LootType = LootType.Blessed;
}
[Constructible]
public UnsettlingPortraitDeed()
{
LootType = LootType.Blessed;
}
public UnsettlingPortraitDeed(Serial serial) : base(serial)
{
}
public UnsettlingPortraitDeed( Serial serial ) : base( serial )
{
}
public override BaseAddon Addon => new UnsettlingPortraitAddon();
public override int LabelNumber => 1074480; // Unsettling portrait
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt( 0 ); // version
}
writer.WriteEncodedInt(0); // version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
}
}
}
int version = reader.ReadEncodedInt();
}
}
}