added:ML aquariums, ML potions,runebook and spellbook makers mark, two new runic tools, NPC vendor updates
This commit is contained in:
parent
028b5ad696
commit
cbd45b53b8
59 changed files with 3351 additions and 53 deletions
|
|
@ -20,8 +20,31 @@ namespace Server.Items
|
|||
Arcanist
|
||||
}
|
||||
|
||||
public enum BookQuality
|
||||
{
|
||||
Regular,
|
||||
Exceptional,
|
||||
}
|
||||
|
||||
public class Spellbook : Item, ICraftable, ISlayer
|
||||
{
|
||||
private string m_EngravedText;
|
||||
private BookQuality m_Quality;
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public string EngravedText
|
||||
{
|
||||
get{ return m_EngravedText; }
|
||||
set{ m_EngravedText = value; InvalidateProperties(); }
|
||||
}
|
||||
|
||||
[CommandProperty( AccessLevel.GameMaster )]
|
||||
public BookQuality Quality
|
||||
{
|
||||
get{ return m_Quality; }
|
||||
set{ m_Quality = value; InvalidateProperties(); }
|
||||
}
|
||||
|
||||
public static void Initialize()
|
||||
{
|
||||
EventSink.OpenSpellbookRequest += new OpenSpellbookRequestEventHandler( EventSink_OpenSpellbookRequest );
|
||||
|
|
@ -552,6 +575,12 @@ namespace Server.Items
|
|||
public override void GetProperties( ObjectPropertyList list )
|
||||
{
|
||||
base.GetProperties( list );
|
||||
|
||||
if ( m_Quality == BookQuality.Exceptional )
|
||||
list.Add( 1063341 ); // exceptional
|
||||
|
||||
if ( m_EngravedText != null )
|
||||
list.Add( 1072305, m_EngravedText ); // Engraved: ~1_INSCRIPTION~
|
||||
|
||||
if ( m_Crafter != null )
|
||||
list.Add( 1050043, m_Crafter.Name ); // crafted by ~1_NAME~
|
||||
|
|
@ -689,7 +718,12 @@ namespace Server.Items
|
|||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.Write( (int) 3 ); // version
|
||||
writer.Write( (int) 5 ); // version
|
||||
|
||||
writer.Write( (byte) m_Quality );
|
||||
|
||||
writer.Write( (string) m_EngravedText );
|
||||
|
||||
writer.Write( m_Crafter );
|
||||
|
||||
writer.Write( (int)m_Slayer );
|
||||
|
|
@ -710,6 +744,18 @@ namespace Server.Items
|
|||
|
||||
switch ( version )
|
||||
{
|
||||
case 5:
|
||||
{
|
||||
m_Quality = (BookQuality) reader.ReadByte();
|
||||
|
||||
goto case 4;
|
||||
}
|
||||
case 4:
|
||||
{
|
||||
m_EngravedText = reader.ReadString();
|
||||
|
||||
goto case 3;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
m_Crafter = reader.ReadMobile();
|
||||
|
|
@ -808,7 +854,7 @@ namespace Server.Items
|
|||
1 // 1 property : 1/4 : 25%
|
||||
};
|
||||
|
||||
public int OnCraft( int quality, bool makersMark, Mobile from, CraftSystem craftSystem, Type typeRes, BaseTool tool, CraftItem craftItem, int resHue )
|
||||
public virtual int OnCraft( int quality, bool makersMark, Mobile from, CraftSystem craftSystem, Type typeRes, BaseTool tool, CraftItem craftItem, int resHue )
|
||||
{
|
||||
int magery = from.Skills.Magery.BaseFixedPoint;
|
||||
|
||||
|
|
@ -851,6 +897,8 @@ namespace Server.Items
|
|||
if ( makersMark )
|
||||
Crafter = from;
|
||||
|
||||
m_Quality = (BookQuality) ( quality - 1 );
|
||||
|
||||
return quality;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue