public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( (int) 3 ); // version
writer.Write( m_ReplenishesCharges );
if( m_ReplenishesCharges )
writer.Write( m_LastReplenished );
writer.Write( m_Crafter );
writer.WriteEncodedInt( (int) m_Quality );
writer.WriteEncodedInt( (int) m_Slayer );
writer.WriteEncodedInt( (int) m_Slayer2 );
writer.WriteEncodedInt( (int)UsesRemaining );
writer.WriteEncodedInt( (int) m_WellSound );
writer.WriteEncodedInt( (int) m_BadlySound );
}