357 lines
No EOL
7 KiB
C#
357 lines
No EOL
7 KiB
C#
using System;
|
|
using Server;
|
|
|
|
namespace Server.Items
|
|
{
|
|
[Server.Engines.Craft.Forge]
|
|
public class LargeForgeWest : Item
|
|
{
|
|
private InternalItem m_Item;
|
|
private InternalItem2 m_Item2;
|
|
|
|
[Constructable]
|
|
public LargeForgeWest() : base( 0x199A )
|
|
{
|
|
Movable = false;
|
|
|
|
m_Item = new InternalItem( this );
|
|
m_Item2 = new InternalItem2( this );
|
|
}
|
|
|
|
public LargeForgeWest( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override void OnLocationChange( Point3D oldLocation )
|
|
{
|
|
if ( m_Item != null )
|
|
m_Item.Location = new Point3D( X, Y + 1, Z );
|
|
if ( m_Item2 != null )
|
|
m_Item2.Location = new Point3D( X, Y + 2, Z );
|
|
}
|
|
|
|
public override void OnMapChange()
|
|
{
|
|
if ( m_Item != null )
|
|
m_Item.Map = Map;
|
|
if ( m_Item2 != null )
|
|
m_Item2.Map = Map;
|
|
}
|
|
|
|
public override void OnAfterDelete()
|
|
{
|
|
base.OnAfterDelete();
|
|
|
|
if ( m_Item != null )
|
|
m_Item.Delete();
|
|
if ( m_Item2 != null )
|
|
m_Item2.Delete();
|
|
}
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
|
|
writer.Write( m_Item );
|
|
writer.Write( m_Item2 );
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
|
|
m_Item = reader.ReadItem() as InternalItem;
|
|
m_Item2 = reader.ReadItem() as InternalItem2;
|
|
}
|
|
|
|
[Server.Engines.Craft.Forge]
|
|
private class InternalItem : Item
|
|
{
|
|
private LargeForgeWest m_Item;
|
|
|
|
public InternalItem( LargeForgeWest item ) : base( 0x1996 )
|
|
{
|
|
Movable = false;
|
|
|
|
m_Item = item;
|
|
}
|
|
|
|
public InternalItem( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override void OnLocationChange( Point3D oldLocation )
|
|
{
|
|
if ( m_Item != null )
|
|
m_Item.Location = new Point3D( X, Y - 1, Z );
|
|
}
|
|
|
|
public override void OnMapChange()
|
|
{
|
|
if ( m_Item != null )
|
|
m_Item.Map = Map;
|
|
}
|
|
|
|
public override void OnAfterDelete()
|
|
{
|
|
base.OnAfterDelete();
|
|
|
|
if ( m_Item != null )
|
|
m_Item.Delete();
|
|
}
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
|
|
writer.Write( m_Item );
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
|
|
m_Item = reader.ReadItem() as LargeForgeWest;
|
|
}
|
|
}
|
|
|
|
[Server.Engines.Craft.Forge]
|
|
private class InternalItem2 : Item
|
|
{
|
|
private LargeForgeWest m_Item;
|
|
|
|
public InternalItem2( LargeForgeWest item ) : base( 0x1992 )
|
|
{
|
|
Movable = false;
|
|
|
|
m_Item = item;
|
|
}
|
|
|
|
public InternalItem2( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override void OnLocationChange( Point3D oldLocation )
|
|
{
|
|
if ( m_Item != null )
|
|
m_Item.Location = new Point3D( X, Y - 2, Z );
|
|
}
|
|
|
|
public override void OnMapChange()
|
|
{
|
|
if ( m_Item != null )
|
|
m_Item.Map = Map;
|
|
}
|
|
|
|
public override void OnAfterDelete()
|
|
{
|
|
base.OnAfterDelete();
|
|
|
|
if ( m_Item != null )
|
|
m_Item.Delete();
|
|
}
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
|
|
writer.Write( m_Item );
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
|
|
m_Item = reader.ReadItem() as LargeForgeWest;
|
|
}
|
|
}
|
|
}
|
|
|
|
[Server.Engines.Craft.Forge]
|
|
public class LargeForgeEast : Item
|
|
{
|
|
private InternalItem m_Item;
|
|
private InternalItem2 m_Item2;
|
|
|
|
[Constructable]
|
|
public LargeForgeEast() : base( 0x197A )
|
|
{
|
|
Movable = false;
|
|
|
|
m_Item = new InternalItem( this );
|
|
m_Item2 = new InternalItem2( this );
|
|
}
|
|
|
|
public LargeForgeEast( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override void OnLocationChange( Point3D oldLocation )
|
|
{
|
|
if ( m_Item != null )
|
|
m_Item.Location = new Point3D( X + 1, Y, Z );
|
|
if ( m_Item2 != null )
|
|
m_Item2.Location = new Point3D( X + 2, Y, Z );
|
|
}
|
|
|
|
public override void OnMapChange()
|
|
{
|
|
if ( m_Item != null )
|
|
m_Item.Map = Map;
|
|
if ( m_Item2 != null )
|
|
m_Item2.Map = Map;
|
|
}
|
|
|
|
public override void OnAfterDelete()
|
|
{
|
|
base.OnAfterDelete();
|
|
|
|
if ( m_Item != null )
|
|
m_Item.Delete();
|
|
if ( m_Item2 != null )
|
|
m_Item2.Delete();
|
|
}
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
|
|
writer.Write( m_Item );
|
|
writer.Write( m_Item2 );
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
|
|
m_Item = reader.ReadItem() as InternalItem;
|
|
m_Item2 = reader.ReadItem() as InternalItem2;
|
|
}
|
|
|
|
[Server.Engines.Craft.Forge]
|
|
private class InternalItem : Item
|
|
{
|
|
private LargeForgeEast m_Item;
|
|
|
|
public InternalItem( LargeForgeEast item ) : base( 0x197E )
|
|
{
|
|
Movable = false;
|
|
|
|
m_Item = item;
|
|
}
|
|
|
|
public InternalItem( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override void OnLocationChange( Point3D oldLocation )
|
|
{
|
|
if ( m_Item != null )
|
|
m_Item.Location = new Point3D( X - 1, Y, Z );
|
|
}
|
|
|
|
public override void OnMapChange()
|
|
{
|
|
if ( m_Item != null )
|
|
m_Item.Map = Map;
|
|
}
|
|
|
|
public override void OnAfterDelete()
|
|
{
|
|
base.OnAfterDelete();
|
|
|
|
if ( m_Item != null )
|
|
m_Item.Delete();
|
|
}
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
|
|
writer.Write( m_Item );
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
|
|
m_Item = reader.ReadItem() as LargeForgeEast;
|
|
}
|
|
}
|
|
|
|
[Server.Engines.Craft.Forge]
|
|
private class InternalItem2 : Item
|
|
{
|
|
private LargeForgeEast m_Item;
|
|
|
|
public InternalItem2( LargeForgeEast item ) : base( 0x1982 )
|
|
{
|
|
Movable = false;
|
|
|
|
m_Item = item;
|
|
}
|
|
|
|
public InternalItem2( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override void OnLocationChange( Point3D oldLocation )
|
|
{
|
|
if ( m_Item != null )
|
|
m_Item.Location = new Point3D( X - 2, Y, Z );
|
|
}
|
|
|
|
public override void OnMapChange()
|
|
{
|
|
if ( m_Item != null )
|
|
m_Item.Map = Map;
|
|
}
|
|
|
|
public override void OnAfterDelete()
|
|
{
|
|
base.OnAfterDelete();
|
|
|
|
if ( m_Item != null )
|
|
m_Item.Delete();
|
|
}
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
|
|
writer.Write( m_Item );
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
|
|
m_Item = reader.ReadItem() as LargeForgeEast;
|
|
}
|
|
}
|
|
}
|
|
} |