Exemple #1
0
		public virtual void onEditPageButtonClick(GumpButton button, object param)
		{
			if (m_caller.AccessLevel < AccessLevel.Administrator)
			{
				return;
			}

			try
			{
				var state = new CompendiumEditorState
				{
					PageName = Renderer.Name,
					Caller = (PlayerMobile)m_caller,
					RendererToEdit = (CompendiumPageRenderer)Renderer.Clone()
				};

				state.RendererToEdit.SelectedElement = null;
				state.EditorInstance = new CompendiumPageEditor(state);
				state.RendererToEdit.State = state;
				state.ElementListGump = new ElementListGump(state);

				state.PreviewGump = new CompendiumPreviewPageGump(state.Caller, state.RendererToEdit);

				state.EditorInstance.Send();
				state.ElementListGump.Send();
				state.PreviewGump.Send();
			}
			catch (Exception e)
			{
				Console.WriteLine("An exception was caught while trying to edit Compendium page.");
				Console.WriteLine(e);
			}
		}
Exemple #2
0
		public virtual void onHyperlinkClick(GumpButton button, int param)
		{
			if (button != null)
			{
				try
				{
					var linkName = m_hyperlinkRegistry.First(element => element.Value == param).Key;

					if (Compendium.g_CompendiumRenderers.ContainsKey(linkName))
					{
						var gump = new CompendiumPageGump(m_caller, Compendium.g_CompendiumRenderers[linkName]);
						gump.Send();
					}
				}
				catch (Exception e)
				{
					Console.WriteLine("Bad CompendiumPageGump link");
					Console.WriteLine(e);
					Refresh();
				}
			}
			//lookup the hyperlink from the param and open the gump
		}
Exemple #3
0
		public void onSaveButtonClick(GumpButton entry, int param)
		{
			if (!m_displayErrorMessage && !string.IsNullOrEmpty(m_gumpName) && !string.IsNullOrWhiteSpace(m_gumpName))
			{
				m_state.RendererToEdit.Name = m_gumpName;

				m_state.RendererToEdit.Serialize();

				if (Compendium.g_CompendiumRenderers.ContainsKey(m_state.RendererToEdit.Name))
				{
					Compendium.g_CompendiumRenderers[m_state.RendererToEdit.Name] = m_state.RendererToEdit;
				}
				else
				{
					Compendium.g_CompendiumRenderers.Add(m_state.RendererToEdit.Name, m_state.RendererToEdit);
				}

				m_state.Refresh();
			}
			else
			{
				Refresh();
			}
		}
		public virtual void onAddElementButtonClick(GumpButton button, int param)
		{
			if (button != null)
			{
				var instance = g_registeredElements.Values.First(registeredKvp => registeredKvp.Index == param);
				var element = instance.Method();
				element.Z = EditorState.RendererToEdit.Elements.Count;
				EditorState.RendererToEdit.Elements.Add(element);
				EditorState.RendererToEdit.SelectedElement = element;
				EditorState.SelectedElement = element;
				EditorState.ElementListGump.setPageBySelectedElement(element);
			}

			EditorState.Refresh();
		}
Exemple #5
0
		public void onCancelButtonClick(GumpButton entry, int param)
		{
			//m_state.Refresh();
		}
		public void onOpenGridButtonClick(GumpButton button, object param)
		{
			EditorState.RendererToEdit.ShowEditorGrid = !EditorState.RendererToEdit.ShowEditorGrid;
			EditorState.Refresh();
		}
Exemple #7
0
 protected virtual void NextPage(GumpButton entry)
 {
     NextPage(true);
 }
Exemple #8
0
        internal RunebookEntry(Runebook owner, GumpButton recall, GumpButton gate, GumpButton sacred, GumpButton scroll, GumpButton def, GumpButton drop, string location, string name, int color)
        {
            _owner   = owner;
            _recall  = recall;
            _gate    = gate;
            _sacred  = sacred;
            _scroll  = scroll;
            _default = def;
            _drop    = drop;
            Name     = name;
            Location = location;
            Map      = Map.Internal;
            switch (color)
            {
            case 1102:
                Map = Map.Malas;
                break;

            case 81:
                Map = Map.Felucca;
                break;

            case 10:
                Map = Map.Trammel;
                break;

            case 1154:
                Map = Map.Tokuno;
                break;

            case 0:
                Map = Map.TerMur;
                break;
            }
            Position = Geometry.CoordsToPoint(Location, Map);
        }
		public void onNavigateButtonClick(GumpButton button, NavButtonDirection dir)
		{
			if (EditorState == null)
			{
				return;
			}

			if (button != null && EditorState.SelectedElement != null)
			{
				switch (dir)
				{
					case NavButtonDirection.Up:
						EditorState.SelectedElement.Y--;
						break;
					case NavButtonDirection.UpUp:
						EditorState.SelectedElement.Y -= 5;
						break;
					case NavButtonDirection.Right:
						EditorState.SelectedElement.X++;
						break;
					case NavButtonDirection.RightRight:
						EditorState.SelectedElement.X += 5;
						break;
					case NavButtonDirection.Down:
						EditorState.SelectedElement.Y++;
						break;
					case NavButtonDirection.DownDown:
						EditorState.SelectedElement.Y += 5;
						break;
					case NavButtonDirection.Left:
						EditorState.SelectedElement.X--;
						break;
					case NavButtonDirection.LeftLeft:
						EditorState.SelectedElement.X -= 5;
						break;
				}
			}

			EditorState.Refresh();
		}
 protected virtual bool CanDisplay(GumpButton entry)
 {
     return(entry != null);
 }
Exemple #11
0
 protected virtual void OnAddEntryConfirm(GumpButton b, string text)
 {
 }
 protected virtual void OnSelectPoint(GumpButton b)
 {
     Value = new Point(b.X, b.Y);
 }
Exemple #13
0
 private void OnMyProfile(GumpButton button)
 {
     Send(new TrashCollectionProfileGump(User, TrashCollection.EnsureProfile(User), Hide(true), UseConfirmDialog));
 }
Exemple #14
0
 protected virtual void MainButtonHandler(GumpButton b)
 {
     Refresh(true);
 }
Exemple #15
0
        protected virtual void ToggleView(GumpButton b)
        {
            CompactView = !CompactView;

            Refresh(true);
        }
 protected virtual void ShowHelp(GumpButton button)
 {
     Send(new NoticeDialogGump(User, this, title: "Help", html: HelpText));
 }
Exemple #17
0
 internal RunebookEntry(Runebook owner, GumpButton recall, GumpButton gate, GumpButton sacred, GumpButton scroll, GumpButton def, GumpButton drop, string name)
 {
     _owner   = owner;
     _recall  = recall;
     _gate    = gate;
     _sacred  = sacred;
     _scroll  = scroll;
     _default = def;
     _drop    = drop;
     Name     = name;
 }
Exemple #18
0
		public void onApplyPropertiesButtonClick(GumpButton button)
		{
			EditorState.Refresh();
		}
        private void IncreaseInc(GumpButton b)
        {
            StatInc = Math.Min(10, StatInc + 1);

            Refresh(true);
        }
Exemple #20
0
		public void onPropertyPrevPageButtonClick(GumpButton button)
		{
			EditorState.PropertiesCurrentPageNumber--;
			EditorState.Refresh();
		}
Exemple #21
0
		protected override void OnCancel(GumpButton button)
		{
			Confirmed = false;
			base.OnCancel(button);
		}
        private void DecreaseInc(GumpButton b)
        {
            StatInc = Math.Max(1, StatInc - 1);

            Refresh(true);
        }
Exemple #23
0
 protected override void OnCancel(GumpButton button)
 {
 }
Exemple #24
0
 protected virtual void PreviousPage(GumpButton entry)
 {
     PreviousPage(true);
 }
Exemple #25
0
 protected void OnBack(GumpButton b)
 {
     Close();
 }
Exemple #26
0
		protected override void OnAccept(GumpButton button)
		{
			Confirmed = true;
			base.OnAccept(button);
		}
Exemple #27
0
        public bool Parse()
        {
            if (!Close() || !Open())
            {
                return(false);
            }

            var g = Gump.GetGump(GumpType);

            UpdateLocalizedProperties();

            int scrolloffset  = Configuration.ScrollOffset;
            int dropoffset    = Configuration.DropOffset;
            int defaultoffset = Configuration.DefaultOffset;
            int recalloffset  = Configuration.RecallOffset;
            int gateoffset    = Configuration.GateOffset;
            int sacredoffset  = Configuration.SacredOffset;
            int jumper        = Configuration.Jumper;

            dynamic min = string.Empty;
            dynamic max = string.Empty;

            if (g.HTMLTexts.Count > 0)
            {
                min = g.HTMLTexts[0].Text;
            }
            if (g.HTMLTexts.Count > 1)
            {
                max = g.HTMLTexts[1].Text;
            }

            int imin;

            if (!int.TryParse(min, out imin))
            {
                imin = -1;
            }
            int imax;

            if (!int.TryParse(max, out imax))
            {
                imax = -1;
            }

            Uses = new Range(imin, imax);
            if (Shard == "OSI")
            {
                int eamt = 0;
                for (var i = 0; i < 15; i++)
                {
                    if (g.Buttons.Any(
                            e =>
                            e.PacketValue.Equals(defaultoffset + (i)) && e.Graphic.Released.Equals(2361) &&
                            e.Graphic.Pressed.Equals(2361)))
                    {
                        eamt++;
                    }
                }

                var namepos = (eamt);

                var defaultbtn = g.Buttons.First(e => e.Graphic.Released.Equals(2361) && e.Graphic.Pressed.Equals(2361));
                if (defaultbtn != null)
                {
                    var value = ((defaultbtn.PacketValue - defaultoffset) / jumper) + 1;
                    DefaultRune = value;
                }

                var rButton = g.Buttons.First(e => e.Graphic.Released.Equals(2472) || e.Graphic.Pressed.Equals(2473));
                RenameButton = rButton;

                for (var i = 0; i < 15; i++)
                {
                    var valid =
                        g.Buttons.Any(
                            e =>
                            e.PacketValue.Equals(defaultoffset + (i)) && e.Graphic.Released.Equals(2361) &&
                            e.Graphic.Pressed.Equals(2361));

                    if (!valid)
                    {
                        continue;
                    }
                    var recallButton  = g.Buttons.First(e => e.PacketValue.Equals(recalloffset + (i)));
                    var gateButton    = g.Buttons.First(e => e.PacketValue.Equals(gateoffset + (i)));
                    var sacredButton  = g.Buttons.First(e => e.PacketValue.Equals(sacredoffset + (i)));
                    var dropButton    = g.Buttons.First(e => e.PacketValue.Equals(dropoffset + (i)));
                    var scrollButton  = g.Buttons.First(e => e.PacketValue.Equals(scrolloffset + (i)));
                    var defaultButton = g.Buttons.First(e => e.PacketValue.Equals(defaultoffset + (i)));
                    var name          = g.Labels[namepos].Text;

                    Entries.Add(new RunebookEntry(this, recallButton, gateButton, sacredButton, scrollButton,
                                                  defaultButton, dropButton, name));
                }
            }
            else
            {
                int eamt = 0;
                for (var i = 0; i < 15; i++)
                {
                    if (g.Buttons.Any(e => e.PacketValue.Equals(recalloffset + (i * jumper)) &&
                                      e.Graphic.Released.Equals(2103) &&
                                      e.Graphic.Pressed.Equals(2104)))
                    {
                        eamt++;
                    }
                }

                var namepos = (eamt * 2);

                var defaultbtn = g.Buttons.First(e => e.Graphic.Released.Equals(2361) && e.Graphic.Pressed.Equals(2361));
                if (defaultbtn != null)
                {
                    var value = ((defaultbtn.PacketValue - defaultoffset) / jumper) + 1;
                    DefaultRune = value;
                }

                var rButton = g.Buttons.First(e => e.Graphic.Released.Equals(2472) || e.Graphic.Pressed.Equals(2473));
                RenameButton = rButton;

                for (var i = 0; i < 15; i++)
                {
                    var valid =
                        g.Buttons.Any(
                            e =>
                            e.PacketValue.Equals(recalloffset + (i * jumper)) && e.Graphic.Released.Equals(2103) &&
                            e.Graphic.Pressed.Equals(2104));

                    if (!valid)
                    {
                        continue;
                    }
                    var recallButton  = g.Buttons.First(e => e.PacketValue.Equals(recalloffset + (i * jumper)));
                    var gateButton    = g.Buttons.First(e => e.PacketValue.Equals(gateoffset + (i * jumper)));
                    var sacredButton  = g.Buttons.First(e => e.PacketValue.Equals(sacredoffset + (i * jumper)));
                    var dropButton    = g.Buttons.First(e => e.PacketValue.Equals(dropoffset + (i * jumper)));
                    var scrollButton  = g.Buttons.First(e => e.PacketValue.Equals(scrolloffset + (i * jumper)));
                    var defaultButton = g.Buttons.First(e => e.PacketValue.Equals(defaultoffset + (i * jumper)));

                    var a     = g.Labels[i + (i * 1)].Text;
                    var b     = g.Labels[i + (i * 1) + 1].Text;
                    var full  = a + " " + b;
                    var name  = g.Labels[namepos + i].Text;
                    var color = g.Labels[namepos + i].Color;

                    Entries.Add(new RunebookEntry(this, recallButton, gateButton, sacredButton, scrollButton,
                                                  defaultButton, dropButton, full, name, color));
                }
            }

            return(true);
        }
Exemple #28
0
        protected override void SelectEntry(GumpButton button, BaseDoor entry)
        {
            base.SelectEntry(button, entry);

            if (button == null || entry == null || entry.Deleted)
            {
                return;
            }

            if (User.AccessLevel < AutoPvP.Access)
            {
                Refresh(true);
                return;
            }

            var list = new MenuGumpOptions();

            list.AppendEntry(
                new ListGumpEntry(
                    "Remove",
                    b =>
            {
                Battle.Doors.Remove(entry);
                Refresh(true);
            },
                    HighlightHue));

            if (entry.Open)
            {
                list.AppendEntry(
                    new ListGumpEntry(
                        "Close",
                        b =>
                {
                    if (entry.Deleted || !entry.Open)
                    {
                        return;
                    }

                    entry.Open = false;

                    if (entry.UseChainedFunctionality)
                    {
                        entry.GetChain()
                        .ForEach(
                            chained =>
                        {
                            if (chained != null && !chained.Deleted && chained.Open)
                            {
                                chained.Open = false;
                            }
                        });
                    }

                    Refresh(true);
                },
                        ErrorHue));
            }
            else
            {
                list.AppendEntry(
                    new ListGumpEntry(
                        "Open",
                        b =>
                {
                    if (entry.Deleted || entry.Open)
                    {
                        return;
                    }

                    entry.Open = true;

                    if (entry.UseChainedFunctionality)
                    {
                        entry.GetChain()
                        .ForEach(
                            chained =>
                        {
                            if (chained != null && !chained.Deleted && !chained.Open)
                            {
                                chained.Open = true;
                            }
                        });
                    }

                    Refresh(true);
                },
                        HighlightHue));
            }

            if (entry.Open)
            {
                list.AppendEntry(
                    new ListGumpEntry(
                        "Lock",
                        b =>
                {
                    if (entry.Deleted || entry.Locked)
                    {
                        return;
                    }

                    entry.Locked = true;

                    if (entry.UseChainedFunctionality)
                    {
                        entry.GetChain()
                        .ForEach(
                            chained =>
                        {
                            if (chained != null && !chained.Deleted && !chained.Locked)
                            {
                                chained.Locked = true;
                            }
                        });
                    }

                    Refresh(true);
                },
                        ErrorHue));
            }
            else
            {
                list.AppendEntry(
                    new ListGumpEntry(
                        "Unlock",
                        b =>
                {
                    if (entry.Deleted || !entry.Locked)
                    {
                        return;
                    }

                    entry.Locked = false;

                    if (entry.UseChainedFunctionality)
                    {
                        entry.GetChain()
                        .ForEach(
                            chained =>
                        {
                            if (chained != null && !chained.Deleted && chained.Locked)
                            {
                                chained.Locked = false;
                            }
                        });
                    }

                    Refresh(true);
                },
                        HighlightHue));
            }

            Send(new MenuGump(User, Refresh(), list, button));
        }
Exemple #29
0
        protected override void SelectEntry(GumpButton button, IVoteSite entry)
        {
            base.SelectEntry(button, entry);

            MenuGumpOptions opts = new MenuGumpOptions();

            if (User.AccessLevel >= Voting.Access)
            {
                opts.AppendEntry(
                    new ListGumpEntry(
                        "Options",
                        b =>
                {
                    Refresh();

                    PropertiesGump pg = new PropertiesGump(User, Selected)
                    {
                        X = b.X,
                        Y = b.Y
                    };
                    User.SendGump(pg);
                },
                        HighlightHue));

                opts.AppendEntry(
                    new ListGumpEntry(
                        entry.Enabled ? "Disable" : "Enable",
                        b1 =>
                {
                    entry.Enabled = !entry.Enabled;
                    Refresh(true);
                },
                        entry.Enabled ? ErrorHue : HighlightHue));

                opts.AppendEntry(new ListGumpEntry("Delete", DeleteSite, ErrorHue));

                opts.AppendEntry(
                    new ListGumpEntry(
                        "Add To Stone",
                        b =>
                {
                    Minimize(b);
                    User.SendMessage(0x55, "Select a compatible Voting Stone...");
                    ItemSelectTarget <VotingStone> .Begin(
                        User,
                        (u, s) =>
                    {
                        if (s != null && !s.Deleted)
                        {
                            s.SiteUID = entry.UID;
                            User.SendMessage(0x55, "The Voting Stone site was changed to {0}.", entry.Name);
                        }
                        else
                        {
                            User.SendMessage(0x22, "That is not a compatible Voting Stone.");
                        }

                        Maximize();
                    },
                        u => Maximize());
                }));

                opts.AppendEntry(
                    new ListGumpEntry(
                        "Create Stone",
                        b => Send(
                            new ConfirmDialogGump(User, this)
                {
                    Title = "Create Voting Stone?",
                    Html  =
                        "You didn't select a compatible Voting Stone.\n" + " do you want to create one in your pack?\n" +
                        "Click OK to create a new Voting Stone for this site.",
                    AcceptHandler = ab =>
                    {
                        var stone = new VotingStone(entry.UID);

                        if (User.AddToBackpack(stone))
                        {
                            User.SendMessage(0x22, "The new Voting Stone was placed in your pack.");
                        }
                        else
                        {
                            stone.MoveToWorld(User.Location, User.Map);
                            User.SendMessage(0x22, "The new Voting Stone was placed at your feet.");
                        }
                    }
                })));

                opts.AppendEntry(new ListGumpEntry("Cancel", b => { }));
            }

            Send(new MenuGump(User, Refresh(), opts, button));
        }
Exemple #30
0
 protected override void OnAddEntryConfirm(GumpButton b, string text)
 {
     SkillRestrictions.SetRestricted(text, true);
     Refresh(true);
 }
 protected virtual void OnMyProfile(GumpButton button)
 {
     new PvPProfileUI(User, AutoPvP.EnsureProfile(User as PlayerMobile), Hide(true)).Send();
 }
		public void onGridButtonButtonClick(GumpButton button, int param)
		{
			if (button != null && SelectedElement != null)
			{
				var x = (param / NUMBER_OF_GRID_ROWS) * GRID_BUTTON_WIDTH;
				var y = (param % NUMBER_OF_GRID_ROWS) * GRID_BUTTON_HEIGHT;

				SelectedElement.X = x;
				SelectedElement.Y = y;
				ShowEditorGrid = false;
			}

			State.Refresh();
		}
Exemple #33
0
        protected override void CompileOptions(ToolbarGump toolbar, GumpButton clicked, Point loc, MenuGumpOptions opts)
        {
            if (toolbar == null)
            {
                return;
            }

            base.CompileOptions(toolbar, clicked, loc, opts);

            PlayerMobile user = toolbar.State.User;

            if (!CanEdit && user.AccessLevel < Toolbars.Access)
            {
                return;
            }

            opts.AppendEntry(
                new ListGumpEntry(
                    "Set Type",
                    b =>
            {
                MenuGumpOptions tOpts = new MenuGumpOptions();

                if (TextType != MessageType.Regular)
                {
                    tOpts.AppendEntry(
                        new ListGumpEntry(
                            "Regular",
                            tb =>
                    {
                        TextType = MessageType.Regular;
                        toolbar.Refresh(true);
                    }));
                }

                if (TextType != MessageType.Whisper)
                {
                    tOpts.AppendEntry(
                        new ListGumpEntry(
                            "Whisper",
                            tb =>
                    {
                        TextType = MessageType.Whisper;
                        toolbar.Refresh(true);
                    }));
                }

                if (TextType != MessageType.Yell)
                {
                    tOpts.AppendEntry(
                        new ListGumpEntry(
                            "Yell",
                            tb =>
                    {
                        TextType = MessageType.Yell;
                        toolbar.Refresh(true);
                    }));
                }

                SuperGump.Send(new MenuGump(user, clicked.Parent, tOpts, clicked));
            },
                    toolbar.HighlightHue));

            opts.Replace(
                "Set Value",
                new ListGumpEntry(
                    "Set Phrase",
                    b =>
                    SuperGump.Send(
                        new InputDialogGump(
                            user,
                            toolbar,
                            title: "Set Phrase",
                            html: "Set the text for this Phrase entry.",
                            input: Value,
                            callback: (cb, text) =>
            {
                Value = text;
                toolbar.Refresh(true);
            })),
                    toolbar.HighlightHue));
        }
Exemple #34
0
        public override sealed void OnResponse(NetState sender, RelayInfo info)
        {
            if (IsDisposed)
            {
                return;
            }

            if (Switches.Count > 128)
            {
                Parallel.ForEach(Switches.Keys, e => HandleSwitch(e, info.IsSwitched(e.SwitchID)));
            }
            else
            {
                Switches.Keys.ForEach(e => HandleSwitch(e, info.IsSwitched(e.SwitchID)));
            }

            if (Radios.Count > 128)
            {
                Parallel.ForEach(Radios.Keys, e => HandleRadio(e, info.IsSwitched(e.SwitchID)));
            }
            else
            {
                Radios.Keys.ForEach(e => HandleRadio(e, info.IsSwitched(e.SwitchID)));
            }

            if (TextInputs.Count > 128)
            {
                Parallel.ForEach(
                    TextInputs.Keys,
                    e =>
                {
                    var r = info.GetTextEntry(e.EntryID);
                    HandleTextInput(e, r != null ? r.Text : String.Empty);
                });
            }
            else
            {
                TextInputs.Keys.ForEach(
                    e =>
                {
                    var r = info.GetTextEntry(e.EntryID);
                    HandleTextInput(e, r != null ? r.Text : String.Empty);
                });
            }

            if (LimitedTextInputs.Count > 128)
            {
                Parallel.ForEach(
                    LimitedTextInputs.Keys,
                    e =>
                {
                    var r = info.GetTextEntry(e.EntryID);
                    HandleLimitedTextInput(e, r != null ? r.Text : String.Empty);
                });
            }
            else
            {
                LimitedTextInputs.Keys.ForEach(
                    e =>
                {
                    var r = info.GetTextEntry(e.EntryID);
                    HandleLimitedTextInput(e, r != null ? r.Text : String.Empty);
                });
            }

            GumpButton          button1 = GetButtonEntry(info.ButtonID);
            GumpImageTileButton button2 = GetTileButtonEntry(info.ButtonID);

            if (button1 == null && button2 == null)
            {
                Close();
            }
            else
            {
                Hide();

                if (button1 != null)
                {
                    HandleButtonClick(button1);
                }

                if (button2 != null)
                {
                    HandleTileButtonClick(button2);
                }
            }

            base.OnResponse(sender, info);
        }
Exemple #35
0
        protected override void OnAccept(GumpButton button)
        {
            base.OnAccept(button);

            Battle.Enqueue(User);
        }
Exemple #36
0
		public void onBookEditTextButtonClick(GumpButton button, int param)
		{
			if (button != null)
			{
				var book = new XmlTextEntryBook(
					0,
					String.Empty,
					String.Empty,
					20,
					true,
					XmlTextEntryBookCallback,
					new object[] {param});

				var properties = EditorState.SelectedElement.GetElementPropertiesSnapshot();
				var bookText = properties[param].Text;
				// fill the contents of the book with the current text entry data
				book.FillTextEntryBook(bookText);

				// put the book at the location of the player so that it can be opened, but drop it below visible range
				book.Visible = false;
				book.Movable = false;
				book.MoveToWorld(
					new Point3D(EditorState.Caller.Location.X, EditorState.Caller.Location.Y, EditorState.Caller.Location.Z - 100),
					EditorState.Caller.Map);

				book.OnDoubleClick(EditorState.Caller);
			}

			EditorState.Refresh();
		}
Exemple #37
0
        protected override void OnCancel(GumpButton button)
        {
            base.OnCancel(button);

            User.SendMessage(54, "You decide not to join the queue.");
        }
Exemple #38
0
		public void onSaveAsButtonClick(GumpButton button)
		{
			EditorState.Refresh();
			Timer.DelayCall(ShowSaveAs, EditorState);
		}
Exemple #39
0
        protected override void OnCancel(GumpButton button)
        {
            InputText = String.Empty;

            base.OnCancel(button);
        }
Exemple #40
0
		public void onElementPrevPageButtonClick(GumpButton button)
		{
			EditorState.ElementToolbarPageNumber--;
			EditorState.Refresh();
		}
Exemple #41
0
 protected virtual void OnConfirmClearProfile(GumpButton button)
 {
     Profile.Clear();
     Refresh(true);
 }
Exemple #42
0
		public void onSavePageButtonClick(GumpButton button)
		{
			EditorState.RendererToEdit.Serialize();

			if (Compendium.g_CompendiumRenderers.ContainsKey(EditorState.RendererToEdit.Name))
			{
				Compendium.g_CompendiumRenderers[EditorState.RendererToEdit.Name] = EditorState.RendererToEdit;
			}
			else
			{
				Compendium.g_CompendiumRenderers.Add(EditorState.RendererToEdit.Name, EditorState.RendererToEdit);
			}

			EditorState.Refresh();
		}
 protected virtual void OnDoubleClick(GumpButton entry)
 {
 }
Exemple #44
0
		public void onGumpCloseButtonClick(GumpButton button)
		{
			if (EditorState.Caller.HasGump(typeof(CompendiumPreviewPageGump)))
			{
				EditorState.Caller.CloseGump(typeof(CompendiumPreviewPageGump));
			}

			if (EditorState.Caller.HasGump(typeof(CompendiumPageEditor)))
			{
				EditorState.Caller.CloseGump(typeof(CompendiumPageEditor));
			}

			if (EditorState.Caller.HasGump(typeof(ElementListGump)))
			{
				EditorState.Caller.CloseGump(typeof(ElementListGump));
			}
		}
Exemple #45
0
        protected override void SelectEntry(GumpButton button, PvPBattle entry)
        {
            base.SelectEntry(button, entry);

            if (button == null || entry == null || entry.Deleted)
            {
                return;
            }

            var list = new MenuGumpOptions();

            list.AppendEntry(
                new ListGumpEntry(
                    "Overview",
                    b => Send(new PvPBattleOverviewGump(User, Hide(true), entry, UseConfirmDialog)),
                    TextHue));

            if (User.AccessLevel >= AutoPvP.Access)
            {
                if (entry.State == PvPBattleState.Internal)
                {
                    if (Selected.Validate(User))
                    {
                        list.AppendEntry(
                            new ListGumpEntry(
                                "Publish",
                                b =>
                        {
                            Selected.State = PvPBattleState.Queueing;
                            Refresh(true);
                        },
                                HighlightHue));
                    }
                }
                else
                {
                    list.AppendEntry(
                        new ListGumpEntry(
                            "Internalize",
                            b =>
                    {
                        Selected.State = PvPBattleState.Internal;
                        Refresh(true);
                    },
                            HighlightHue));

                    if (!Selected.Hidden)
                    {
                        if (Selected.Validate(User))
                        {
                            list.AppendEntry(
                                new ListGumpEntry(
                                    "Hide",
                                    b =>
                            {
                                Selected.Hidden = true;
                                Refresh(true);
                            },
                                    HighlightHue));
                        }
                    }
                    else
                    {
                        list.AppendEntry(
                            new ListGumpEntry(
                                "Unhide",
                                b =>
                        {
                            Selected.Hidden = false;
                            Refresh(true);
                        },
                                HighlightHue));
                    }
                }

                list.AppendEntry(
                    new ListGumpEntry(
                        "Delete",
                        b =>
                {
                    if (UseConfirmDialog)
                    {
                        Send(
                            new ConfirmDialogGump(
                                User,
                                this,
                                title: "Delete Battle?",
                                html:
                                "All data associated with this battle will be deleted.\nThis action can not be reversed!\nDo you want to continue?",
                                onAccept: OnConfirmDeleteBattle));
                    }
                    else
                    {
                        OnConfirmDeleteBattle(b);
                    }
                },
                        HighlightHue));
            }

            list.AppendEntry(
                new ListGumpEntry(
                    "View Teams",
                    b => Send(new PvPTeamListGump(User, entry, Hide(true))),
                    (User.AccessLevel >= AutoPvP.Access) ? HighlightHue : TextHue));

            if (User is PlayerMobile)
            {
                var user = (PlayerMobile)User;

                if (entry.IsParticipant(user))
                {
                    list.AppendEntry(new ListGumpEntry("Quit & Leave", b => entry.Eject(user, true)));
                }
                else
                {
                    if (entry.IsQueued(user))
                    {
                        list.AppendEntry(new ListGumpEntry("Leave Queue", b => entry.Dequeue(user)));
                    }
                    else if (entry.CanQueue(user))
                    {
                        list.AppendEntry(new ListGumpEntry("Join Queue", b => entry.Enqueue(user)));
                    }

                    if (entry.IsSpectator(user))
                    {
                        list.AppendEntry(new ListGumpEntry("Leave Spectators", b => entry.RemoveSpectator(user, true)));
                    }
                    else if (entry.CanSpectate(user))
                    {
                        list.AppendEntry(new ListGumpEntry("Join Spectators", b => entry.AddSpectator(user, true)));
                    }
                }
            }

            Send(new MenuGump(User, Refresh(), list, button));
        }