Merge remote-tracking branch 'origin/divVerent/allow-override-item-model'
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / dialog_hudpanel_physics.c
1 #ifdef INTERFACE
2 CLASS(XonoticHUDPhysicsDialog) EXTENDS(XonoticRootDialog)
3         METHOD(XonoticHUDPhysicsDialog, fill, void(entity))
4         ATTRIB(XonoticHUDPhysicsDialog, title, string, _("Physics Panel"))
5         ATTRIB(XonoticHUDPhysicsDialog, color, vector, SKINCOLOR_DIALOG_TEAMSELECT)
6         ATTRIB(XonoticHUDPhysicsDialog, intendedWidth, float, 0.4)
7         ATTRIB(XonoticHUDPhysicsDialog, rows, float, 15)
8         ATTRIB(XonoticHUDPhysicsDialog, columns, float, 4)
9         ATTRIB(XonoticHUDPhysicsDialog, name, string, "HUDphysics")
10         ATTRIB(XonoticHUDPhysicsDialog, sliderTopspeedTime, entity, NULL)
11 ENDCLASS(XonoticHUDPhysicsDialog)
12 #endif
13
14 #ifdef IMPLEMENTATION
15 void XonoticHUDPhysicsDialog_fill(entity me)
16 {
17         entity e;
18         string panelname = "physics";
19
20         me.TR(me);
21                 me.TD(me, 1, 4, e = makeXonoticTextSlider("hud_panel_physics"));
22                         e.addValue(e, _("Panel disabled"), "0");
23                         e.addValue(e, _("Panel enabled"), "1");
24                         e.addValue(e, _("Panel enabled even observing"), "2");
25                         e.addValue(e, _("Panel enabled only in Race/CTS"), "3");
26                         e.configureXonoticTextSliderValues(e);
27
28         DIALOG_HUDPANEL_COMMON_NOTOGGLE();
29
30         me.TR(me);
31                 me.TD(me, 1, 1.4, e = makeXonoticCheckBox(0, "hud_panel_physics_progressbar", _("Status bar")));
32                 me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_panel_physics_baralign"));
33                         e.addValue(e, _("Left align")   , "0");
34                         e.addValue(e, _("Right align")  , "1");
35                         e.addValue(e, _("Inward align") , "2");
36                         e.addValue(e, _("Outward align"), "3");
37                         e.configureXonoticTextSliderValues(e);
38                         setDependent(e, "hud_panel_physics_progressbar", 1, 3);
39         me.TR(me);
40                 me.TD(me, 1, 4, e = makeXonoticCheckBox(0, "hud_panel_physics_flip", _("Flip speed/acceleration positions")));
41
42 //speed
43         me.TR(me);
44                 me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Speed:")));
45                 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "hud_panel_physics_speed_vertical", _("Include vertical speed")));
46         // me.TR(me);
47                 // me.TDempty(me, 0.2);
48                 // me.TD(me, 1, 1.8, e = makeXonoticTextLabel(0, _("Full status bar at:")));
49                         // setDependent(e, "hud_panel_physics_progressbar", 1, 1);
50                 // me.TD(me, 1, 1, e = makeXonoticInputBox(1, "hud_panel_physics_speed_max"));
51                         // setDependent(e, "hud_panel_physics_progressbar", 1, 1);
52                 // me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("qu/s")));
53                         // setDependent(e, "hud_panel_physics_progressbar", 1, 1);
54         me.TR(me);
55                 me.TDempty(me, 0.2);
56                 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Speed unit:")));
57                 me.TD(me, 1, 2.6/3*2, e = makeXonoticTextSlider("hud_panel_physics_speed_unit"));
58                         e.addValue(e, _("qu/s") , "1");
59                         e.addValue(e, _("m/s")  , "2");
60                         e.addValue(e, _("km/h") , "3");
61                         e.addValue(e, _("mph")  , "4");
62                         e.addValue(e, _("knots"), "5");
63                         e.configureXonoticTextSliderValues(e);
64                 me.TD(me, 1, 2.6/3, e = makeXonoticCheckBox(0, "hud_panel_physics_speed_unit_show", _("Show")));
65         me.TR(me);
66                 me.TDempty(me, 0.2);
67                 me.TD(me, 1, 3.8/2, e = makeXonoticCheckBox(0, "hud_panel_physics_topspeed", _("Top speed")));
68                 me.TD(me, 1, 3.8/2, e = makeXonoticSlider(1, 10, 1, "hud_panel_physics_topspeed_time"));
69                         setDependent(e, "hud_panel_physics_topspeed", 1, 1);
70
71 //acceleration
72         me.TR(me);
73                 me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Acceleration:")));
74                 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "hud_panel_physics_acceleration_vertical", _("Include vertical acceleration")));
75         // me.TR(me);
76                 // me.TDempty(me, 0.2);
77                 // me.TD(me, 1, 1.8, e = makeXonoticTextLabel(0, _("Full status bar at:")));
78                         // setDependent(e, "hud_panel_physics_progressbar", 1, 1);
79                 // me.TD(me, 1, 0.6, e = makeXonoticInputBox(1, "hud_panel_physics_acceleration_max"));
80                         // setDependent(e, "hud_panel_physics_progressbar", 1, 1);
81 }
82 #endif