private void DrawEntries(int index, int page, int nextPage, DisguiseEntry[] entries, int nextNumber) { AddPage(page); if (nextPage != -1) { AddButton(155, 320, 250 + (index * 2), 251 + (index * 2), 0, GumpButtonType.Page, nextPage); AddHtmlLocalized(180, 320, 150, 35, nextNumber, false, false); } for (int i = 0; i < entries.Length; ++i) { DisguiseEntry entry = entries[i]; if (entry == null) { continue; } int x = (i % 2) * 205; int y = (i / 2) * 55; if (entry.m_GumpID != 0) { AddBackground(220 + x, 60 + y, 50, 50, 2620); AddImage(153 + x + entry.m_OffsetX, 15 + y + entry.m_OffsetY, entry.m_GumpID); } AddHtmlLocalized(140 + x, 72 + y, 80, 35, entry.m_Number, false, false); AddRadio(118 + x, 73 + y, 208, 209, false, (i * 2) + index); } }
public override void OnResponse(NetState sender, RelayInfo info) { if (info.ButtonID == 0) { if (m_Used) { m_From.SendLocalizedMessage(501706); // Disguises wear off after 2 hours. } else { m_From.SendLocalizedMessage(501707); // You're looking good. } return; } int[] switches = info.Switches; if (switches.Length == 0) { return; } int switched = switches[0]; int type = switched % 2; int index = switched / 2; bool hair = (type == 0); DisguiseEntry[] entries = (hair ? m_HairEntries : m_BeardEntries); if (index >= 0 && index < entries.Length) { DisguiseEntry entry = entries[index]; if (entry == null) { return; } if (!m_Kit.ValidateUse(m_From)) { return; } if (!hair && (m_From.Female || m_From.Body.IsFemale)) { return; } m_From.NameMod = NameList.RandomName(m_From.Female ? "female" : "male"); if (m_From is PlayerMobile) { PlayerMobile pm = (PlayerMobile)m_From; if (hair) { pm.SetHairMods(entry.m_ItemID, -2); } else { pm.SetHairMods(-2, entry.m_ItemID); } } m_From.SendGump(new DisguiseGump(m_From, m_Kit, hair, true)); DisguiseTimers.RemoveTimer(m_From); DisguiseTimers.CreateTimer(m_From, TimeSpan.FromHours(2.0)); DisguiseTimers.StartTimer(m_From); } }
private void DrawEntries( int index, int page, int nextPage, DisguiseEntry[] entries, int nextNumber ) { AddPage( page ); if ( nextPage != -1 ) { AddButton( 155, 320, 250 + (index*2), 251 + (index*2), 0, GumpButtonType.Page, nextPage ); AddHtmlLocalized( 180, 320, 150, 35, nextNumber, false, false ); } for ( int i = 0; i < entries.Length; ++i ) { DisguiseEntry entry = entries[i]; if ( entry == null ) continue; int x = (i % 2) * 205; int y = (i / 2) * 55; if ( entry.m_GumpID != 0 ) { AddBackground( 220 + x, 60 + y, 50, 50, 2620 ); AddImage( 153 + x + entry.m_OffsetX, 15 + y + entry.m_OffsetY, entry.m_GumpID ); } AddHtmlLocalized( 140 + x, 72 + y, 80, 35, entry.m_Number, false, false ); AddRadio( 118 + x, 73 + y, 208, 209, false, (i * 2) + index ); } }
public override void OnResponse(NetState sender, RelayInfo info) { if (info.ButtonID == 0) { m_From.CloseGump(typeof(DisguiseGump)); m_From.SendGump(new HairDyeGump( )); if (m_Used) { m_From.SendMessage("Disguises wear off after 5 hours"); // Disguises wear off after 2 hours. } else { m_From.SendLocalizedMessage(501707); // You're looking good. } return; } /* DYE button * if ( info.ButtonID == 2 ) * { * * //m_From.CloseGump( typeof( DisguiseGump ) ); * m_From.SendGump( new HairDyeGump( ) ); * //return; * } */ int[] switches = info.Switches; if (switches.Length == 0) { return; } int switched = switches[0]; int type = switched % 2; int index = switched / 2; bool hair = (type == 0); DisguiseEntry[] entries = (hair ? m_HairEntries : m_BeardEntries); if (index >= 0 && index < entries.Length) { DisguiseEntry entry = entries[index]; if (entry == null) { return; } if (!m_Kit.ValidateUse(m_From)) { return; } if (!hair && (m_From.Female || m_From.Body.IsFemale)) { return; } TextRelay relay = info.GetTextEntry(0); string text = (relay == null ? null : relay.Text.Trim()); if (text != "") { m_From.NameMod = text; } //m_From.NameMod = NameList.RandomName( m_From.Female ? "female" : "male" ); if (m_From is PlayerMobile) { PlayerMobile pm = (PlayerMobile)m_From; if (hair) { pm.SetHairMods(entry.m_ItemID, -2); } else { pm.SetHairMods(-2, entry.m_ItemID); } } m_From.SendGump(new DisguiseGump(m_From, m_Kit, hair, true)); StopTimer(m_From); m_Timers[m_From] = Timer.DelayCall(TimeSpan.FromHours(5.0), new TimerStateCallback(OnDisguiseExpire), m_From); } }
public override void OnResponse(NetState sender, RelayInfo info) { if (info.ButtonID == 0) { if (m_Used) { m_From.SendLocalizedMessage(501706); // Disguises wear off after 2 hours. } else { m_From.SendLocalizedMessage(501707); // You're looking good. } return; } string name = info.GetTextEntry(0).Text.Trim(); name = ValidateName(name); int[] switches = info.Switches; if (switches.Length == 0) { return; } int switched = switches[0]; int type = switched % 2; int index = switched / 2; bool hair = (type == 0); DisguiseEntry[] entries = (hair ? m_HairEntries : m_BeardEntries); if (index >= 0 && index < entries.Length) { DisguiseEntry entry = entries[index]; if (entry == null) { return; } if (!m_Kit.ValidateUse(m_From)) { return; } if (!hair && (m_From.Female || m_From.Body.IsFemale)) { return; } m_From.NameMod = name; if (m_From is PlayerMobile) { PlayerMobile pm = (PlayerMobile)m_From; if (hair) { pm.SetHairMods(entry.m_ItemID, -2); } else { pm.SetHairMods(-2, entry.m_ItemID); } } DisguiseTimers.RemoveTimer(m_From); DisguiseTimers.CreateTimer(m_From, TimeSpan.FromHours(2.0)); DisguiseTimers.StartTimer(m_From); m_Kit.Delete(); m_From.SendMessage("You put on the disguise and discard the container."); } }