Xonotic QuakeC
The free, fast arena FPS with crisp movement and a wide array of weapons
ui_overkill.qc
Go to the documentation of this file.
1#include "ui_overkill.qh"
2
3#ifdef MENU_INCLUDE_OVERKILL
6
7entity makeXonoticMutatorOverkillTab()
8{
9 entity me = NEW(XonoticMutatorOverkillTab);
10 me.configureDialog(me);
11 return me;
12}
13
14void MutatorOverkill_CheckBox_saveCvars(entity me)
15{
17 if (cvar("g_overkill"))
18 {
19 if (cvar_string("g_weaponarena") != "0")
20 cvar_set("g_weaponarena", "0"); // weaponarena can't be enabled if Overkill is
21 if (cvar("g_melee_only"))
22 cvar_set("g_melee_only", "0");
23 if (cvar("g_nix"))
24 cvar_set("g_nix", "0");
25 }
26}
27
28void XonoticMutatorOverkillTab_fill(entity me)
29{
31 e.saveCvars = MutatorOverkill_CheckBox_saveCvars;
32
33 me.TR(me);
34 me.TD(me, 1, 4, e = makeXonoticCheckBox(0, "g_overkill_blaster_keepdamage", _("Keep Blaster damage")));
35 me.TR(me);
36 me.TD(me, 1, 4, e = makeXonoticCheckBox(0, "g_overkill_blaster_keepforce", _("Keep Blaster force")));
37
38 me.TR(me);
39 me.TR(me);
40 me.TD(me, 1, 4, e = makeXonoticTextLabel(0, _("Allow maps to spawn:")));
41 me.TR(me);
42 me.TDempty(me, 0.2);
43 me.TD(me, 1, (4 - 0.2) / 3, e = makeXonoticCheckBox(1, "g_overkill_filter_armormega", _("Mega armor")));
44 me.TD(me, 1, (4 - 0.2) / 3, e = makeXonoticCheckBox(1, "g_overkill_filter_healthmega", _("Mega health")));
45 me.TD(me, 1, (4 - 0.2) / 3, e = makeXonoticCheckBox(1, "g_overkill_filter_armorbig", _("Big armor")));
46
47 me.TR(me);
48 me.TR(me);
49 me.TD(me, 1, 4, e = makeXonoticCheckBox(0, "g_overkill_powerups_replace", _("Replace Strength and Shield with weapons")));
50 setDependentNOT(e, "g_powerups", 0);
51}
52
56
57METHOD(XonoticMutatorOverkillTab, describe, string(XonoticMutatorOverkillTab me))
58{
59 return sprintf(MENU_OVERKILL_DESCRIPTION, COLORED_NAME(WEP_BLASTER), COLORED_NAME(MUTATOR_dodging), COLORED_NAME(MUTATOR_nades));
60}
61METHOD(XonoticMutatorOverkillTab, canEnable, bool(XonoticMutatorOverkillTab me, bool is_already_enabled))
62{
63 bool can_enable = !cvar("g_instagib");
64 if (is_already_enabled)
65 return can_enable && cvar(me.message);
66 return can_enable;
67}
68#endif
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
#define COLORED_NAME(this)
Definition color.qh:189
void setDependentNOT(entity e, string theCvarName, float theCvarValue)
Definition util.qc:192
void cvar_set(string name, string value)
float cvar(string name)
const string cvar_string(string name)
entity Mutators_main_checkbox(entity me)
Definition mutatortab.qc:25
#define NEW(cname,...)
Definition oo.qh:120
#define METHOD(cname, name, prototype)
Definition oo.qh:274
entity makeXonoticTextLabel(float theAlign, string theText)
Definition textlabel.qc:3
entity makeXonoticCheckBox(float isInverted, string theCvar, string theText)
Definition checkbox.qc:28
void XonoticCheckBox_saveCvars(entity me)
Definition checkbox.qc:73