]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/menu/xonotic/dialog_multiplayer_create.qc
Merge branch 'master' into terencehill/menu_quit_game
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / dialog_multiplayer_create.qc
index ba09c311e4bf0e3fbf99a69898bf91b7fb70e638..a343c546c28827ded6d7f5888db2e2d535f3a6eb 100644 (file)
@@ -13,6 +13,8 @@
 #include "slider.qh"
 #include "mainwindow.qh"
 #include "button.qh"
+#include "commandbutton.qh"
+#include "leavematchbutton.qh"
 #include "inputbox.qh"
 
 void GameType_ConfigureSliders(entity me, string pLabel, float pMin, float pMax, float pStep, string pCvar, string tCvar, string pTooltip)
@@ -119,11 +121,13 @@ void XonoticServerCreateTab_fill(entity me)
                        _("The maximum amount of players or bots that can be connected to your server at once")));
        me.TR(me);
                me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Number of bots:")));
+                       setDependent(e, "g_campaign", 0, 0);
                me.TD(me, 1, 2, e = makeXonoticSlider_T(0, 9, 1, "bot_number",
                        _("Amount of bots on your server")));
+                       setDependent(e, "g_campaign", 0, 0);
        me.TR(me);
                me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Bot skill:")));
-                       setDependent(e, "bot_number", 0, -1);
+                       setDependentAND(e, "bot_number", 0, -1, "g_campaign", 0, 0);
                me.TD(me, 1, 2, e = makeXonoticTextSlider_T("skill",
                        _("Specify how experienced the bots will be")));
                        e.addValue(e, _("Botlike"), "0");
@@ -138,13 +142,14 @@ void XonoticServerCreateTab_fill(entity me)
                        e.addValue(e, _("Unhuman"), "9");
                        e.addValue(e, _("Godlike"), "10");
                        e.configureXonoticTextSliderValues(e);
-                       setDependent(e, "bot_number", 0, -1);
+                       setDependentAND(e, "bot_number", 0, -1, "g_campaign", 0, 0);
 
        me.gotoRC(me, me.rows - 3.8, 0);
                me.TD(me, 1, 3, e0 = makeXonoticTextLabel(0.5, string_null));
                        e0.textEntity = main.mutatorsDialog;
                        e0.allowCut = 1;
                        //e0.allowWrap = 1;
+                       setDependent(e0, "g_campaign", 0, 0);
 
        // mapListBox is in the right column but the ref is needed for mutators dialog here
        me.mapListBox = makeXonoticMapList();
@@ -157,6 +162,7 @@ void XonoticServerCreateTab_fill(entity me)
                        e.onClick = DialogOpenButton_Click;
                        e.onClickEntity = main.mutatorsDialog;
                        main.mutatorsDialog.refilterEntity = me.mapListBox;
+                       setDependent(e, "g_campaign", 0, 0);
 
        // The right half begins here
 
@@ -200,10 +206,11 @@ void XonoticServerCreateTab_fill(entity me)
                        e.onClick = MapList_Remove_All;
                        e.onClickEntity = me.mapListBox;
 
-       // The big button at the bottom
-
+       // bottom row
        me.gotoRC(me, me.rows - 1, 0);
-               me.TD(me, 1, me.columns, e = makeXonoticButton(_("Start Multiplayer!"), '0 0 0'));
+               me.TDempty(me, me.columns * 1/12);
+               me.TD(me, 1, me.columns * 5/12, e = makeXonoticLeaveMatchButton('0 0 0', 0));
+               me.TD(me, 1, me.columns * 5/12, e = makeXonoticButton(_("Start multiplayer!"), '0 0 0'));
                        e.onClick = MapList_LoadMap;
                        e.onClickEntity = me.mapListBox;
                        me.mapListBox.startButton = e;