X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fmenu%2Fxonotic%2Fdialog_singleplayer.c;h=6e13f65b818ea6cb348a1d47a744e43072d33299;hb=490873e0e642771efcb3f48ea43236ac0370cacd;hp=7364e24524b5523f3e2f3d558340f46f900a056e;hpb=f2a79cba0897fb6f6cb7ebeecb596b5547af3ddd;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/menu/xonotic/dialog_singleplayer.c b/qcsrc/menu/xonotic/dialog_singleplayer.c index 7364e2452..6e13f65b8 100644 --- a/qcsrc/menu/xonotic/dialog_singleplayer.c +++ b/qcsrc/menu/xonotic/dialog_singleplayer.c @@ -14,7 +14,7 @@ ENDCLASS(XonoticSingleplayerDialog) void InstantAction_LoadMap(entity btn, entity dummy) { - float pmin, pmax, pstep; + float pmin = 2, pmax = 16, pstep = 1; cvar_set("timelimit_override", "10"); cvar_set("g_lms_lives_override", "9"); @@ -51,7 +51,7 @@ void InstantAction_LoadMap(entity btn, entity dummy) else // somehow distribute the remaining 5% { float r; - r = floor(random() * 5); + r = floor(random() * 4); switch(r) { default: @@ -63,35 +63,24 @@ void InstantAction_LoadMap(entity btn, entity dummy) cvar_set("timelimit_override", "-1"); break; case 1: - MapInfo_SwitchGameType(MAPINFO_TYPE_CA); - pmin = 2; - pmax = 8; - pstep = 2; - break; - case 2: MapInfo_SwitchGameType(MAPINFO_TYPE_DOMINATION); pmin = 2; pmax = 8; pstep = 2; break; - case 3: + case 2: MapInfo_SwitchGameType(MAPINFO_TYPE_ONSLAUGHT); pmin = 6; pmax = 16; pstep = 2; break; - case 4: - MapInfo_SwitchGameType(MAPINFO_TYPE_FREEZETAG); - pmin = 4; - pmax = 10; - pstep = 2; - break; - case 5: + case 3: MapInfo_SwitchGameType(MAPINFO_TYPE_ASSAULT); pmin = 4; pmax = 16; pstep = 2; break; + // CA, Freezetag: bot AI does not work, add them once it does } } @@ -105,7 +94,7 @@ void InstantAction_LoadMap(entity btn, entity dummy) s = MapInfo_BSPName_ByID(m); } while(!fexists(sprintf("maps/%s.waypoints", s))); - MapInfo_LoadMap(s); + MapInfo_LoadMap(s, 1); // configure bots float p; @@ -134,7 +123,7 @@ void XonoticSingleplayerDialog_fill(entity me) 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 - 5, me.columns, me.campaignBox = makeXonoticCampaignList()); + me.TD(me, me.rows - 6, me.columns, me.campaignBox = makeXonoticCampaignList()); btnPrev.onClick = MultiCampaign_Prev; btnPrev.onClickEntity = me.campaignBox; btnNext.onClick = MultiCampaign_Next; @@ -144,7 +133,12 @@ void XonoticSingleplayerDialog_fill(entity me) me.campaignBox.labelTitle = lblTitle; me.campaignBox.campaignGo(me.campaignBox, 0); - me.gotoRC(me, me.rows - 1, 0); + me.gotoRC(me, me.rows - 2, 0); + me.TD(me, 1, 2, e = makeXonoticTextLabel(0.5, _("Campaign Difficulty:"))); + me.TD(me, 1, 1, e = makeXonoticRadioButton(1, "g_campaign_skill", "-2", ZCTX(_("CSKL^Easy")))); + me.TD(me, 1, 1, e = makeXonoticRadioButton(1, "g_campaign_skill", "-1", ZCTX(_("CSKL^Medium")))); + me.TD(me, 1, 1, e = makeXonoticRadioButton(1, "g_campaign_skill", "0", ZCTX(_("CSKL^Hard")))); + me.TR(me); me.TD(me, 1, me.columns, e = makeXonoticButton(_("Start Singleplayer!"), '0 0 0')); e.onClick = CampaignList_LoadMap; e.onClickEntity = me.campaignBox;