/// <summary>
        /// Adds the buttons (and other controls) to the screen in question.
        /// </summary>
        public override void InitGui()
        {
            UpdateCounter2 = 0;
            ControlList.Clear();
            sbyte byte0 = -16;

            ControlList.Add(new GuiButton(1, Width / 2 - 100, Height / 4 + 120 + byte0, StatCollector.TranslateToLocal("menu.returnToMenu")));

            if (Mc.IsMultiplayerWorld())
            {
                ((GuiButton)ControlList[0]).DisplayString = StatCollector.TranslateToLocal("menu.disconnect");
            }

            ControlList.Add(new GuiButton(4, Width / 2 - 100, Height / 4 + 24 + byte0, StatCollector.TranslateToLocal("menu.returnToGame")));
            ControlList.Add(new GuiButton(0, Width / 2 - 100, Height / 4 + 96 + byte0, StatCollector.TranslateToLocal("menu.options")));
            ControlList.Add(new GuiButton(5, Width / 2 - 100, Height / 4 + 48 + byte0, 98, 20, StatCollector.TranslateToLocal("gui.achievements")));
            ControlList.Add(new GuiButton(6, Width / 2 + 2, Height / 4 + 48 + byte0, 98, 20, StatCollector.TranslateToLocal("gui.stats")));
        }
        /// <summary>
        /// Fired when a control is clicked. This is the equivalent of ActionListener.actionPerformed(ActionEvent e).
        /// </summary>
        protected override void ActionPerformed(GuiButton par1GuiButton)
        {
            switch (par1GuiButton.Id)
            {
            case 2:
            case 3:
            default:
                break;

            case 0:
                Mc.DisplayGuiScreen(new GuiOptions(this, Mc.GameSettings));
                break;

            case 1:
                Mc.StatFileWriter.ReadStat(StatList.LeaveGameStat, 1);

                if (Mc.IsMultiplayerWorld())
                {
                    Mc.TheWorld.SendQuittingDisconnectingPacket();
                }

                Mc.ChangeWorld1(null);
                Mc.DisplayGuiScreen(new GuiMainMenu());
                break;

            case 4:
                Mc.DisplayGuiScreen(null);
                Mc.SetIngameFocus();
                break;

            case 5:
                Mc.DisplayGuiScreen(new GuiAchievements(Mc.StatFileWriter));
                break;

            case 6:
                Mc.DisplayGuiScreen(new GuiStats(this, Mc.StatFileWriter));
                break;
            }
        }
        /// <summary>
        /// Fired when a control is clicked. This is the equivalent of ActionListener.actionPerformed(ActionEvent e).
        /// </summary>
        protected override void ActionPerformed(GuiButton par1GuiButton)
        {
            switch (par1GuiButton.Id)
            {
            default:
                break;

            case 1:
                if (Mc.TheWorld.GetWorldInfo().IsHardcoreModeEnabled())
                {
                    string s = Mc.TheWorld.GetSaveHandler().GetSaveDirectoryName();
                    Mc.ExitToMainMenu("Deleting world");
                    ISaveFormat isaveformat = Mc.GetSaveLoader();
                    isaveformat.FlushCache();
                    isaveformat.DeleteWorldDirectory(s);
                    Mc.DisplayGuiScreen(new GuiMainMenu());
                }
                else
                {
                    Mc.ThePlayer.RespawnPlayer();
                    Mc.DisplayGuiScreen(null);
                }

                break;

            case 2:
                if (Mc.IsMultiplayerWorld())
                {
                    Mc.TheWorld.SendQuittingDisconnectingPacket();
                }

                Mc.ChangeWorld1(null);
                Mc.DisplayGuiScreen(new GuiMainMenu());
                break;
            }
        }