]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/menu/xonotic/dialog_singleplayer.qc
Hide null and hidden entries from the guide menu
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / dialog_singleplayer.qc
index 5a59dccde345da95619841ffdb4b81ce088cfdf6..ded656605c58829cdc79be4ddc2c928e8bc3e1e4 100644 (file)
@@ -2,6 +2,8 @@
 
 #include <common/gamemodes/_mod.qh>
 #include "bigbutton.qh"
+#include "commandbutton.qh"
+#include "leavematchbutton.qh"
 #include "radiobutton.qh"
 #include "textlabel.qh"
 #include "campaign.qh"
@@ -120,6 +122,8 @@ void InstantAction_LoadMap(entity btn, entity dummy)
        localcmd("disconnect\n");
        localcmd("g_campaign 0\n");
 
+       makeServerSingleplayer();
+
        MapInfo_LoadMap(s, 1);
 
        // configure bots
@@ -136,18 +140,6 @@ void InstantAction_LoadMap(entity btn, entity dummy)
        cvar_set("lastlevel", "1");
 }
 
-.entity quitGameButton;
-void XonoticSingleplayerDialog_draw(entity me)
-{
-       entity e = me.quitGameButton;
-       e.disabled = !(gamestatus & (GAME_ISSERVER | GAME_CONNECTED));
-       if(cvar("g_campaign"))
-               e.setText(e, _("Quit campaign"));
-       else
-               e.setText(e, _("Quit current game"));
-       SUPER(XonoticSingleplayerDialog).draw(me);
-}
-
 void XonoticSingleplayerDialog_fill(entity me)
 {
        entity e, btnPrev, btnNext, lblTitle;
@@ -161,7 +153,7 @@ void XonoticSingleplayerDialog_fill(entity me)
        me.TR(me);
        me.TR(me);
                me.TD(me, 1, 1, btnPrev = makeXonoticButton("<<", '0 0 0'));
-               me.TD(me, 1, me.columns - 2, lblTitle = makeXonoticTextLabel(0.5, _("???")));
+               me.TD(me, 1, me.columns - 2, lblTitle = makeXonoticTextLabel(0.5, "???"));
                me.TD(me, 1, 1, btnNext = makeXonoticButton(">>", '0 0 0'));
        me.TR(me);
                me.TD(me, me.rows - 6, me.columns, me.campaignBox = makeXonoticCampaignList());
@@ -180,7 +172,7 @@ void XonoticSingleplayerDialog_fill(entity me)
                me.TD(me, 1, 1, e = makeXonoticRadioButton(1, "g_campaign_skill", "2", ZCTX(_("CSKL^Hard"))));
        me.TR(me);
                me.TDempty(me, me.columns * 1/13);
-               me.TD(me, 1, me.columns * 5/13, me.quitGameButton = makeXonoticCommandButton(string_null, '0 0 0', QUITGAME_CMD, 0));
+               me.TD(me, 1, me.columns * 5/13, e = makeXonoticLeaveMatchButton('0 0 0', 0));
                me.TDempty(me, me.columns * 1/13);
                me.TD(me, 1, me.columns * 5/13, e = makeXonoticButton(_("Play campaign!"), '0 0 0'));
                        e.onClick = CampaignList_LoadMap;