public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { if (info.ButtonID == 2) { bool okay = info.IsSwitched(1); if (okay) { JusticeVirtue.OnVirtueAccepted(m_Protector, m_Protectee); } else { JusticeVirtue.OnVirtueRejected(m_Protector, m_Protectee); } } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { if (info.ButtonID == 2) { if (!m_Pet.Deleted && m_Pet.Controled && m_From == m_Pet.ControlMaster && m_From.CheckAlive() && m_Pet.CheckControlChance(m_From)) { if (m_Pet.Map == m_From.Map && m_Pet.InRange(m_From, 14)) { m_Pet.Home = m_Pet.Location; m_Pet.ControlTarget = null; m_Pet.ControlOrder = OrderType.Release; } } } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { if (info.ButtonID == 2) { bool okay = info.IsSwitched(1); if (okay) { m_Spell.AcceptBodyGuard(m_Protectee); } else { m_Spell.DeclineBodyGuard(m_Protectee); } } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { if (!AuctionSystem.Running) { sender.Mobile.SendMessage(AuctionConfig.MessageHue, AuctionSystem.ST[15]); return; } if (info.ButtonID == 1) { if (m_Message != null) { m_Message.SendTo(sender.Mobile); } } }
/// <summary> /// Handle user response /// </summary> /// <param name="sender"></param> /// <param name="info"></param> /// <returns></returns> CommitGumpBase.GumpReturnType ICommitGumpEntity.OnResponse(Server.Network.NetState sender, RelayInfo info) { if (info.ButtonID >= 10000) { return(CommitGumpBase.GumpReturnType.None); //these are master page buttons } //Only the leader can change stuff here if (!ReferenceEquals(m_Gump.Data.CityLeader, sender.Mobile) && sender.Mobile.AccessLevel <= AccessLevel.Player) { m_State.Status = "Only the city leader may make changes"; return(GumpReturnType.None); } //Work out which beneficary was selected, and if it was the + or - button. int playerIndex = (int)Math.Ceiling(((double)info.ButtonID / 2)) - 1; int buttonIndex = (info.ButtonID % 2); if (buttonIndex > 0) { buttonIndex = 1; } //sender.Mobile.SendMessage(string.Format("Player {0} selected. Button {1}",playerIndex,buttonIndex)); PlayerMobile pm = m_Gump.Data.BeneficiaryDataList[playerIndex].Pm; if (buttonIndex == 1) { //Minus was pressed if (m_State.SlotsRemainingChanged[pm] == 0) { m_State.Status = string.Format("{0} does not have any unassiged slots to pool", pm.Name); return(CommitGumpBase.GumpReturnType.None); } m_State.SlotsRemainingChanged[pm]--; m_State.RemainingSlots++; } else { //Plus was pressed if (m_State.RemainingSlots == 0) { m_State.Status = "There are no guard slots left in the pool to assign"; return(CommitGumpBase.GumpReturnType.None); } m_State.SlotsRemainingChanged[pm]++; m_State.RemainingSlots--; } return(CommitGumpBase.GumpReturnType.None); }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { Mobile from = sender.Mobile; m_Timer2.Stop(); switch (info.ButtonID) { case 2: { foreach (PlayerMobile opponent in m_Item.OpponentTeam) { opponent.SendMessage(43, String.Format(Affraid, from.Name)); } foreach (PlayerMobile challenger in m_Item.ChallengeTeam) { challenger.SendMessage(43, String.Format(Affraid, from.Name)); } m_Item.ClearAll(); break; } case 1: { if (m_Item.Game == ChallengeGameType.TwoPlayerTeam) { if (i == 1) { m_ChallengerMobile.SendMessage("Choose each of your opponents."); } else if (i == 2) { m_ChallengerMobile.SendMessage("Choose the last opponent."); } } m_ChallengerMobile.Target = new ChallengeTarget(m_ChallengerMobile, m_Item, i); break; } case 0: { m_Item.ClearAll(); break; } } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { switch (info.ButtonID) { case 1: { sender.LaunchBrowser("http://www.uoancorp.com"); break; } case 2: { sender.LaunchBrowser("http://www.uoancorp.com"); break; } } }
public override void OnResponse(Server.Network.NetState state, RelayInfo info) { Mobile from = state.Mobile; int index = info.ButtonID - 1; //i+1 because 0 = exit if (from == null || index < 0 || index > m_prizeDefs.Count - 1) { return; //Avoid crashing the server with faked buttonIDs } PrizeDefinition prizeDef = m_prizeDefs[index] as PrizeDefinition; //if (prizeDef != null) prizeDef.TryGiveOut(from); if (prizeDef != null) { from.SendGump(new EventPrizeConfirmGump(from, prizeDef)); } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { bool makersMark = (info.ButtonID == 1); if (makersMark) { //m_From.SendLocalizedMessage( 501808 ); // You mark the item. m_From.SendMessage("Vous gravez votre nom sur l'objet"); } else { m_From.SendMessage("Vous renoncez à graver l'objet"); } //m_From.SendLocalizedMessage(501809); // Cancelled mark. m_CraftItem.CompleteCraft(m_Quality, makersMark, m_From, m_CraftSystem, m_TypeRes, m_Tool, null); }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { bool makersMark = (info.ButtonID == 1); if (makersMark) { // You mark the item. m_From.SendLocalizedMessage(501808); } else { // Cancelled mark. m_From.SendLocalizedMessage(501809); } m_CraftItem.CompleteCraft(m_Quality, makersMark, m_From, m_CraftSystem, m_TypeRes, m_Tool); }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { if (m_Aquarium == null || m_Aquarium.Deleted) { return; } if (info.ButtonID > 0 && info.ButtonID <= m_Aquarium.Items.Count && m_Edit) { m_Aquarium.RemoveItem(sender.Mobile, info.ButtonID - 1); } if (info.ButtonID > 0) { sender.Mobile.SendGump(new AquariumGump(m_Aquarium, m_Edit)); } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { switch (info.ButtonID) { case 11: if (sender.Mobile.AccessLevel >= AccessLevel.Administrator) { Load(); sender.Mobile.SendGump(new MustangGump(sender.Mobile, 0)); } else { sender.Mobile.SendGump(new MustangGump(sender.Mobile, m_Page)); sender.Mobile.SendMessage("Only administrators can do that"); } break; case 12: // Previous page sender.Mobile.SendGump(new MustangGump(sender.Mobile, --m_Page)); break; case 13: // Next page sender.Mobile.SendGump(new MustangGump(sender.Mobile, ++m_Page)); break; default: int index = info.ButtonID - 1; if (index >= 0 && index < 10) { int i = m_Page * 10 + index; if (i >= 0 && i < Mustangs.Count) { MustangInfo m = Mustangs[i] as MustangInfo; sender.Mobile.Target = new MustangTarget(new object[] { m_Page, m }); sender.Mobile.SendMessage("Where do you wish to create the mustang?"); } } break; } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { switch (info.ButtonID) { case 1: // No: make a new jail entry JailSystem.InitJail(m_User, m_Offender, true); break; case 2: // Yes: set current jail entry to full account m_ExistingJail.FullJail = true; m_ExistingJail.AddComment(m_User, "Turning on full jail to jail {0}", m_Offender.Name); m_User.SendGump(new JailViewGump(m_User, m_ExistingJail, null)); break; } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { m_Mobile.Frozen = false; int ButtonID = info.ButtonID; switch (ButtonID) { case 1: { int amount = Utility.ToInt32(info.GetTextEntry(1).Text); if (amount > 0) { if (m_Mobile.BankBox.TotalGold >= amount) { if (amount > 5000) { BankCheck bc = new BankCheck(amount); m_Mobile.Backpack.DropItem(bc); m_Mobile.SendMessage(Locale.GetLocale(m_Mobile).BANK_STONE_WITHDRAW_GOT_CHEQUE, amount); } else { Gold g = new Gold(amount); m_Mobile.Backpack.DropItem(g); m_Mobile.SendMessage(Locale.GetLocale(m_Mobile).BANK_STONE_WITHDRAW_GOT_GOLD, amount); } } else { m_Mobile.SendMessage(Locale.GetLocale(m_Mobile).BANK_STONE_WITHDRAW_NOT_ENOUGH); } } else { m_Mobile.SendMessage(Locale.GetLocale(m_Mobile).BANK_STONE_WITHDRAW_INVALID); } break; } } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { if (info.ButtonID == 2) { if (!m_Pet.Deleted && m_Pet.Controlled && m_From == m_Pet.ControlMaster && m_From.CheckAlive() /*&& m_Pet.CheckControlChance( m_From )*/) { if (m_Pet.Map == m_From.Map && m_Pet.InRange(m_From, 14)) { m_Pet.ControlTarget = null; m_Pet.ControlOrder = OrderType.Release; #region Mondain's Legacy m_Pet.OnRelease(m_From); #endregion } } } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { switch (info.ButtonID) { case 1: // Make move sender.Mobile.SendGump(new GameGump(sender.Mobile, m_Game, m_Color, m_Message, m_Move, m_Moving)); break; case 2: // Chess Help sender.Mobile.SendGump(new ChessHelpGump(sender.Mobile)); sender.Mobile.SendGump(this); break; case 3: // End game m_Game.Cleanup(); break; } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { if (!m_From.CheckAlive() || m_From.Backpack == null || m_Tool == null || m_Tool.UsesRemaining == 0 || !m_Tool.IsChildOf(m_From.Backpack)) { return; } int index = info.ButtonID - 1; if (index >= 0 && index < m_Entries.Length) { m_From.Target = new NewHouseSurveyTarget(m_Tool, m_Entries, m_Entries[index]); } else { m_From.SendGump(new HouseSurveyCategoryGump(m_From, m_Tool)); } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { if (m_From.Region is NewbieDungeonRegion) { m_From.SendMessage("You cannot release your pets here."); return; } if (info.ButtonID == 2) { PlayerMobile pm = m_From as PlayerMobile; if (pm != null) { pm.ReleaseAllFollowers(); } } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { if (!m_From.CheckAlive() || m_From.Backpack == null || m_From.Backpack.FindItemByType(typeof(HousePlacementTool)) == null) { return; } int index = info.ButtonID - 1; if (index >= 0 && index < m_Entries.Length) { m_From.Target = new NewHousePlacementTarget(m_Entries, m_Entries[index]); } else { m_From.SendGump(new HousePlacementCategoryGump(m_From)); } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { Mobile from = sender.Mobile; switch (info.ButtonID) { case 1: { int hour, min, sec, score; if (Int32.TryParse(info.GetTextEntry(0).Text, out hour) && Int32.TryParse(info.GetTextEntry(1).Text, out min) && Int32.TryParse(info.GetTextEntry(2).Text, out sec)) { if (hour != m_Hours || min != m_Minutes || sec != m_Seconds) { Game.Length = new TimeSpan(hour, min, sec); } } if (Int32.TryParse(info.GetTextEntry(3).Text, out score)) { Game.MaxScore = score; } if (Game is BaseTeamGame) { int count = 4; BaseTeamGame teamgame = Game as BaseTeamGame; foreach (BaseGameTeam team in teamgame.Teams) { if (info.GetTextEntry(count) != null && Int32.TryParse(info.GetTextEntry(count++).Text, out score)) { team.Score = score; } foreach (Mobile player in team.Players) { if (info.GetTextEntry(player.Serial) != null && Int32.TryParse(info.GetTextEntry(player.Serial).Text, out score)) { Game.SetPlayerScore(player, score); } } } } from.SendGump(new GameAdminGump(from, m_Game)); break; } } }
public override void OnResponse(Server.Network.NetState state, RelayInfo info) { if (m_Tool == null || m_Tool.Deleted || m_Target == null || m_Target.Deleted) { return; } if (info.ButtonID == (int)Buttons.Okay) { TextRelay relay = info.GetTextEntry((int)Buttons.Text); string sanitized_text = relay.Text; sanitized_text = sanitized_text.Replace("<", "").Replace(">", "").Trim(); relay = new TextRelay(relay.EntryID, sanitized_text); if (relay != null) { if (String.IsNullOrEmpty(relay.Text)) { m_Target.EngravedText = null; state.Mobile.SendLocalizedMessage(1072362); // You remove the engraving from the object. } else { if (relay.Text.Length > 64) { m_Target.EngravedText = relay.Text.Substring(0, 64); } else { m_Target.EngravedText = relay.Text; } state.Mobile.SendLocalizedMessage(1072361); // You engraved the object. m_Target.InvalidateProperties(); m_Tool.UsesRemaining -= 1; m_Tool.InvalidateProperties(); } } } else { state.Mobile.SendLocalizedMessage(1072363); // The object was not engraved. } }
public override void OnResponse(Server.Network.NetState state, RelayInfo info) { if (this.m_Tool == null || this.m_Tool.Deleted || this.m_Target == null || this.m_Target.Deleted) { return; } if (info.ButtonID == (int)Buttons.Okay) { TextRelay relay = info.GetTextEntry((int)Buttons.Text); if (relay != null) { if (relay.Text == null || relay.Text.Equals("")) { ((IEngravable)this.m_Target).EngravedText = null; state.Mobile.SendLocalizedMessage(1072362); // You remove the engraving from the object. } else { if (relay.Text.Length > 40) { ((IEngravable)this.m_Target).EngravedText = relay.Text.Substring(0, 40); } else { ((IEngravable)this.m_Target).EngravedText = relay.Text; } state.Mobile.SendLocalizedMessage(1072361); // You engraved the object. this.m_Target.InvalidateProperties(); this.m_Tool.UsesRemaining -= 1; this.m_Tool.InvalidateProperties(); if (this.m_Tool.UsesRemaining < 1) { this.m_Tool.Delete(); state.Mobile.SendLocalizedMessage(1044038); // You have worn out your tool! } } } } }
public override void OnResponse(Server.Network.NetState state, RelayInfo info) { Mobile from = state.Mobile; if (info.ButtonID >= 200 && from is PlayerMobile) { CollectionItem item = Collection[info.ButtonID - 200]; double points = GetPoints(from); if (item != null && item.Points <= points) { from.SendGump(new aConfirmRewardGump(Owner, item, info.ButtonID - 200, OnConfirmed)); } else { from.SendLocalizedMessage(1073122); // You don't have enough points for that! } } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { Mobile pm = ( Mobile )sender.Mobile; if (pm == null) { return; } switch (info.ButtonID) { case 11: { pm.CloseGump(typeof(AccountSearch)); pm.SendGump(new AccountSearch()); break; } case 12: { int page = m_Page + 1; pm.CloseGump(typeof(AccountListingGump)); pm.SendGump(new AccountListingGump(m_List, page)); break; } case 13: { int page = m_Page - 1; pm.CloseGump(typeof(AccountListingGump)); pm.SendGump(new AccountListingGump(m_List, page)); break; } default: { AuthorStatistics ast = (AuthorStatistics)m_CurrentList[info.ButtonID]; pm.CloseGump(typeof(AccountManagementGump)); pm.SendGump(new AccountManagementGump(ast)); break; } } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { Mobile m = sender.Mobile; GrabOptions options = Grab.GetOptions(m); if (m == null || info.ButtonID <= 0 || info.ButtonID == 100) { return; } //store flags options.ResetFlags(); if (info.Switches.Length > 0) { for (int i = 0; i < info.Switches.Length; i++) { if (info.Switches[i] == 1) { options.SetFlag(GrabFlag.Everything, true); break; } options.SetFlag(Grab.ParseInt32(info.Switches[i]), true); } } else { options.SetFlag(GrabFlag.Everything, true); } //handle buttons if (info.ButtonID == 105) //OK { Grab.SaveOptions(m, options); m.SendMessage("You have updated your Grab options."); } else //placement container selection { m.SendMessage("Select the container to place this type of loot in."); m.BeginTarget(-1, false, Server.Targeting.TargetFlags.None, new TargetStateCallback(OnContainerSelect), info.ButtonID); } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { if (sender.Mobile == null) { return; } sender.Mobile.CloseGump(typeof(StatusGump)); if (info.ButtonID == 1) { sender.Mobile.SendGump(new PerkOverviewGump((Player)sender.Mobile)); } if (info.ButtonID == 2) { sender.Mobile.SendGump(new SkillCapSelectionGump((Player)sender.Mobile)); } if (info.ButtonID == 3) { if (((Player)sender.Mobile).EoC >= 5000 && ((Player)sender.Mobile).KOCount > 0) { ((Player)sender.Mobile).ConsumeEoC(5000); ((Player)sender.Mobile).KOCount--; sender.Mobile.CloseGump(typeof(StatusGump)); sender.Mobile.SendGump(new StatusGump(((Player)sender.Mobile))); } else if (((Player)sender.Mobile).EoC < 5000) { sender.Mobile.SendMessage("You do not have the required essence to do that."); sender.Mobile.SendGump(new StatusGump(((Player)sender.Mobile))); } else if (((Player)sender.Mobile).KOCount < 1) { sender.Mobile.SendMessage("You can not lower your KO Counts any further."); sender.Mobile.SendGump(new StatusGump(((Player)sender.Mobile))); } } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { switch (info.ButtonID) { case 0: // Close Gump { MessagesTitle = "Set Spawner Name"; Messages = "You have chosen not to name the Mega Spawner."; SetArgsList(); gumpMobile.SendGump(new MegaSpawnerEditGump(gumpMobile, ArgsList)); break; } case 1: // Set Spawner Name { if (CheckProcess()) { break; } string name = Convert.ToString(info.GetTextEntry(0).Text); if (name == "") { name = "A Mega Spawner"; } megaSpawner.Name = name; MessagesTitle = "Set Spawner Name"; Messages = String.Format("The Mega Spawner's name has been set to \"{0}\".", name); SetArgsList(); gumpMobile.SendGump(new MegaSpawnerEditGump(gumpMobile, ArgsList)); break; } } }
public override void OnResponse(Server.Network.NetState state, RelayInfo info) { if (m_Tool == null || m_Tool.Deleted || m_Target == null || m_Target.Deleted) { return; } if (info.ButtonID == (int)Buttons.Okay) { TextRelay relay = info.GetTextEntry((int)Buttons.Text); if (relay != null) { if (relay.Text == null || relay.Text.Equals("")) { ((IEngravable)m_Target).EngravedText = null; state.Mobile.SendLocalizedMessage(m_Tool.RemoveMessage); } else { if (relay.Text.Length > 40) { ((IEngravable)m_Target).EngravedText = relay.Text.Substring(0, 40); } else { ((IEngravable)m_Target).EngravedText = relay.Text; } state.Mobile.SendLocalizedMessage(m_Tool.SuccessMessage); m_Tool.UsesRemaining -= 1; if (m_Tool.UsesRemaining < 1) { m_Tool.Delete(); state.Mobile.SendLocalizedMessage(1044038); // You have worn out your tool! } } } } }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { if (!m_Buttons.Contains(info.ButtonID)) { Console.WriteLine(@"The auction system located a potential exploit. Player {0} (Acc. {1}) tried to press an unregistered button in a gump of type: {2}" , sender.Mobile != null ? sender.Mobile.ToString() : "Unkown", sender.Mobile != null && sender.Mobile.Account != null ? (sender.Mobile.Account as Server.Accounting.Account).Username : "******", this.GetType().Name); return; } switch (info.ButtonID) { case 1: // Validate AuctionSystem.VerifyAuctions(); AuctionSystem.VerifyPendencies(); sender.Mobile.SendGump(new AuctionAdminGump(sender.Mobile)); break; case 2: // Profile AuctionSystem.ProfileAuctions(); sender.Mobile.SendGump(new AuctionAdminGump(sender.Mobile)); break; case 3: // Disable AuctionSystem.Disable(); sender.Mobile.SendMessage(AuctionSystem.MessageHue, "The system has been stopped. It will be restored with the next reboot."); break; case 4: // Delete sender.Mobile.SendGump(new DeleteAuctionGump(sender.Mobile)); break; } }
public override void OnResponse(Server.Network.NetState state, RelayInfo info) { if (m_Quester == null) { return; } if (info.ButtonID == (int)Buttons.Okay) { Mobile m = state.Mobile; if (HeritageQuester.Check(m)) { HeritageQuester.AddPending(m, m_Quester); Timer.DelayCall(TimeSpan.FromMinutes(1), new TimerStateCallback(CloseHeritageGump), m); state.Mobile.Send(new HeritagePacket(m.Female, (short)(m_Quester.Race.RaceID + 1))); } } }