Merge branch 'terencehill/menu_remove_tab_title' into 'master'
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / dialog_settings_game_model.qc
1 #ifndef DIALOG_SETTINGS_GAME_MODEL_H
2 #define DIALOG_SETTINGS_GAME_MODEL_H
3 #include "tab.qc"
4 CLASS(XonoticGameModelSettingsTab, XonoticTab)
5         METHOD(XonoticGameModelSettingsTab, fill, void(entity))
6         METHOD(XonoticGameModelSettingsTab, showNotify, void(entity))
7         ATTRIB(XonoticGameModelSettingsTab, intendedWidth, float, 0.9)
8         ATTRIB(XonoticGameModelSettingsTab, rows, float, 13)
9         ATTRIB(XonoticGameModelSettingsTab, columns, float, 5)
10 ENDCLASS(XonoticGameModelSettingsTab)
11 entity makeXonoticGameModelSettingsTab();
12 #endif
13
14 #ifdef IMPLEMENTATION
15 void XonoticGameModelSettingsTab_showNotify(entity me)
16 {
17         loadAllCvars(me);
18 }
19 entity makeXonoticGameModelSettingsTab()
20 {
21         entity me;
22         me = NEW(XonoticGameModelSettingsTab);
23         me.configureDialog(me);
24         return me;
25 }
26
27 void XonoticGameModelSettingsTab_fill(entity me)
28 {
29         entity e;
30         //float i;
31
32         // Note that this is pretty terrible currently due to the lack of options for this tab...
33         // There is really not many other decent places for these options, additionally
34         // later I would like quite a few more options in this tab.
35
36         me.gotoRC(me, 0, 1); me.setFirstColumn(me, me.currentColumn);
37                 me.TD(me, 1, 3, e = makeXonoticHeaderLabel(_("Items")));
38         me.TR(me);
39                 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_simple_items", _("Use simple 2D images instead of item models")));
40         me.TR(me);
41                 me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Unavailable alpha:")));
42                 me.TD(me, 1, 2, e = makeXonoticSlider(0, 1, 0.1, "cl_ghost_items"));
43         me.TR(me);
44                 me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Unavailable color:")));
45                 me.TD(me, 1, 2, e = makeXonoticTextSlider("cl_ghost_items_color"));
46                         e.addValue(e, ZCTX(_("GHOITEMS^Black")), "-1 -1 -1");
47                         e.addValue(e, ZCTX(_("GHOITEMS^Dark")), "0.1 0.1 0.1");
48                         e.addValue(e, ZCTX(_("GHOITEMS^Tinted")), "0.6 0.6 0.6");
49                         e.addValue(e, ZCTX(_("GHOITEMS^Normal")), "1 1 1");
50                         e.addValue(e, ZCTX(_("GHOITEMS^Blue")), "-1 -1 3");
51                         e.configureXonoticTextSliderValues(e);
52                         setDependent(e, "cl_ghost_items", 0.001, 1);
53
54         me.TR(me);
55         me.TR(me);
56                 me.TD(me, 1, 3, e = makeXonoticHeaderLabel(_("Players")));
57         me.TR(me);
58                 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_forceplayermodels", _("Force player models to mine")));
59         me.TR(me);
60                 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_forceplayercolors", _("Force player colors to mine")));
61         me.TR(me);
62                 me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Body fading:")));
63                 me.TD(me, 1, 2, e = makeXonoticSlider(0, 2, 0.2, "cl_deathglow"));
64         me.TR(me);
65                 me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Gibs:")));
66                 me.TD(me, 1, 2, e = makeXonoticTextSlider("cl_nogibs"));
67                         e.addValue(e, ZCTX(_("GIBS^None")), "1");
68                         e.addValue(e, ZCTX(_("GIBS^Few")), "0.75");
69                         e.addValue(e, ZCTX(_("GIBS^Many")), "0.5");
70                         e.addValue(e, ZCTX(_("GIBS^Lots")), "0");
71                         e.configureXonoticTextSliderValues(e);
72                         setDependent(e, "cl_gentle", 0, 0);
73 }
74 #endif