]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/menu/xonotic/dialog_settings_game_weapons.qc
Merge branch 'master' into Mario/vaporizer_damage
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / dialog_settings_game_weapons.qc
1 #ifndef DIALOG_SETTINGS_GAME_WEAPONS_H
2 #define DIALOG_SETTINGS_GAME_WEAPONS_H
3 #include "tab.qc"
4 CLASS(XonoticGameWeaponsSettingsTab, XonoticTab)
5         METHOD(XonoticGameWeaponsSettingsTab, fill, void(entity));
6         METHOD(XonoticGameWeaponsSettingsTab, showNotify, void(entity));
7         ATTRIB(XonoticGameWeaponsSettingsTab, title, string, _("Weapons"))
8         ATTRIB(XonoticGameWeaponsSettingsTab, intendedWidth, float, 0.9)
9         ATTRIB(XonoticGameWeaponsSettingsTab, rows, float, 13)
10         ATTRIB(XonoticGameWeaponsSettingsTab, columns, float, 6)
11         ATTRIB(XonoticGameWeaponsSettingsTab, weaponsList, entity, NULL)
12 ENDCLASS(XonoticGameWeaponsSettingsTab)
13 entity makeXonoticGameWeaponsSettingsTab();
14 #include "../gamesettings.qh"
15 REGISTER_SETTINGS(Weapons, makeXonoticGameWeaponsSettingsTab());
16 #endif
17
18 #ifdef IMPLEMENTATION
19 void XonoticGameWeaponsSettingsTab_showNotify(entity me)
20 {
21         loadAllCvars(me);
22 }
23 entity makeXonoticGameWeaponsSettingsTab()
24 {
25         entity me;
26         me = NEW(XonoticGameWeaponsSettingsTab);
27         me.configureDialog(me);
28         return me;
29 }
30
31 void XonoticGameWeaponsSettingsTab_fill(entity me)
32 {
33         entity e;
34
35         me.TR(me);
36                 me.TDempty(me, 0.25);
37                 me.TD(me, 1, 2.5, e = makeXonoticHeaderLabel(_("Weapon Priority List (* = mutator weapon)")));
38         me.TR(me);
39                 me.TDempty(me, 0.25);
40                 me.TD(me, 10, 2.5, e = me.weaponsList = makeXonoticWeaponsList());
41         me.gotoRC(me, 11, 0.25);
42                 me.TD(me, 1, 1.25, e = makeXonoticButton(_("Up"), '0 0 0'));
43                         e.onClick = WeaponsList_MoveUp_Click;
44                         e.onClickEntity = me.weaponsList;
45                 me.TD(me, 1, 1.25, e = makeXonoticButton(_("Down"), '0 0 0'));
46                         e.onClick = WeaponsList_MoveDown_Click;
47                         e.onClickEntity = me.weaponsList;
48
49         me.gotoRC(me, 0, 3); me.setFirstColumn(me, me.currentColumn);
50                 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_weaponpriority_useforcycling", _("Use priority list for weapon cycling")));
51         me.TR(me);
52                 me.TD(me, 1, 3, e = makeXonoticCheckBox(1, "cl_weaponimpulsemode", _("Cycle through only usable weapon selections")));
53         me.TR(me);
54         me.TR(me);
55                 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_autoswitch", _("Auto switch weapons on pickup")));
56         me.TR(me);
57                 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_unpress_attack_on_weapon_switch", _("Release attack buttons when you switch weapons")));
58         me.TR(me);
59         me.TR(me);
60                 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "r_drawviewmodel", _("Draw 1st person weapon model")));
61         me.TR(me);
62                 me.TDempty(me, 0.2);
63                 me.TD(me, 1, 0.9, e = makeXonoticRadioButton(1, "cl_gunalign", "4", _("Left align")));
64                         setDependent(e, "r_drawviewmodel", 1, 1);
65                 me.TD(me, 1, 0.9, e = makeXonoticRadioButton(1, "cl_gunalign", "1", _("Center")));
66                         setDependent(e, "r_drawviewmodel", 1, 1);
67                 me.TD(me, 1, 1.0, e = makeXonoticRadioButton(1, "cl_gunalign", "3", _("Right align")));
68                         setDependent(e, "r_drawviewmodel", 1, 1);
69         me.TR(me);
70         me.TR(me);
71                 me.TDempty(me, 0.2);
72                 me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "cl_followmodel", _("Gun model swaying")));
73                 makeMulti(e, "cl_leanmodel");
74                 setDependent(e, "r_drawviewmodel", 1, 1);
75         me.TR(me);
76                 me.TDempty(me, 0.2);
77                 me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "cl_bobmodel", _("Gun model bobbing")));
78                 setDependent(e, "r_drawviewmodel", 1, 1);
79 }
80 #endif