branch sync

This commit is contained in:
mark 2007-11-27 06:36:57 +00:00
parent 0b19ae183e
commit 162cf6f0a9
13 changed files with 226 additions and 40 deletions

View file

@ -639,21 +639,7 @@ namespace Server.Items
{
List<EquipInfoAttribute> attrs = new List<EquipInfoAttribute>();
if ( DisplayLootType )
{
if ( LootType == LootType.Blessed )
attrs.Add( new EquipInfoAttribute( 1038021 ) ); // blessed
else if ( LootType == LootType.Cursed )
attrs.Add( new EquipInfoAttribute( 1049643 ) ); // cursed
}
#region Factions
if ( m_FactionState != null )
attrs.Add( new EquipInfoAttribute( 1041350 ) ); // faction item
#endregion
if ( m_Quality == ClothingQuality.Exceptional )
attrs.Add( new EquipInfoAttribute( 1018305 - (int)m_Quality ) );
AddEquipInfoAttributes( from, attrs );
int number;
@ -675,6 +661,25 @@ namespace Server.Items
from.Send( new DisplayEquipmentInfo( this, eqInfo ) );
}
public virtual void AddEquipInfoAttributes( Mobile from, List<EquipInfoAttribute> attrs )
{
if ( DisplayLootType )
{
if ( LootType == LootType.Blessed )
attrs.Add( new EquipInfoAttribute( 1038021 ) ); // blessed
else if ( LootType == LootType.Cursed )
attrs.Add( new EquipInfoAttribute( 1049643 ) ); // cursed
}
#region Factions
if ( m_FactionState != null )
attrs.Add( new EquipInfoAttribute( 1041350 ) ); // faction item
#endregion
if ( m_Quality == ClothingQuality.Exceptional )
attrs.Add( new EquipInfoAttribute( 1018305 - (int)m_Quality ) );
}
#region Serialization
private static void SetSaveFlag( ref SaveFlag flags, SaveFlag toSet, bool setIf )
{

View file

@ -1,10 +1,21 @@
using System;
using Server.Engines.Craft;
using Server.Network;
using System.Collections.Generic;
namespace Server.Items
{
public abstract class BaseHat : BaseClothing
public abstract class BaseHat : BaseClothing, IShipwreckedItem
{
private bool m_IsShipwreckedItem;
[CommandProperty( AccessLevel.GameMaster )]
public bool IsShipwreckedItem
{
get { return m_IsShipwreckedItem; }
set { m_IsShipwreckedItem = value; }
}
public BaseHat( int itemID ) : this( itemID, 0 )
{
}
@ -21,7 +32,9 @@ namespace Server.Items
{
base.Serialize( writer );
writer.Write( (int) 0 ); // version
writer.Write( (int) 1 ); // version
writer.Write( m_IsShipwreckedItem );
}
public override void Deserialize( GenericReader reader )
@ -29,6 +42,31 @@ namespace Server.Items
base.Deserialize( reader );
int version = reader.ReadInt();
switch ( version )
{
case 1:
{
m_IsShipwreckedItem = reader.ReadBool();
break;
}
}
}
public override void AddEquipInfoAttributes( Mobile from, List<EquipInfoAttribute> attrs )
{
base.AddEquipInfoAttributes( from, attrs );
if( m_IsShipwreckedItem )
attrs.Add( new EquipInfoAttribute( 1041645 ) ); // recovered from a shipwreck
}
public override void AddNameProperties( ObjectPropertyList list )
{
base.AddNameProperties( list );
if ( m_IsShipwreckedItem )
list.Add( 1041645 ); // recovered from a shipwreck
}
public override int OnCraft( int quality, bool makersMark, Mobile from, CraftSystem craftSystem, Type typeRes, BaseTool tool, CraftItem craftItem, int resHue )