Changes properties to use automatic property initializers
This commit is contained in:
parent
f0a48ad431
commit
06fa31a7bf
623 changed files with 13072 additions and 19304 deletions
|
|
@ -105,22 +105,11 @@ namespace Server.Items
|
|||
|
||||
public class AddonComponent : Item, IChopable
|
||||
{
|
||||
private Point3D m_Offset;
|
||||
private BaseAddon m_Addon;
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public BaseAddon Addon { get; set; }
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public BaseAddon Addon
|
||||
{
|
||||
get => m_Addon;
|
||||
set => m_Addon = value;
|
||||
}
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public Point3D Offset
|
||||
{
|
||||
get => m_Offset;
|
||||
set => m_Offset = value;
|
||||
}
|
||||
public Point3D Offset { get; set; }
|
||||
|
||||
[Hue, CommandProperty( AccessLevel.GameMaster )]
|
||||
public override int Hue
|
||||
|
|
@ -130,8 +119,8 @@ namespace Server.Items
|
|||
{
|
||||
base.Hue = value;
|
||||
|
||||
if ( m_Addon != null && m_Addon.ShareHue )
|
||||
m_Addon.Hue = value;
|
||||
if ( Addon != null && Addon.ShareHue )
|
||||
Addon.Hue = value;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -151,34 +140,34 @@ namespace Server.Items
|
|||
|
||||
public override void OnDoubleClick( Mobile from )
|
||||
{
|
||||
m_Addon?.OnComponentUsed( this, from );
|
||||
Addon?.OnComponentUsed( this, from );
|
||||
}
|
||||
|
||||
public void OnChop( Mobile from )
|
||||
{
|
||||
if ( m_Addon != null && from.InRange( GetWorldLocation(), 3 ) )
|
||||
m_Addon.OnChop( from );
|
||||
if ( Addon != null && from.InRange( GetWorldLocation(), 3 ) )
|
||||
Addon.OnChop( from );
|
||||
else
|
||||
from.SendLocalizedMessage( 500446 ); // That is too far away.
|
||||
}
|
||||
|
||||
public override void OnLocationChange( Point3D old )
|
||||
{
|
||||
if ( m_Addon != null )
|
||||
m_Addon.Location = new Point3D( X - m_Offset.X, Y - m_Offset.Y, Z - m_Offset.Z );
|
||||
if ( Addon != null )
|
||||
Addon.Location = new Point3D( X - Offset.X, Y - Offset.Y, Z - Offset.Z );
|
||||
}
|
||||
|
||||
public override void OnMapChange()
|
||||
{
|
||||
if ( m_Addon != null )
|
||||
m_Addon.Map = Map;
|
||||
if ( Addon != null )
|
||||
Addon.Map = Map;
|
||||
}
|
||||
|
||||
public override void OnAfterDelete()
|
||||
{
|
||||
base.OnAfterDelete();
|
||||
|
||||
m_Addon?.Delete();
|
||||
Addon?.Delete();
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
|
|
@ -187,8 +176,8 @@ namespace Server.Items
|
|||
|
||||
writer.Write( (int) 1 ); // version
|
||||
|
||||
writer.Write( m_Addon );
|
||||
writer.Write( m_Offset );
|
||||
writer.Write( Addon );
|
||||
writer.Write( Offset );
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
|
|
@ -202,10 +191,10 @@ namespace Server.Items
|
|||
case 1:
|
||||
case 0:
|
||||
{
|
||||
m_Addon = reader.ReadItem() as BaseAddon;
|
||||
m_Offset = reader.ReadPoint3D();
|
||||
Addon = reader.ReadItem() as BaseAddon;
|
||||
Offset = reader.ReadPoint3D();
|
||||
|
||||
m_Addon?.OnComponentLoaded( this );
|
||||
Addon?.OnComponentLoaded( this );
|
||||
|
||||
ApplyLightTo( this );
|
||||
|
||||
|
|
|
|||
|
|
@ -8,22 +8,11 @@ namespace Server.Items
|
|||
public virtual bool NeedsWall => false;
|
||||
public virtual Point3D WallPosition => Point3D.Zero;
|
||||
|
||||
private Point3D m_Offset;
|
||||
private BaseAddonContainer m_Addon;
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public BaseAddonContainer Addon { get; set; }
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public BaseAddonContainer Addon
|
||||
{
|
||||
get => m_Addon;
|
||||
set => m_Addon = value;
|
||||
}
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public Point3D Offset
|
||||
{
|
||||
get => m_Offset;
|
||||
set => m_Offset = value;
|
||||
}
|
||||
public Point3D Offset { get; set; }
|
||||
|
||||
[Hue, CommandProperty( AccessLevel.GameMaster )]
|
||||
public override int Hue
|
||||
|
|
@ -33,8 +22,8 @@ namespace Server.Items
|
|||
{
|
||||
base.Hue = value;
|
||||
|
||||
if ( m_Addon != null && m_Addon.ShareHue )
|
||||
m_Addon.Hue = value;
|
||||
if ( Addon != null && Addon.ShareHue )
|
||||
Addon.Hue = value;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -60,31 +49,31 @@ namespace Server.Items
|
|||
|
||||
public override void OnDoubleClick( Mobile from )
|
||||
{
|
||||
m_Addon?.OnComponentUsed( this, from );
|
||||
Addon?.OnComponentUsed( this, from );
|
||||
}
|
||||
|
||||
public override void OnLocationChange( Point3D old )
|
||||
{
|
||||
if ( m_Addon != null )
|
||||
m_Addon.Location = new Point3D( X - m_Offset.X, Y - m_Offset.Y, Z - m_Offset.Z );
|
||||
if ( Addon != null )
|
||||
Addon.Location = new Point3D( X - Offset.X, Y - Offset.Y, Z - Offset.Z );
|
||||
}
|
||||
|
||||
public override void GetContextMenuEntries( Mobile from, List<ContextMenuEntry> list )
|
||||
{
|
||||
m_Addon?.GetContextMenuEntries( from, list );
|
||||
Addon?.GetContextMenuEntries( from, list );
|
||||
}
|
||||
|
||||
public override void OnMapChange()
|
||||
{
|
||||
if ( m_Addon != null )
|
||||
m_Addon.Map = Map;
|
||||
if ( Addon != null )
|
||||
Addon.Map = Map;
|
||||
}
|
||||
|
||||
public override void OnAfterDelete()
|
||||
{
|
||||
base.OnAfterDelete();
|
||||
|
||||
m_Addon?.Delete();
|
||||
Addon?.Delete();
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
|
|
@ -93,8 +82,8 @@ namespace Server.Items
|
|||
|
||||
writer.Write( (int) 0 ); // version
|
||||
|
||||
writer.Write( m_Addon );
|
||||
writer.Write( m_Offset );
|
||||
writer.Write( Addon );
|
||||
writer.Write( Offset );
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
|
|
@ -103,18 +92,18 @@ namespace Server.Items
|
|||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
m_Addon = reader.ReadItem() as BaseAddonContainer;
|
||||
m_Offset = reader.ReadPoint3D();
|
||||
Addon = reader.ReadItem() as BaseAddonContainer;
|
||||
Offset = reader.ReadPoint3D();
|
||||
|
||||
m_Addon?.OnComponentLoaded( this );
|
||||
Addon?.OnComponentLoaded( this );
|
||||
|
||||
AddonComponent.ApplyLightTo( this );
|
||||
}
|
||||
|
||||
public virtual void OnChop( Mobile from )
|
||||
{
|
||||
if ( m_Addon != null && from.InRange( GetWorldLocation(), 3 ) )
|
||||
m_Addon.OnChop( from );
|
||||
if ( Addon != null && from.InRange( GetWorldLocation(), 3 ) )
|
||||
Addon.OnChop( from );
|
||||
else
|
||||
from.SendLocalizedMessage( 500446 ); // That is too far away.
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,33 +7,14 @@ namespace Server.Items
|
|||
[FlippableAttribute( 0x100A/*East*/, 0x100B/*South*/ )]
|
||||
public class ArcheryButte : AddonComponent
|
||||
{
|
||||
private double m_MinSkill;
|
||||
private double m_MaxSkill;
|
||||
|
||||
private int m_Arrows, m_Bolts;
|
||||
|
||||
private DateTime m_LastUse;
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public double MinSkill { get; set; }
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public double MinSkill
|
||||
{
|
||||
get => m_MinSkill;
|
||||
set => m_MinSkill = value;
|
||||
}
|
||||
public double MaxSkill { get; set; }
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public double MaxSkill
|
||||
{
|
||||
get => m_MaxSkill;
|
||||
set => m_MaxSkill = value;
|
||||
}
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public DateTime LastUse
|
||||
{
|
||||
get => m_LastUse;
|
||||
set => m_LastUse = value;
|
||||
}
|
||||
public DateTime LastUse { get; set; }
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public bool FacingEast
|
||||
|
|
@ -43,18 +24,10 @@ namespace Server.Items
|
|||
}
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public int Arrows
|
||||
{
|
||||
get => m_Arrows;
|
||||
set => m_Arrows = value;
|
||||
}
|
||||
public int Arrows { get; set; }
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public int Bolts
|
||||
{
|
||||
get => m_Bolts;
|
||||
set => m_Bolts = value;
|
||||
}
|
||||
public int Bolts { get; set; }
|
||||
|
||||
[Constructible]
|
||||
public ArcheryButte() : this( 0x100A )
|
||||
|
|
@ -63,8 +36,8 @@ namespace Server.Items
|
|||
|
||||
public ArcheryButte( int itemID ) : base( itemID )
|
||||
{
|
||||
m_MinSkill = -25.0;
|
||||
m_MaxSkill = +25.0;
|
||||
MinSkill = -25.0;
|
||||
MaxSkill = +25.0;
|
||||
}
|
||||
|
||||
public ArcheryButte( Serial serial ) : base( serial )
|
||||
|
|
@ -73,7 +46,7 @@ namespace Server.Items
|
|||
|
||||
public override void OnDoubleClick( Mobile from )
|
||||
{
|
||||
if ( (m_Arrows > 0 || m_Bolts > 0) && from.InRange( GetWorldLocation(), 1 ) )
|
||||
if ( (Arrows > 0 || Bolts > 0) && from.InRange( GetWorldLocation(), 1 ) )
|
||||
Gather( from );
|
||||
else
|
||||
Fire( from );
|
||||
|
|
@ -83,14 +56,14 @@ namespace Server.Items
|
|||
{
|
||||
from.LocalOverheadMessage( MessageType.Regular, 0x3B2, 500592 ); // You gather the arrows and bolts.
|
||||
|
||||
if ( m_Arrows > 0 )
|
||||
from.AddToBackpack( new Arrow( m_Arrows ) );
|
||||
if ( Arrows > 0 )
|
||||
from.AddToBackpack( new Arrow( Arrows ) );
|
||||
|
||||
if ( m_Bolts > 0 )
|
||||
from.AddToBackpack( new Bolt( m_Bolts ) );
|
||||
if ( Bolts > 0 )
|
||||
from.AddToBackpack( new Bolt( Bolts ) );
|
||||
|
||||
m_Arrows = 0;
|
||||
m_Bolts = 0;
|
||||
Arrows = 0;
|
||||
Bolts = 0;
|
||||
|
||||
m_Entries = null;
|
||||
}
|
||||
|
|
@ -99,20 +72,14 @@ namespace Server.Items
|
|||
|
||||
private class ScoreEntry
|
||||
{
|
||||
private int m_Total;
|
||||
private int m_Count;
|
||||
public int Total { get; set; }
|
||||
|
||||
public int Total{ get => m_Total;
|
||||
set => m_Total = value;
|
||||
}
|
||||
public int Count{ get => m_Count;
|
||||
set => m_Count = value;
|
||||
}
|
||||
public int Count { get; set; }
|
||||
|
||||
public void Record( int score )
|
||||
{
|
||||
m_Total += score;
|
||||
m_Count += 1;
|
||||
Total += score;
|
||||
Count += 1;
|
||||
}
|
||||
|
||||
public ScoreEntry()
|
||||
|
|
@ -143,7 +110,7 @@ namespace Server.Items
|
|||
return;
|
||||
}
|
||||
|
||||
if ( DateTime.UtcNow < (m_LastUse + UseDelay) )
|
||||
if ( DateTime.UtcNow < (LastUse + UseDelay) )
|
||||
return;
|
||||
|
||||
Point3D worldLoc = GetWorldLocation();
|
||||
|
|
@ -191,7 +158,7 @@ namespace Server.Items
|
|||
return;
|
||||
}
|
||||
|
||||
m_LastUse = DateTime.UtcNow;
|
||||
LastUse = DateTime.UtcNow;
|
||||
|
||||
from.Direction = from.GetDirectionTo( GetWorldLocation() );
|
||||
bow.PlaySwingAnimation( from );
|
||||
|
|
@ -199,7 +166,7 @@ namespace Server.Items
|
|||
|
||||
ScoreEntry se = GetEntryFor( from );
|
||||
|
||||
if ( !from.CheckSkill( bow.Skill, m_MinSkill, m_MaxSkill ) )
|
||||
if ( !from.CheckSkill( bow.Skill, MinSkill, MaxSkill ) )
|
||||
{
|
||||
from.PlaySound( bow.MissSound );
|
||||
|
||||
|
|
@ -246,7 +213,7 @@ namespace Server.Items
|
|||
splitScore = 5;
|
||||
}
|
||||
|
||||
bool split = ( isKnown && ((m_Arrows + m_Bolts) * 0.02) > Utility.RandomDouble() );
|
||||
bool split = ( isKnown && ((Arrows + Bolts) * 0.02) > Utility.RandomDouble() );
|
||||
|
||||
if ( split )
|
||||
{
|
||||
|
|
@ -258,9 +225,9 @@ namespace Server.Items
|
|||
PublicOverheadMessage( MessageType.Regular, 0x3B2, 1010035 + area, from.Name );
|
||||
|
||||
if ( isArrow )
|
||||
++m_Arrows;
|
||||
++Arrows;
|
||||
else if ( isBolt )
|
||||
++m_Bolts;
|
||||
++Bolts;
|
||||
}
|
||||
|
||||
se.Record( split ? splitScore : score );
|
||||
|
|
@ -277,10 +244,10 @@ namespace Server.Items
|
|||
|
||||
writer.Write( (int) 0 );
|
||||
|
||||
writer.Write( m_MinSkill );
|
||||
writer.Write( m_MaxSkill );
|
||||
writer.Write( m_Arrows );
|
||||
writer.Write( m_Bolts );
|
||||
writer.Write( MinSkill );
|
||||
writer.Write( MaxSkill );
|
||||
writer.Write( Arrows );
|
||||
writer.Write( Bolts );
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
|
|
@ -293,15 +260,15 @@ namespace Server.Items
|
|||
{
|
||||
case 0:
|
||||
{
|
||||
m_MinSkill = reader.ReadDouble();
|
||||
m_MaxSkill = reader.ReadDouble();
|
||||
m_Arrows = reader.ReadInt();
|
||||
m_Bolts = reader.ReadInt();
|
||||
MinSkill = reader.ReadDouble();
|
||||
MaxSkill = reader.ReadDouble();
|
||||
Arrows = reader.ReadInt();
|
||||
Bolts = reader.ReadInt();
|
||||
|
||||
if ( m_MinSkill == 0.0 && m_MaxSkill == 30.0 )
|
||||
if ( MinSkill == 0.0 && MaxSkill == 30.0 )
|
||||
{
|
||||
m_MinSkill = -25.0;
|
||||
m_MaxSkill = +25.0;
|
||||
MinSkill = -25.0;
|
||||
MaxSkill = +25.0;
|
||||
}
|
||||
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -13,22 +13,18 @@ namespace Server.Items
|
|||
|
||||
public override int LabelNumber => 1041006; // a ballot box
|
||||
|
||||
private string[] m_Topic;
|
||||
private List<Mobile> m_Yes;
|
||||
private List<Mobile> m_No;
|
||||
public string[] Topic { get; private set; }
|
||||
|
||||
public string[] Topic => m_Topic;
|
||||
public List<Mobile> Yes { get; private set; }
|
||||
|
||||
public List<Mobile> Yes => m_Yes;
|
||||
|
||||
public List<Mobile> No => m_No;
|
||||
public List<Mobile> No { get; private set; }
|
||||
|
||||
[Constructible]
|
||||
public BallotBox() : base( 0x9A8 )
|
||||
{
|
||||
m_Topic = new string[0];
|
||||
m_Yes = new List<Mobile>();
|
||||
m_No = new List<Mobile>();
|
||||
Topic = new string[0];
|
||||
Yes = new List<Mobile>();
|
||||
No = new List<Mobile>();
|
||||
}
|
||||
|
||||
public BallotBox( Serial serial ) : base( serial )
|
||||
|
|
@ -37,21 +33,21 @@ namespace Server.Items
|
|||
|
||||
public void ClearTopic()
|
||||
{
|
||||
m_Topic = new string[0];
|
||||
Topic = new string[0];
|
||||
|
||||
ClearVotes();
|
||||
}
|
||||
|
||||
public void AddLineToTopic( string line )
|
||||
{
|
||||
if ( m_Topic.Length >= MaxTopicLines )
|
||||
if ( Topic.Length >= MaxTopicLines )
|
||||
return;
|
||||
|
||||
string[] newTopic = new string[m_Topic.Length + 1];
|
||||
m_Topic.CopyTo( newTopic, 0 );
|
||||
newTopic[m_Topic.Length] = line;
|
||||
string[] newTopic = new string[Topic.Length + 1];
|
||||
Topic.CopyTo( newTopic, 0 );
|
||||
newTopic[Topic.Length] = line;
|
||||
|
||||
m_Topic = newTopic;
|
||||
Topic = newTopic;
|
||||
|
||||
ClearVotes();
|
||||
}
|
||||
|
|
@ -296,13 +292,13 @@ namespace Server.Items
|
|||
|
||||
writer.WriteEncodedInt( 0 ); // version
|
||||
|
||||
writer.WriteEncodedInt( m_Topic.Length );
|
||||
writer.WriteEncodedInt( Topic.Length );
|
||||
|
||||
for ( int i = 0; i < m_Topic.Length; i++ )
|
||||
writer.Write( (string) m_Topic[i] );
|
||||
for ( int i = 0; i < Topic.Length; i++ )
|
||||
writer.Write( (string) Topic[i] );
|
||||
|
||||
writer.Write( m_Yes, true );
|
||||
writer.Write( m_No, true );
|
||||
writer.Write( Yes, true );
|
||||
writer.Write( No, true );
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
|
|
@ -311,13 +307,13 @@ namespace Server.Items
|
|||
|
||||
int version = reader.ReadEncodedInt();
|
||||
|
||||
m_Topic = new string[reader.ReadEncodedInt()];
|
||||
Topic = new string[reader.ReadEncodedInt()];
|
||||
|
||||
for ( int i = 0; i < m_Topic.Length; i++ )
|
||||
m_Topic[i] = reader.ReadString();
|
||||
for ( int i = 0; i < Topic.Length; i++ )
|
||||
Topic[i] = reader.ReadString();
|
||||
|
||||
m_Yes = reader.ReadStrongMobileList();
|
||||
m_No = reader.ReadStrongMobileList();
|
||||
Yes = reader.ReadStrongMobileList();
|
||||
No = reader.ReadStrongMobileList();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -42,14 +42,13 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
#endregion
|
||||
private List<AddonComponent> m_Components;
|
||||
|
||||
public void AddComponent( AddonComponent c, int x, int y, int z )
|
||||
{
|
||||
if ( Deleted )
|
||||
return;
|
||||
|
||||
m_Components.Add( c );
|
||||
Components.Add( c );
|
||||
|
||||
c.Addon = this;
|
||||
c.Offset = new Point3D( x, y, z );
|
||||
|
|
@ -61,7 +60,7 @@ namespace Server.Items
|
|||
Movable = false;
|
||||
Visible = false;
|
||||
|
||||
m_Components = new List<AddonComponent>();
|
||||
Components = new List<AddonComponent>();
|
||||
}
|
||||
|
||||
public virtual bool RetainDeedHue => false;
|
||||
|
|
@ -79,9 +78,9 @@ namespace Server.Items
|
|||
|
||||
if ( RetainDeedHue )
|
||||
{
|
||||
for ( int i = 0; hue == 0 && i < m_Components.Count; ++i )
|
||||
for ( int i = 0; hue == 0 && i < Components.Count; ++i )
|
||||
{
|
||||
AddonComponent c = m_Components[i];
|
||||
AddonComponent c = Components[i];
|
||||
|
||||
if ( c.Hue != 0 )
|
||||
hue = c.Hue;
|
||||
|
|
@ -108,7 +107,7 @@ namespace Server.Items
|
|||
|
||||
Item IAddon.Deed => Deed;
|
||||
|
||||
public List<AddonComponent> Components => m_Components;
|
||||
public List<AddonComponent> Components { get; private set; }
|
||||
|
||||
public BaseAddon( Serial serial ) : base( serial )
|
||||
{
|
||||
|
|
@ -125,7 +124,7 @@ namespace Server.Items
|
|||
if ( Deleted )
|
||||
return AddonFitResult.Blocked;
|
||||
|
||||
foreach ( AddonComponent c in m_Components )
|
||||
foreach ( AddonComponent c in Components )
|
||||
{
|
||||
Point3D p3D = new Point3D( p.X + c.Offset.X, p.Y + c.Offset.Y, p.Z + c.Offset.Z );
|
||||
|
||||
|
|
@ -152,7 +151,7 @@ namespace Server.Items
|
|||
Point3D doorLoc = door.GetWorldLocation();
|
||||
int doorHeight = door.ItemData.CalcHeight;
|
||||
|
||||
foreach ( AddonComponent c in m_Components )
|
||||
foreach ( AddonComponent c in Components )
|
||||
{
|
||||
Point3D addonLoc = new Point3D( p.X + c.Offset.X, p.Y + c.Offset.Y, p.Z + c.Offset.Z );
|
||||
int addonHeight = c.ItemData.CalcHeight;
|
||||
|
|
@ -207,7 +206,7 @@ namespace Server.Items
|
|||
if ( Deleted )
|
||||
return;
|
||||
|
||||
foreach ( AddonComponent c in m_Components )
|
||||
foreach ( AddonComponent c in Components )
|
||||
c.Location = new Point3D( X + c.Offset.X, Y + c.Offset.Y, Z + c.Offset.Z );
|
||||
}
|
||||
|
||||
|
|
@ -216,7 +215,7 @@ namespace Server.Items
|
|||
if ( Deleted )
|
||||
return;
|
||||
|
||||
foreach ( AddonComponent c in m_Components )
|
||||
foreach ( AddonComponent c in Components )
|
||||
c.Map = Map;
|
||||
}
|
||||
|
||||
|
|
@ -224,7 +223,7 @@ namespace Server.Items
|
|||
{
|
||||
base.OnAfterDelete();
|
||||
|
||||
foreach ( AddonComponent c in m_Components )
|
||||
foreach ( AddonComponent c in Components )
|
||||
c.Delete();
|
||||
}
|
||||
|
||||
|
|
@ -240,9 +239,9 @@ namespace Server.Items
|
|||
{
|
||||
base.Hue = value;
|
||||
|
||||
if ( !Deleted && ShareHue && m_Components != null )
|
||||
if ( !Deleted && ShareHue && Components != null )
|
||||
{
|
||||
foreach ( AddonComponent c in m_Components )
|
||||
foreach ( AddonComponent c in Components )
|
||||
c.Hue = value;
|
||||
}
|
||||
}
|
||||
|
|
@ -255,7 +254,7 @@ namespace Server.Items
|
|||
|
||||
writer.Write( (int) 1 ); // version
|
||||
|
||||
writer.WriteItemList<AddonComponent>( m_Components );
|
||||
writer.WriteItemList<AddonComponent>( Components );
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
|
|
@ -269,7 +268,7 @@ namespace Server.Items
|
|||
case 1:
|
||||
case 0:
|
||||
{
|
||||
m_Components = reader.ReadStrongItemList<AddonComponent>();
|
||||
Components = reader.ReadStrongItemList<AddonComponent>();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,11 +18,11 @@ namespace Server.Items
|
|||
{
|
||||
base.Hue = value;
|
||||
|
||||
if ( !Deleted && ShareHue && m_Components != null )
|
||||
if ( !Deleted && ShareHue && Components != null )
|
||||
{
|
||||
Hue = value;
|
||||
|
||||
foreach ( AddonContainerComponent c in m_Components )
|
||||
foreach ( AddonContainerComponent c in Components )
|
||||
c.Hue = value;
|
||||
}
|
||||
}
|
||||
|
|
@ -55,15 +55,13 @@ namespace Server.Items
|
|||
public virtual Point3D WallPosition => Point3D.Zero;
|
||||
public virtual BaseAddonContainerDeed Deed => null;
|
||||
|
||||
private List<AddonContainerComponent> m_Components;
|
||||
|
||||
public List<AddonContainerComponent> Components => m_Components;
|
||||
public List<AddonContainerComponent> Components { get; private set; }
|
||||
|
||||
public BaseAddonContainer( int itemID ) : base( itemID )
|
||||
{
|
||||
AddonComponent.ApplyLightTo( this );
|
||||
|
||||
m_Components = new List<AddonContainerComponent>();
|
||||
Components = new List<AddonContainerComponent>();
|
||||
}
|
||||
|
||||
public BaseAddonContainer( Serial serial ) : base( serial )
|
||||
|
|
@ -77,7 +75,7 @@ namespace Server.Items
|
|||
if ( Deleted )
|
||||
return;
|
||||
|
||||
foreach ( AddonContainerComponent c in m_Components )
|
||||
foreach ( AddonContainerComponent c in Components )
|
||||
c.Location = new Point3D( X + c.Offset.X, Y + c.Offset.Y, Z + c.Offset.Z );
|
||||
}
|
||||
|
||||
|
|
@ -88,7 +86,7 @@ namespace Server.Items
|
|||
if ( Deleted )
|
||||
return;
|
||||
|
||||
foreach ( AddonContainerComponent c in m_Components )
|
||||
foreach ( AddonContainerComponent c in Components )
|
||||
c.Map = Map;
|
||||
}
|
||||
|
||||
|
|
@ -113,7 +111,7 @@ namespace Server.Items
|
|||
{
|
||||
base.OnAfterDelete();
|
||||
|
||||
foreach ( AddonContainerComponent c in m_Components )
|
||||
foreach ( AddonContainerComponent c in Components )
|
||||
c.Delete();
|
||||
}
|
||||
|
||||
|
|
@ -123,7 +121,7 @@ namespace Server.Items
|
|||
|
||||
writer.Write( (int) 0 ); // version
|
||||
|
||||
writer.WriteItemList<AddonContainerComponent>( m_Components );
|
||||
writer.WriteItemList<AddonContainerComponent>( Components );
|
||||
writer.Write( (int) m_Resource );
|
||||
}
|
||||
|
||||
|
|
@ -133,7 +131,7 @@ namespace Server.Items
|
|||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
m_Components = reader.ReadStrongItemList<AddonContainerComponent>();
|
||||
Components = reader.ReadStrongItemList<AddonContainerComponent>();
|
||||
m_Resource = (CraftResource) reader.ReadInt();
|
||||
|
||||
AddonComponent.ApplyLightTo( this );
|
||||
|
|
@ -150,7 +148,7 @@ namespace Server.Items
|
|||
if ( Deleted )
|
||||
return;
|
||||
|
||||
m_Components.Add( c );
|
||||
Components.Add( c );
|
||||
|
||||
c.Addon = this;
|
||||
c.Offset = new Point3D( x, y, z );
|
||||
|
|
@ -162,7 +160,7 @@ namespace Server.Items
|
|||
if ( Deleted )
|
||||
return AddonFitResult.Blocked;
|
||||
|
||||
foreach ( AddonContainerComponent c in m_Components )
|
||||
foreach ( AddonContainerComponent c in Components )
|
||||
{
|
||||
Point3D p3D = new Point3D( p.X + c.Offset.X, p.Y + c.Offset.Y, p.Z + c.Offset.Z );
|
||||
|
||||
|
|
@ -209,7 +207,7 @@ namespace Server.Items
|
|||
Point3D doorLoc = door.GetWorldLocation();
|
||||
int doorHeight = door.ItemData.CalcHeight;
|
||||
|
||||
foreach ( AddonContainerComponent c in m_Components )
|
||||
foreach ( AddonContainerComponent c in Components )
|
||||
{
|
||||
Point3D addonLoc = new Point3D( p.X + c.Offset.X, p.Y + c.Offset.Y, p.Z + c.Offset.Z );
|
||||
int addonHeight = c.ItemData.CalcHeight;
|
||||
|
|
@ -251,9 +249,9 @@ namespace Server.Items
|
|||
|
||||
if ( RetainDeedHue )
|
||||
{
|
||||
for ( int i = 0; hue == 0 && i < m_Components.Count; ++i )
|
||||
for ( int i = 0; hue == 0 && i < Components.Count; ++i )
|
||||
{
|
||||
AddonContainerComponent c = m_Components[ i ];
|
||||
AddonContainerComponent c = Components[ i ];
|
||||
|
||||
if ( c.Hue != 0 )
|
||||
hue = c.Hue;
|
||||
|
|
|
|||
|
|
@ -9,11 +9,7 @@ namespace Server.Items
|
|||
{
|
||||
public override BaseAddonDeed Deed => new LoomEastDeed();
|
||||
|
||||
private int m_Phase;
|
||||
|
||||
public int Phase{ get => m_Phase;
|
||||
set => m_Phase = value;
|
||||
}
|
||||
public int Phase { get; set; }
|
||||
|
||||
[Constructible]
|
||||
public LoomEastAddon()
|
||||
|
|
@ -32,7 +28,7 @@ namespace Server.Items
|
|||
|
||||
writer.Write( (int) 1 ); // version
|
||||
|
||||
writer.Write( (int) m_Phase );
|
||||
writer.Write( (int) Phase );
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
|
|
@ -45,7 +41,7 @@ namespace Server.Items
|
|||
{
|
||||
case 1:
|
||||
{
|
||||
m_Phase = reader.ReadInt();
|
||||
Phase = reader.ReadInt();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,11 +4,7 @@ namespace Server.Items
|
|||
{
|
||||
public override BaseAddonDeed Deed => new LoomSouthDeed();
|
||||
|
||||
private int m_Phase;
|
||||
|
||||
public int Phase{ get => m_Phase;
|
||||
set => m_Phase = value;
|
||||
}
|
||||
public int Phase { get; set; }
|
||||
|
||||
[Constructible]
|
||||
public LoomSouthAddon()
|
||||
|
|
@ -27,7 +23,7 @@ namespace Server.Items
|
|||
|
||||
writer.Write( (int) 1 ); // version
|
||||
|
||||
writer.Write( (int) m_Phase );
|
||||
writer.Write( (int) Phase );
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
|
|
@ -40,7 +36,7 @@ namespace Server.Items
|
|||
{
|
||||
case 1:
|
||||
{
|
||||
m_Phase = reader.ReadInt();
|
||||
Phase = reader.ReadInt();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,32 +5,21 @@ namespace Server.Items
|
|||
[Flippable( 0x1EC0, 0x1EC3 )]
|
||||
public class PickpocketDip : AddonComponent
|
||||
{
|
||||
private double m_MinSkill;
|
||||
private double m_MaxSkill;
|
||||
|
||||
private Timer m_Timer;
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public double MinSkill
|
||||
{
|
||||
get => m_MinSkill;
|
||||
set => m_MinSkill = value;
|
||||
}
|
||||
public double MinSkill { get; set; }
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public double MaxSkill
|
||||
{
|
||||
get => m_MaxSkill;
|
||||
set => m_MaxSkill = value;
|
||||
}
|
||||
public double MaxSkill { get; set; }
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public bool Swinging => ( m_Timer != null );
|
||||
|
||||
public PickpocketDip( int itemID ) : base( itemID )
|
||||
{
|
||||
m_MinSkill = -25.0;
|
||||
m_MaxSkill = +25.0;
|
||||
MinSkill = -25.0;
|
||||
MaxSkill = +25.0;
|
||||
}
|
||||
|
||||
public void UpdateItemID()
|
||||
|
|
@ -65,7 +54,7 @@ namespace Server.Items
|
|||
|
||||
Effects.PlaySound( GetWorldLocation(), Map, 0x4F );
|
||||
|
||||
if ( from.CheckSkill( SkillName.Stealing, m_MinSkill, m_MaxSkill ) )
|
||||
if ( from.CheckSkill( SkillName.Stealing, MinSkill, MaxSkill ) )
|
||||
{
|
||||
SendLocalizedMessageTo( from, 501834 ); // You successfully avoid disturbing the dip while searching it.
|
||||
}
|
||||
|
|
@ -85,7 +74,7 @@ namespace Server.Items
|
|||
SendLocalizedMessageTo( from, 501816 ); // You are too far away to do that.
|
||||
else if ( Swinging )
|
||||
SendLocalizedMessageTo( from, 501815 ); // You have to wait until it stops swinging.
|
||||
else if ( from.Skills[SkillName.Stealing].Base >= m_MaxSkill )
|
||||
else if ( from.Skills[SkillName.Stealing].Base >= MaxSkill )
|
||||
SendLocalizedMessageTo( from, 501830 ); // Your ability to steal cannot improve any further by simply practicing on a dummy.
|
||||
else if ( from.Mounted )
|
||||
SendLocalizedMessageTo( from, 501829 ); // You can't practice on this while on a mount.
|
||||
|
|
@ -103,8 +92,8 @@ namespace Server.Items
|
|||
|
||||
writer.Write( (int) 0 );
|
||||
|
||||
writer.Write( m_MinSkill );
|
||||
writer.Write( m_MaxSkill );
|
||||
writer.Write( MinSkill );
|
||||
writer.Write( MaxSkill );
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
|
|
@ -117,13 +106,13 @@ namespace Server.Items
|
|||
{
|
||||
case 0:
|
||||
{
|
||||
m_MinSkill = reader.ReadDouble();
|
||||
m_MaxSkill = reader.ReadDouble();
|
||||
MinSkill = reader.ReadDouble();
|
||||
MaxSkill = reader.ReadDouble();
|
||||
|
||||
if ( m_MinSkill == 0.0 && m_MaxSkill == 30.0 )
|
||||
if ( MinSkill == 0.0 && MaxSkill == 30.0 )
|
||||
{
|
||||
m_MinSkill = -25.0;
|
||||
m_MaxSkill = +25.0;
|
||||
MinSkill = -25.0;
|
||||
MaxSkill = +25.0;
|
||||
}
|
||||
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -7,7 +7,6 @@ namespace Server.Items
|
|||
{
|
||||
private bool m_Active;
|
||||
private SHTeleComponent m_TeleDest;
|
||||
private Point3D m_TeleOffset;
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public bool Active
|
||||
|
|
@ -23,17 +22,13 @@ namespace Server.Items
|
|||
}
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public Point3D TeleOffset
|
||||
{
|
||||
get => m_TeleOffset;
|
||||
set => m_TeleOffset = value;
|
||||
}
|
||||
public Point3D TeleOffset { get; set; }
|
||||
|
||||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public Point3D TelePoint
|
||||
{
|
||||
get => new Point3D( Location.X + TeleOffset.X, Location.Y + TeleOffset.Y, Location.Z + TeleOffset.Z );
|
||||
set => m_TeleOffset = new Point3D( value.X - Location.X, value.Y - Location.Y, value.Z - Location.Z );
|
||||
set => TeleOffset = new Point3D( value.X - Location.X, value.Y - Location.Y, value.Z - Location.Z );
|
||||
}
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
|
|
@ -68,7 +63,7 @@ namespace Server.Items
|
|||
Hue = 1;
|
||||
|
||||
m_Active = true;
|
||||
m_TeleOffset = offset;
|
||||
TeleOffset = offset;
|
||||
}
|
||||
|
||||
public SHTeleComponent( Serial serial ) : base( serial )
|
||||
|
|
@ -108,7 +103,7 @@ namespace Server.Items
|
|||
|
||||
writer.Write( m_Active );
|
||||
writer.Write( m_TeleDest );
|
||||
writer.Write( m_TeleOffset );
|
||||
writer.Write( TeleOffset );
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
|
|
@ -119,7 +114,7 @@ namespace Server.Items
|
|||
|
||||
m_Active = reader.ReadBool();
|
||||
m_TeleDest = reader.ReadItem() as SHTeleComponent;
|
||||
m_TeleOffset = reader.ReadPoint3D();
|
||||
TeleOffset = reader.ReadPoint3D();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -276,22 +271,18 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
private bool m_External;
|
||||
|
||||
private SHTeleComponent m_UpTele;
|
||||
private SHTeleComponent m_RightTele;
|
||||
private SHTeleComponent m_DownTele;
|
||||
private SHTeleComponent m_LeftTele;
|
||||
|
||||
private bool m_Changing;
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public bool External => m_External;
|
||||
public bool External { get; private set; }
|
||||
|
||||
public SHTeleComponent UpTele => m_UpTele;
|
||||
public SHTeleComponent RightTele => m_RightTele;
|
||||
public SHTeleComponent DownTele => m_DownTele;
|
||||
public SHTeleComponent LeftTele => m_LeftTele;
|
||||
public SHTeleComponent UpTele { get; private set; }
|
||||
|
||||
public SHTeleComponent RightTele { get; private set; }
|
||||
|
||||
public SHTeleComponent DownTele { get; private set; }
|
||||
|
||||
public SHTeleComponent LeftTele { get; private set; }
|
||||
|
||||
[Constructible]
|
||||
public SHTeleporter() : this( true )
|
||||
|
|
@ -302,7 +293,7 @@ namespace Server.Items
|
|||
public SHTeleporter( bool external )
|
||||
{
|
||||
m_Changing = false;
|
||||
m_External = external;
|
||||
External = external;
|
||||
|
||||
if ( external )
|
||||
{
|
||||
|
|
@ -325,20 +316,20 @@ namespace Server.Items
|
|||
}
|
||||
|
||||
Point3D upOS = external ? new Point3D( -1, 0, 0 ) : new Point3D( -2, -1, 0 );
|
||||
m_UpTele = new SHTeleComponent( external ? 0x1775 : 0x495, upOS );
|
||||
AddComponent( m_UpTele, 0, 0, 0 );
|
||||
UpTele = new SHTeleComponent( external ? 0x1775 : 0x495, upOS );
|
||||
AddComponent( UpTele, 0, 0, 0 );
|
||||
|
||||
Point3D rightOS = external ? new Point3D( -2, 0, 0 ) : new Point3D( 2, -1, 0 );
|
||||
m_RightTele = new SHTeleComponent( external ? 0x1775 : 0x495, rightOS );
|
||||
AddComponent( m_RightTele, 1, 0, 0 );
|
||||
RightTele = new SHTeleComponent( external ? 0x1775 : 0x495, rightOS );
|
||||
AddComponent( RightTele, 1, 0, 0 );
|
||||
|
||||
Point3D downOS = external ? new Point3D( -2, -1, 0 ) : new Point3D( 2, 2, 0 );
|
||||
m_DownTele = new SHTeleComponent( external ? 0x1776 : 0x495, downOS );
|
||||
AddComponent( m_DownTele, 1, 1, 0 );
|
||||
DownTele = new SHTeleComponent( external ? 0x1776 : 0x495, downOS );
|
||||
AddComponent( DownTele, 1, 1, 0 );
|
||||
|
||||
Point3D leftOS = external ? new Point3D( -1, -1, 0 ) : new Point3D( -1, 2, 0 );
|
||||
m_LeftTele = new SHTeleComponent( external ? 0x1775 : 0x495, leftOS );
|
||||
AddComponent( m_LeftTele, 0, 1, 0 );
|
||||
LeftTele = new SHTeleComponent( external ? 0x1775 : 0x495, leftOS );
|
||||
AddComponent( LeftTele, 0, 1, 0 );
|
||||
}
|
||||
|
||||
public SHTeleporter( Serial serial ) : base( serial )
|
||||
|
|
@ -355,10 +346,10 @@ namespace Server.Items
|
|||
|
||||
m_Changing = true;
|
||||
|
||||
m_UpTele.Active = active;
|
||||
m_RightTele.Active = active;
|
||||
m_DownTele.Active = active;
|
||||
m_LeftTele.Active = active;
|
||||
UpTele.Active = active;
|
||||
RightTele.Active = active;
|
||||
DownTele.Active = active;
|
||||
LeftTele.Active = active;
|
||||
|
||||
m_Changing = false;
|
||||
}
|
||||
|
|
@ -372,19 +363,19 @@ namespace Server.Items
|
|||
|
||||
if ( !(dest?.Addon is SHTeleporter) )
|
||||
{
|
||||
m_UpTele.TeleDest = dest;
|
||||
m_RightTele.TeleDest = dest;
|
||||
m_DownTele.TeleDest = dest;
|
||||
m_LeftTele.TeleDest = dest;
|
||||
UpTele.TeleDest = dest;
|
||||
RightTele.TeleDest = dest;
|
||||
DownTele.TeleDest = dest;
|
||||
LeftTele.TeleDest = dest;
|
||||
}
|
||||
else
|
||||
{
|
||||
SHTeleporter destAddon = (SHTeleporter)dest.Addon;
|
||||
|
||||
m_UpTele.TeleDest = destAddon.UpTele;
|
||||
m_RightTele.TeleDest = destAddon.RightTele;
|
||||
m_DownTele.TeleDest = destAddon.DownTele;
|
||||
m_LeftTele.TeleDest = destAddon.LeftTele;
|
||||
UpTele.TeleDest = destAddon.UpTele;
|
||||
RightTele.TeleDest = destAddon.RightTele;
|
||||
DownTele.TeleDest = destAddon.DownTele;
|
||||
LeftTele.TeleDest = destAddon.LeftTele;
|
||||
}
|
||||
|
||||
m_Changing = false;
|
||||
|
|
@ -399,17 +390,17 @@ namespace Server.Items
|
|||
|
||||
if ( destAddon != null )
|
||||
{
|
||||
m_UpTele.TeleDest = destAddon.UpTele;
|
||||
m_RightTele.TeleDest = destAddon.RightTele;
|
||||
m_DownTele.TeleDest = destAddon.DownTele;
|
||||
m_LeftTele.TeleDest = destAddon.LeftTele;
|
||||
UpTele.TeleDest = destAddon.UpTele;
|
||||
RightTele.TeleDest = destAddon.RightTele;
|
||||
DownTele.TeleDest = destAddon.DownTele;
|
||||
LeftTele.TeleDest = destAddon.LeftTele;
|
||||
}
|
||||
else
|
||||
{
|
||||
m_UpTele.TeleDest = null;
|
||||
m_RightTele.TeleDest = null;
|
||||
m_DownTele.TeleDest = null;
|
||||
m_LeftTele.TeleDest = null;
|
||||
UpTele.TeleDest = null;
|
||||
RightTele.TeleDest = null;
|
||||
DownTele.TeleDest = null;
|
||||
LeftTele.TeleDest = null;
|
||||
}
|
||||
|
||||
m_Changing = false;
|
||||
|
|
@ -421,12 +412,12 @@ namespace Server.Items
|
|||
|
||||
writer.Write( (int)0 ); // version
|
||||
|
||||
writer.Write( m_External );
|
||||
writer.Write( External );
|
||||
|
||||
writer.Write( m_UpTele );
|
||||
writer.Write( m_RightTele );
|
||||
writer.Write( m_DownTele );
|
||||
writer.Write( m_LeftTele );
|
||||
writer.Write( UpTele );
|
||||
writer.Write( RightTele );
|
||||
writer.Write( DownTele );
|
||||
writer.Write( LeftTele );
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
|
|
@ -435,12 +426,12 @@ namespace Server.Items
|
|||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
m_External = reader.ReadBool();
|
||||
External = reader.ReadBool();
|
||||
|
||||
m_UpTele = (SHTeleComponent)reader.ReadItem();
|
||||
m_RightTele = (SHTeleComponent)reader.ReadItem();
|
||||
m_DownTele = (SHTeleComponent)reader.ReadItem();
|
||||
m_LeftTele = (SHTeleComponent)reader.ReadItem();
|
||||
UpTele = (SHTeleComponent)reader.ReadItem();
|
||||
RightTele = (SHTeleComponent)reader.ReadItem();
|
||||
DownTele = (SHTeleComponent)reader.ReadItem();
|
||||
LeftTele = (SHTeleComponent)reader.ReadItem();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,24 +5,13 @@ namespace Server.Items
|
|||
[Flippable( 0x1070, 0x1074 )]
|
||||
public class TrainingDummy : AddonComponent
|
||||
{
|
||||
private double m_MinSkill;
|
||||
private double m_MaxSkill;
|
||||
|
||||
private Timer m_Timer;
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public double MinSkill
|
||||
{
|
||||
get => m_MinSkill;
|
||||
set => m_MinSkill = value;
|
||||
}
|
||||
public double MinSkill { get; set; }
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public double MaxSkill
|
||||
{
|
||||
get => m_MaxSkill;
|
||||
set => m_MaxSkill = value;
|
||||
}
|
||||
public double MaxSkill { get; set; }
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public bool Swinging => ( m_Timer != null );
|
||||
|
|
@ -35,8 +24,8 @@ namespace Server.Items
|
|||
[Constructible]
|
||||
public TrainingDummy( int itemID ) : base( itemID )
|
||||
{
|
||||
m_MinSkill = -25.0;
|
||||
m_MaxSkill = +25.0;
|
||||
MinSkill = -25.0;
|
||||
MaxSkill = +25.0;
|
||||
}
|
||||
|
||||
public void UpdateItemID()
|
||||
|
|
@ -76,7 +65,7 @@ namespace Server.Items
|
|||
from.Direction = from.GetDirectionTo( GetWorldLocation() );
|
||||
weapon.PlaySwingAnimation( from );
|
||||
|
||||
from.CheckSkill( weapon.Skill, m_MinSkill, m_MaxSkill );
|
||||
from.CheckSkill( weapon.Skill, MinSkill, MaxSkill );
|
||||
}
|
||||
|
||||
public override void OnDoubleClick( Mobile from )
|
||||
|
|
@ -89,7 +78,7 @@ namespace Server.Items
|
|||
SendLocalizedMessageTo( from, 501816 ); // You are too far away to do that.
|
||||
else if ( Swinging )
|
||||
SendLocalizedMessageTo( from, 501815 ); // You have to wait until it stops swinging.
|
||||
else if ( from.Skills[weapon.Skill].Base >= m_MaxSkill )
|
||||
else if ( from.Skills[weapon.Skill].Base >= MaxSkill )
|
||||
SendLocalizedMessageTo( from, 501828 ); // Your skill cannot improve any further by simply practicing with a dummy.
|
||||
else if ( from.Mounted )
|
||||
SendLocalizedMessageTo( from, 501829 ); // You can't practice on this while on a mount.
|
||||
|
|
@ -107,8 +96,8 @@ namespace Server.Items
|
|||
|
||||
writer.Write( (int) 0 );
|
||||
|
||||
writer.Write( m_MinSkill );
|
||||
writer.Write( m_MaxSkill );
|
||||
writer.Write( MinSkill );
|
||||
writer.Write( MaxSkill );
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
|
|
@ -121,13 +110,13 @@ namespace Server.Items
|
|||
{
|
||||
case 0:
|
||||
{
|
||||
m_MinSkill = reader.ReadDouble();
|
||||
m_MaxSkill = reader.ReadDouble();
|
||||
MinSkill = reader.ReadDouble();
|
||||
MaxSkill = reader.ReadDouble();
|
||||
|
||||
if ( m_MinSkill == 0.0 && m_MaxSkill == 30.0 )
|
||||
if ( MinSkill == 0.0 && MaxSkill == 30.0 )
|
||||
{
|
||||
m_MinSkill = -25.0;
|
||||
m_MaxSkill = +25.0;
|
||||
MinSkill = -25.0;
|
||||
MaxSkill = +25.0;
|
||||
}
|
||||
|
||||
break;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue