Server.Gumps.NewPlayerVendorCustomizeGump.OnResponse C# (CSharp) Méthode

OnResponse() public méthode

public OnResponse ( Server.Network.NetState sender, RelayInfo info ) : void
sender Server.Network.NetState
info RelayInfo
Résultat void
		public override void OnResponse( NetState sender, RelayInfo info )
		{
			Mobile from = sender.Mobile;

			if ( !m_Vendor.CanInteractWith( from, true ) )
				return;

			switch ( info.ButtonID )
			{
				case 0: // CLOSE
				{
					m_Vendor.Direction = m_Vendor.GetDirectionTo( from );
					m_Vendor.Animate( 32, 5, 1, true, false, 0 ); // bow
					m_Vendor.SayTo( from, 1043310 + Utility.Random( 12 ) ); // a little random speech

					break;
				}
				case 1: // Female/Male
				{
					if ( m_Vendor.Female )
					{
						m_Vendor.BodyValue = 400;
						m_Vendor.Female = false;
					}
					else
					{
						m_Vendor.BodyValue = 401;
						m_Vendor.Female = true;

						m_Vendor.FacialHairItemID = 0;
					}

					from.SendGump( new NewPlayerVendorCustomizeGump( m_Vendor ) );

					break;
				}
				case 2: // Remove hair
				{
					m_Vendor.HairItemID = 0;

					from.SendGump( new NewPlayerVendorCustomizeGump( m_Vendor ) );

					break;
				}
				case 3: // Color hair
				{
					if ( m_Vendor.HairItemID > 0 )
					{
						new PVHuePicker( m_Vendor, false, from ).SendTo( from.NetState );
					}
					else
					{
						from.SendGump( new NewPlayerVendorCustomizeGump( m_Vendor ) );
					}

					break;
				}
				case 4: // Remove beard
				{
					m_Vendor.FacialHairItemID = 0;

					from.SendGump( new NewPlayerVendorCustomizeGump( m_Vendor ) );

					break;
				}
				case 5: // Color beard
				{
					if ( m_Vendor.FacialHairItemID > 0 )
					{
						new PVHuePicker( m_Vendor, true, from ).SendTo( from.NetState );
					}
					else
					{
						from.SendGump( new NewPlayerVendorCustomizeGump( m_Vendor ) );
					}

					break;
				}
				default:
				{
					int hairhue = 0;

					if ( (info.ButtonID & 0x100) != 0 ) // Hair style selected
					{
						int index = info.ButtonID & 0xFF;

						if ( index >= m_HairStyles.Length )
							return;

						HairOrBeard hairStyle = m_HairStyles[index];

						hairhue = m_Vendor.HairHue;

						m_Vendor.HairItemID = 0;
						m_Vendor.ProcessDelta();

						m_Vendor.HairItemID = hairStyle.ItemID;

						m_Vendor.HairHue = hairhue;

						from.SendGump( new NewPlayerVendorCustomizeGump( m_Vendor ) );
					}
					else if ( (info.ButtonID & 0x200) != 0 ) // Beard style selected
					{
						if ( m_Vendor.Female )
							return;

						int index = info.ButtonID & 0xFF;

						if ( index >= m_BeardStyles.Length )
							return;

						HairOrBeard beardStyle = m_BeardStyles[index];

						hairhue = m_Vendor.FacialHairHue;

						m_Vendor.FacialHairItemID = 0;
						m_Vendor.ProcessDelta();

						m_Vendor.FacialHairItemID = beardStyle.ItemID;

						m_Vendor.FacialHairHue = hairhue;

						from.SendGump( new NewPlayerVendorCustomizeGump( m_Vendor ) );
					}

					break;
				}
			}
		}
NewPlayerVendorCustomizeGump