]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/menu/xonotic/dialog_hudpanel_strafehud.qc
strafehud: mass renaming of cvars + some new cvars and adjusted hud dialog
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / dialog_hudpanel_strafehud.qc
1 #include "dialog_hudpanel_strafehud.qh"
2
3 #include "checkbox_string.qh"
4 #include "colorpicker_string.qh"
5 #include "button.qh"
6 #include "slider.qh"
7 #include "textlabel.qh"
8 #include "textslider.qh"
9
10 void StrafeHUD_CenterPanel(entity btn, entity me)
11 {
12     vector size = stov(str_cvar("hud_panel_strafehud_size"));
13     vector pos = stov(str_cvar("hud_panel_strafehud_pos"));
14     pos.x = 0.5 - size.x / 2;
15     cvar_set("hud_panel_strafehud_pos", strcat(ftos(pos.x), " ", ftos(pos.y)));
16 }
17
18 void StrafeHUD_ColorReset(entity btn, entity me)
19 {
20     cvar_set("hud_panel_strafehud_bar_accel_color", cvar_defstring("hud_panel_strafehud_bar_accel_color"));
21     cvar_set("hud_panel_strafehud_bar_neutral_color", cvar_defstring("hud_panel_strafehud_bar_neutral_color"));
22     cvar_set("hud_panel_strafehud_bar_overturn_color", cvar_defstring("hud_panel_strafehud_bar_overturn_color"));
23     cvar_set("hud_panel_strafehud_angle_accel_color", cvar_defstring("hud_panel_strafehud_angle_accel_color"));
24     cvar_set("hud_panel_strafehud_angle_neutral_color", cvar_defstring("hud_panel_strafehud_angle_neutral_color"));
25     cvar_set("hud_panel_strafehud_angle_overturn_color", cvar_defstring("hud_panel_strafehud_angle_overturn_color"));
26     cvar_set("hud_panel_strafehud_switch_active_color", cvar_defstring("hud_panel_strafehud_switch_active_color"));
27     cvar_set("hud_panel_strafehud_switch_inactive_color", cvar_defstring("hud_panel_strafehud_switch_inactive_color"));
28     cvar_set("hud_panel_strafehud_direction_color", cvar_defstring("hud_panel_strafehud_direction_color"));
29 }
30
31 void XonoticHUDStrafeHUDDialog_fill(entity me)
32 {
33     entity e;
34     string panelname = "strafehud";
35
36     me.TR(me);
37         me.TD(me, 1, 4, e = makeXonoticTextSlider("hud_panel_strafehud"));
38             e.addValue(e, _("Disable"), "0");
39             e.addValue(e, _("Enable"), "1");
40             e.addValue(e, _("Enable even observing"), "2");
41             e.addValue(e, _("Enable only in Race/CTS"), "3");
42             e.configureXonoticTextSliderValues(e);
43
44     dialog_hudpanel_main_settings(me, panelname);
45
46     me.TR(me);
47         me.TD(me, 1, 1.4, e = makeXonoticTextLabel(0, _("StrafeHUD mode:")));
48
49         me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_panel_strafehud_mode"));
50             e.addValue(e, _("View angle centered"), "0");
51             e.addValue(e, _("Velocity direction centered"), "1");
52             e.configureXonoticTextSliderValues(e);
53     me.TR(me);
54         me.TD(me, 1, 1.2, e = makeXonoticCheckBoxString("1", "0", "_hud_panel_strafehud_demo", _("Demo mode")));
55
56         me.TDempty(me, 0.4);
57
58         me.TD(me, 1, 0.6, e = makeXonoticTextLabel(0, _("Range:")));
59         me.TD(me, 1, 1.8, e = makeXonoticSlider(0, 360, 5, "hud_panel_strafehud_range"));
60     me.TR(me);
61         me.TD(me, 1, 1.9, e = makeXonoticButton(_("Center panel"), '0 0 0'));
62             e.onClick = StrafeHUD_CenterPanel;
63             e.onClickEntity = me;
64
65         me.TDempty(me, 0.2);
66
67         me.TD(me, 1, 1.9, e = makeXonoticButton(_("Reset colors"), '0 0 0'));
68             e.onClick = StrafeHUD_ColorReset;
69             e.onClickEntity = me;
70     me.TR(me);
71         me.TD(me, 1, 1.9, e = makeXonoticTextLabel(0, _("Strafe bar:")));
72
73         me.TDempty(me, 0.2);
74
75         me.TD(me, 1, 1.9, e = makeXonoticTextLabel(0, _("Angle indicator:")));
76     me.TR(me);
77         me.TD(me, 1, 0.56666666, e = makeXonoticTextLabel(0, _("Neutral:")));
78         me.TDempty(me, 0.1);
79         me.TD(me, 1, 0.56666666, e = makeXonoticTextLabel(0, _("Good:")));
80         me.TDempty(me, 0.1);
81         me.TD(me, 1, 0.56666666, e = makeXonoticTextLabel(0, _("Overturn:")));
82
83         me.TDempty(me, 0.2);
84
85         me.TD(me, 1, 0.56666666, e = makeXonoticTextLabel(0, _("Neutral:")));
86         me.TDempty(me, 0.1);
87         me.TD(me, 1, 0.56666666, e = makeXonoticTextLabel(0, _("Good:")));
88         me.TDempty(me, 0.1);
89         me.TD(me, 1, 0.56666666, e = makeXonoticTextLabel(0, _("Overturn:")));
90     me.TR(me);
91         me.TD(me, 2, 0.56666666, e = makeXonoticColorpickerString("hud_panel_strafehud_bar_neutral_color", "hud_panel_strafehud_bar_neutral_color"));
92         me.TDempty(me, 0.1);
93         me.TD(me, 2, 0.56666666, e = makeXonoticColorpickerString("hud_panel_strafehud_bar_accel_color", "hud_panel_strafehud_bar_accel_color"));
94         me.TDempty(me, 0.1);
95         me.TD(me, 2, 0.56666666, e = makeXonoticColorpickerString("hud_panel_strafehud_bar_overturn_color", "hud_panel_strafehud_bar_overturn_color"));
96
97         me.TDempty(me, 0.2);
98
99         me.TD(me, 2, 0.56666666, e = makeXonoticColorpickerString("hud_panel_strafehud_angle_neutral_color", "hud_panel_strafehud_angle_neutral_color"));
100         me.TDempty(me, 0.1);
101         me.TD(me, 2, 0.56666666, e = makeXonoticColorpickerString("hud_panel_strafehud_angle_accel_color", "hud_panel_strafehud_angle_accel_color"));
102         me.TDempty(me, 0.1);
103         me.TD(me, 2, 0.56666666, e = makeXonoticColorpickerString("hud_panel_strafehud_angle_overturn_color", "hud_panel_strafehud_angle_overturn_color"));
104     me.TR(me);
105     me.TR(me);
106         me.TD(me, 1, 0.56666666, e = makeXonoticSlider(0, 1, 0.1, "hud_panel_strafehud_bar_neutral_alpha"));
107         me.TDempty(me, 0.1);
108         me.TD(me, 1, 0.56666666, e = makeXonoticSlider(0, 1, 0.1, "hud_panel_strafehud_bar_accel_alpha"));
109         me.TDempty(me, 0.1);
110         me.TD(me, 1, 0.56666666, e = makeXonoticSlider(0, 1, 0.1, "hud_panel_strafehud_bar_overturn_alpha"));
111
112         me.TDempty(me, 0.2);
113
114         me.TD(me, 1, 1.9, e = makeXonoticSlider(0, 1, 0.1, "hud_panel_strafehud_angle_alpha"));
115     me.TR(me);
116         me.TD(me, 1, 1.9, e = makeXonoticTextLabel(0, _("Switch indicators:")));
117
118         me.TDempty(me, 0.2);
119
120         me.TD(me, 1, 1.9, e = makeXonoticTextLabel(0, _("Direction caps:")));
121     me.TR(me);
122         me.TD(me, 1, 0.9, e = makeXonoticTextLabel(0, _("Active:")));
123
124         me.TDempty(me, 0.2);
125
126         me.TD(me, 1, 0.9, e = makeXonoticTextLabel(0, _("Inactive:")));
127     me.TR(me);
128         me.TD(me, 2, 0.85, e = makeXonoticColorpickerString("hud_panel_strafehud_switch_active_color", "hud_panel_strafehud_switch_active_color"));
129         me.TDempty(me, 0.2);
130         me.TD(me, 2, 0.85, e = makeXonoticColorpickerString("hud_panel_strafehud_switch_inactive_color", "hud_panel_strafehud_switch_inactive_color"));
131
132         me.TDempty(me, 0.2);
133
134         me.TD(me, 2, 1.9, e = makeXonoticColorpickerString("hud_panel_strafehud_direction_color", "hud_panel_strafehud_direction_color"));
135 }