959 lines
No EOL
21 KiB
C#
959 lines
No EOL
21 KiB
C#
using Server;
|
|
using System;
|
|
using System.Collections;
|
|
using Server.Multis;
|
|
using Server.Targeting;
|
|
using Server.Items;
|
|
|
|
namespace Server.Multis.Deeds
|
|
{
|
|
public class HousePlacementTarget : MultiTarget
|
|
{
|
|
private HouseDeed m_Deed;
|
|
|
|
public HousePlacementTarget( HouseDeed deed ) : base( deed.MultiID, deed.Offset )
|
|
{
|
|
m_Deed = deed;
|
|
}
|
|
|
|
protected override void OnTarget( Mobile from, object o )
|
|
{
|
|
IPoint3D ip = o as IPoint3D;
|
|
|
|
if ( ip != null )
|
|
{
|
|
if ( ip is Item )
|
|
ip = ((Item)ip).GetWorldTop();
|
|
|
|
Point3D p = new Point3D( ip );
|
|
|
|
Region reg = Region.Find( new Point3D( p ), from.Map );
|
|
|
|
if ( from.AccessLevel >= AccessLevel.GameMaster || reg.AllowHousing( from, p ) )
|
|
m_Deed.OnPlacement( from, p );
|
|
else if ( reg.IsPartOf( typeof( TreasureRegion ) ) || reg.IsPartOf( typeof( UnderworldEntrance ) ) )
|
|
from.SendLocalizedMessage( 1043287 ); // The house could not be created here. Either something is blocking the house, or the house would not be on valid terrain.
|
|
else
|
|
from.SendLocalizedMessage( 501265 ); // Housing can not be created in this area.
|
|
}
|
|
}
|
|
}
|
|
|
|
public abstract class HouseDeed : Item
|
|
{
|
|
private int m_MultiID;
|
|
private Point3D m_Offset;
|
|
|
|
[CommandProperty( AccessLevel.GameMaster )]
|
|
public int MultiID
|
|
{
|
|
get
|
|
{
|
|
return m_MultiID;
|
|
}
|
|
set
|
|
{
|
|
m_MultiID = value;
|
|
}
|
|
}
|
|
|
|
[CommandProperty( AccessLevel.GameMaster )]
|
|
public Point3D Offset
|
|
{
|
|
get
|
|
{
|
|
return m_Offset;
|
|
}
|
|
set
|
|
{
|
|
m_Offset = value;
|
|
}
|
|
}
|
|
|
|
public HouseDeed( int id, Point3D offset ) : base( 0x14F0 )
|
|
{
|
|
Weight = 1.0;
|
|
|
|
m_MultiID = id;
|
|
m_Offset = offset;
|
|
}
|
|
|
|
public HouseDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 1 ); // version
|
|
|
|
writer.Write( m_Offset );
|
|
|
|
writer.Write( m_MultiID );
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
|
|
switch ( version )
|
|
{
|
|
case 1:
|
|
{
|
|
m_Offset = reader.ReadPoint3D();
|
|
|
|
goto case 0;
|
|
}
|
|
case 0:
|
|
{
|
|
m_MultiID = reader.ReadInt();
|
|
|
|
break;
|
|
}
|
|
}
|
|
|
|
if ( Weight == 0.0 )
|
|
Weight = 1.0;
|
|
}
|
|
|
|
public override void OnDoubleClick( Mobile from )
|
|
{
|
|
if ( !IsChildOf( from.Backpack ) )
|
|
{
|
|
from.SendLocalizedMessage( 1042001 ); // That must be in your pack for you to use it.
|
|
}
|
|
else if ( from.AccessLevel < AccessLevel.GameMaster && BaseHouse.HasAccountHouse( from ) )
|
|
{
|
|
from.SendLocalizedMessage( 501271 ); // You already own a house, you may not place another!
|
|
}
|
|
else
|
|
{
|
|
from.SendLocalizedMessage( 1010433 ); /* House placement cancellation could result in a
|
|
* 60 second delay in the return of your deed.
|
|
*/
|
|
|
|
from.Target = new HousePlacementTarget( this );
|
|
}
|
|
}
|
|
|
|
public abstract BaseHouse GetHouse( Mobile owner );
|
|
public abstract Rectangle2D[] Area{ get; }
|
|
|
|
public void OnPlacement( Mobile from, Point3D p )
|
|
{
|
|
if ( Deleted )
|
|
return;
|
|
|
|
if ( !IsChildOf( from.Backpack ) )
|
|
{
|
|
from.SendLocalizedMessage( 1042001 ); // That must be in your pack for you to use it.
|
|
}
|
|
else if ( from.AccessLevel < AccessLevel.GameMaster && BaseHouse.HasAccountHouse( from ) )
|
|
{
|
|
from.SendLocalizedMessage( 501271 ); // You already own a house, you may not place another!
|
|
}
|
|
else
|
|
{
|
|
ArrayList toMove;
|
|
Point3D center = new Point3D( p.X - m_Offset.X, p.Y - m_Offset.Y, p.Z - m_Offset.Z );
|
|
HousePlacementResult res = HousePlacement.Check( from, m_MultiID, center, out toMove );
|
|
|
|
switch ( res )
|
|
{
|
|
case HousePlacementResult.Valid:
|
|
{
|
|
BaseHouse house = GetHouse( from );
|
|
house.MoveToWorld( center, from.Map );
|
|
Delete();
|
|
|
|
for ( int i = 0; i < toMove.Count; ++i )
|
|
{
|
|
object o = toMove[i];
|
|
|
|
if ( o is Mobile )
|
|
((Mobile)o).Location = house.BanLocation;
|
|
else if ( o is Item )
|
|
((Item)o).Location = house.BanLocation;
|
|
}
|
|
|
|
break;
|
|
}
|
|
case HousePlacementResult.BadItem:
|
|
case HousePlacementResult.BadLand:
|
|
case HousePlacementResult.BadStatic:
|
|
case HousePlacementResult.BadRegionHidden:
|
|
{
|
|
from.SendLocalizedMessage( 1043287 ); // The house could not be created here. Either something is blocking the house, or the house would not be on valid terrain.
|
|
break;
|
|
}
|
|
case HousePlacementResult.NoSurface:
|
|
{
|
|
from.SendMessage( "The house could not be created here. Part of the foundation would not be on any surface." );
|
|
break;
|
|
}
|
|
case HousePlacementResult.BadRegion:
|
|
{
|
|
from.SendLocalizedMessage( 501265 ); // Housing cannot be created in this area.
|
|
break;
|
|
}
|
|
case HousePlacementResult.BadRegionTemp:
|
|
{
|
|
from.SendLocalizedMessage( 501270 ); //Lord British has decreed a 'no build' period, thus you cannot build this house at this time.
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public class BlueTentDeed : HouseDeed
|
|
{
|
|
public override int LabelNumber{ get{ return 1041217; } } // deed to a blue tent
|
|
[Constructable]
|
|
public BlueTentDeed() : base( 0x70, new Point3D( 0, 0, 0 ) )
|
|
{
|
|
}
|
|
|
|
public BlueTentDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new BlueTent( owner );
|
|
}
|
|
|
|
public override Rectangle2D[] Area{ get{ return BlueTent.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class GreenTentDeed : HouseDeed
|
|
{
|
|
public override int LabelNumber{ get{ return 1041218; } } // deed to a green tent
|
|
[Constructable]
|
|
public GreenTentDeed() : base( 0x72, new Point3D( 0, 0, 0 ) )
|
|
{
|
|
}
|
|
|
|
public GreenTentDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new GreenTent( owner );
|
|
}
|
|
|
|
public override Rectangle2D[] Area{ get{ return SmallOldHouse.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class StonePlasterHouseDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public StonePlasterHouseDeed() : base( 0x64, new Point3D( 0, 4, 0 ) )
|
|
{
|
|
}
|
|
|
|
public StonePlasterHouseDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new SmallOldHouse( owner, 0x64 );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041211; } }
|
|
public override Rectangle2D[] Area{ get{ return SmallOldHouse.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class FieldStoneHouseDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public FieldStoneHouseDeed() : base( 0x66, new Point3D( 0, 4, 0 ) )
|
|
{
|
|
}
|
|
|
|
public FieldStoneHouseDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new SmallOldHouse( owner, 0x66 );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041212; } }
|
|
public override Rectangle2D[] Area{ get{ return SmallOldHouse.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class SmallBrickHouseDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public SmallBrickHouseDeed() : base( 0x68, new Point3D( 0, 4, 0 ) )
|
|
{
|
|
}
|
|
|
|
public SmallBrickHouseDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new SmallOldHouse( owner, 0x68 );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041213; } }
|
|
public override Rectangle2D[] Area{ get{ return SmallOldHouse.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class WoodHouseDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public WoodHouseDeed() : base( 0x6A, new Point3D( 0, 4, 0 ) )
|
|
{
|
|
}
|
|
|
|
public WoodHouseDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new SmallOldHouse( owner, 0x6A );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041214; } }
|
|
public override Rectangle2D[] Area{ get{ return SmallOldHouse.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class WoodPlasterHouseDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public WoodPlasterHouseDeed() : base( 0x6C, new Point3D( 0, 4, 0 ) )
|
|
{
|
|
}
|
|
|
|
public WoodPlasterHouseDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new SmallOldHouse( owner, 0x6C );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041215; } }
|
|
public override Rectangle2D[] Area{ get{ return SmallOldHouse.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class ThatchedRoofCottageDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public ThatchedRoofCottageDeed() : base( 0x6E, new Point3D( 0, 4, 0 ) )
|
|
{
|
|
}
|
|
|
|
public ThatchedRoofCottageDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new SmallOldHouse( owner, 0x6E );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041216; } }
|
|
public override Rectangle2D[] Area{ get{ return SmallOldHouse.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class BrickHouseDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public BrickHouseDeed() : base( 0x74, new Point3D( -1, 7, 0 ) )
|
|
{
|
|
}
|
|
|
|
public BrickHouseDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new GuildHouse( owner );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041219; } }
|
|
public override Rectangle2D[] Area{ get{ return GuildHouse.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class TwoStoryWoodPlasterHouseDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public TwoStoryWoodPlasterHouseDeed() : base( 0x76, new Point3D( -3, 7, 0 ) )
|
|
{
|
|
}
|
|
|
|
public TwoStoryWoodPlasterHouseDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new TwoStoryHouse( owner, 0x76 );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041220; } }
|
|
public override Rectangle2D[] Area{ get{ return TwoStoryHouse.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class TwoStoryStonePlasterHouseDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public TwoStoryStonePlasterHouseDeed() : base( 0x78, new Point3D( -3, 7, 0 ) )
|
|
{
|
|
}
|
|
|
|
public TwoStoryStonePlasterHouseDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new TwoStoryHouse( owner, 0x78 );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041221; } }
|
|
public override Rectangle2D[] Area{ get{ return TwoStoryHouse.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class TowerDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public TowerDeed() : base( 0x7A, new Point3D( 0, 7, 0 ) )
|
|
{
|
|
}
|
|
|
|
public TowerDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new Tower( owner );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041222; } }
|
|
public override Rectangle2D[] Area{ get{ return Tower.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class KeepDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public KeepDeed() : base( 0x7C, new Point3D( 0, 11, 0 ) )
|
|
{
|
|
}
|
|
|
|
public KeepDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new Keep( owner );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041223; } }
|
|
public override Rectangle2D[] Area{ get{ return Keep.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class CastleDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public CastleDeed() : base( 0x7E, new Point3D( 0, 16, 0 ) )
|
|
{
|
|
}
|
|
|
|
public CastleDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new Castle( owner );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041224; } }
|
|
public override Rectangle2D[] Area{ get{ return Castle.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class LargePatioDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public LargePatioDeed() : base( 0x8C, new Point3D( -4, 7, 0 ) )
|
|
{
|
|
}
|
|
|
|
public LargePatioDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new LargePatioHouse( owner );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041231; } }
|
|
public override Rectangle2D[] Area{ get{ return LargePatioHouse.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class LargeMarbleDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public LargeMarbleDeed() : base( 0x96, new Point3D( -4, 7, 0 ) )
|
|
{
|
|
}
|
|
|
|
public LargeMarbleDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new LargeMarbleHouse( owner );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041236; } }
|
|
public override Rectangle2D[] Area{ get{ return LargeMarbleHouse.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class SmallTowerDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public SmallTowerDeed() : base( 0x98, new Point3D( 3, 4, 0 ) )
|
|
{
|
|
}
|
|
|
|
public SmallTowerDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new SmallTower( owner );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041237; } }
|
|
public override Rectangle2D[] Area{ get{ return SmallTower.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class LogCabinDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public LogCabinDeed() : base( 0x9A, new Point3D( 1, 6, 0 ) )
|
|
{
|
|
}
|
|
|
|
public LogCabinDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new LogCabin( owner );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041238; } }
|
|
public override Rectangle2D[] Area{ get{ return LogCabin.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class SandstonePatioDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public SandstonePatioDeed() : base( 0x9C, new Point3D( -1, 4, 0 ) )
|
|
{
|
|
}
|
|
|
|
public SandstonePatioDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new SandStonePatio( owner );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041239; } }
|
|
public override Rectangle2D[] Area{ get{ return SandStonePatio.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class VillaDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public VillaDeed() : base( 0x9E, new Point3D( 3, 6, 0 ) )
|
|
{
|
|
}
|
|
|
|
public VillaDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new TwoStoryVilla( owner );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041240; } }
|
|
public override Rectangle2D[] Area{ get{ return TwoStoryVilla.AreaArray; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class StoneWorkshopDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public StoneWorkshopDeed() : base( 0xA0, new Point3D( -1, 4, 0 ) )
|
|
{
|
|
}
|
|
|
|
public StoneWorkshopDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new SmallShop( owner, 0xA0 );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041241; } }
|
|
public override Rectangle2D[] Area{ get{ return SmallShop.AreaArray2; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
|
|
public class MarbleWorkshopDeed : HouseDeed
|
|
{
|
|
[Constructable]
|
|
public MarbleWorkshopDeed() : base( 0xA2, new Point3D( -1, 4, 0 ) )
|
|
{
|
|
}
|
|
|
|
public MarbleWorkshopDeed( Serial serial ) : base( serial )
|
|
{
|
|
}
|
|
|
|
public override BaseHouse GetHouse( Mobile owner )
|
|
{
|
|
return new SmallShop( owner, 0xA2 );
|
|
}
|
|
|
|
public override int LabelNumber{ get{ return 1041242; } }
|
|
public override Rectangle2D[] Area{ get{ return SmallShop.AreaArray1; } }
|
|
|
|
public override void Serialize( GenericWriter writer )
|
|
{
|
|
base.Serialize( writer );
|
|
|
|
writer.Write( (int) 0 ); // version
|
|
}
|
|
|
|
public override void Deserialize( GenericReader reader )
|
|
{
|
|
base.Deserialize( reader );
|
|
|
|
int version = reader.ReadInt();
|
|
}
|
|
}
|
|
} |