public override void OnResponse( NetState sender, RelayInfo info )
{
if ( m_FacialHair && (m_From.Female || m_From.Body.IsFemale) )
return;
if ( m_From.Race == Race.Elf )
{
m_From.SendMessage( "This isn't implemented for elves yet. Sorry!" );
return;
}
if ( info.ButtonID == 1 )
{
int[] switches = info.Switches;
if ( switches.Length > 0 )
{
int index = switches[0];
if ( index >= 0 && index < m_Entries.Length )
{
ChangeHairstyleEntry entry = m_Entries[index];
if ( m_From is PlayerMobile )
((PlayerMobile)m_From).SetHairMods( -1, -1 );
int hairID = m_From.HairItemID;
int facialHairID = m_From.FacialHairItemID;
if ( entry.ItemID == 0 )
{
if ( m_FacialHair ? (facialHairID == 0) : (hairID == 0) )
return;
if ( Banker.Withdraw( m_From, m_Price ) )
{
if ( m_FacialHair )
m_From.FacialHairItemID = 0;
else
m_From.HairItemID = 0;
}
else
m_Vendor.PrivateOverheadMessage( MessageType.Regular, 0x3B2, 1042293, m_From.NetState ); // You cannot afford my services for that style.
}
else
{
if ( m_FacialHair )
{
if ( facialHairID > 0 && facialHairID == entry.ItemID )
return;
}
else
{
if ( hairID > 0 && hairID == entry.ItemID )
return;
}
if ( Banker.Withdraw( m_From, m_Price ) )
{
if ( m_FacialHair )
m_From.FacialHairItemID = entry.ItemID;
else
m_From.HairItemID = entry.ItemID;
}
else
m_Vendor.PrivateOverheadMessage( MessageType.Regular, 0x3B2, 1042293, m_From.NetState ); // You cannot afford my services for that style.
}
}
}
else
{
// You decide not to change your hairstyle.
m_Vendor.PrivateOverheadMessage( MessageType.Regular, 0x3B2, 1013009, m_From.NetState );
}
}
else
{
// You decide not to change your hairstyle.
m_Vendor.PrivateOverheadMessage( MessageType.Regular, 0x3B2, 1013009, m_From.NetState );
}
}