2 CLASS(XonoticGameHUDSettingsTab) EXTENDS(XonoticTab)
3 //METHOD(XonoticGameHUDSettingsTab, toString, string(entity))
4 METHOD(XonoticGameHUDSettingsTab, fill, void(entity))
5 METHOD(XonoticGameHUDSettingsTab, showNotify, void(entity))
6 ATTRIB(XonoticGameHUDSettingsTab, title, string, _("HUD"))
7 ATTRIB(XonoticGameHUDSettingsTab, intendedWidth, float, 0.9)
8 ATTRIB(XonoticGameHUDSettingsTab, rows, float, 14)
9 ATTRIB(XonoticGameHUDSettingsTab, columns, float, 6.2)
10 ENDCLASS(XonoticGameHUDSettingsTab)
11 entity makeXonoticGameHUDSettingsTab();
12 void HUDSetup_Start(entity me, entity btn);
16 void HUDSetup_Check_Gamestatus(entity me, entity btn)
18 if(!(gamestatus & (GAME_CONNECTED | GAME_ISSERVER))) // we're not in a match, ask the player if they want to start one anyway
20 DialogOpenButton_Click(me, main.hudconfirmDialog);
22 else // already in a match, lets just cut to the point and open up the hud editor directly
24 HUDSetup_Start(me, btn);
27 void XonoticGameHUDSettingsTab_showNotify(entity me)
31 entity makeXonoticGameHUDSettingsTab()
34 me = spawnXonoticGameHUDSettingsTab();
35 me.configureDialog(me);
39 void XonoticGameHUDSettingsTab_fill(entity me)
44 me.TD(me, 1, 3, e = makeXonoticTextLabel(0, _("Damage:")));
47 me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Overlay:")));
48 me.TD(me, 1, 2, e = makeXonoticSlider(0, 1, 0.05, "hud_damage"));
51 me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Factor:")));
52 setDependent(e, "hud_damage", 0.001, 100);
53 me.TD(me, 1, 2, e = makeXonoticSlider(0.025, 0.1, 0.025, "hud_damage_factor"));
54 setDependent(e, "hud_damage", 0.001, 100);
57 me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Fade rate:")));
58 setDependent(e, "hud_damage", 0.001, 100);
59 me.TD(me, 1, 2, e = makeXonoticSlider(0.25, 1, 0.05, "hud_damage_fade_rate"));
60 setDependent(e, "hud_damage", 0.001, 100);
64 me.TD(me, 1, 3, e = makeXonoticCheckBox(1, "cl_hidewaypoints", _("Waypoints")));
67 me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Scale:"))); // TODO: use fontsize?
68 setDependent(e, "cl_hidewaypoints", 0, 0);
69 me.TD(me, 1, 2, e = makeXonoticSlider(0.5, 1.5, 0.05, "g_waypointsprite_scale"));
70 setDependent(e, "cl_hidewaypoints", 0, 0);
73 me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Alpha:")));
74 setDependent(e, "cl_hidewaypoints", 0, 0);
75 me.TD(me, 1, 2, e = makeXonoticSlider(0.1, 1, 0.05, "g_waypointsprite_alpha"));
76 setDependent(e, "cl_hidewaypoints", 0, 0);
79 me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Edge offset:")));
80 setDependent(e, "cl_hidewaypoints", 0, 0);
81 me.TD(me, 1, 2, e = makeXonoticSlider(0, 0.3, 0.01, "g_waypointsprite_edgeoffset_bottom"));
82 makeMulti(e, "g_waypointsprite_edgeoffset_top g_waypointsprite_edgeoffset_left g_waypointsprite_edgeoffset_right");
83 setDependent(e, "cl_hidewaypoints", 0, 0);
85 me.gotoRC(me, 0, 3.2); me.setFirstColumn(me, me.currentColumn);
86 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "hud_shownames", _("Show names above players"))); // TODO: select fontsize for shownames
89 me.TD(me, 1, 2.8, e = makeXonoticCheckBoxEx(25, 0, "hud_shownames_crosshairdistance", _("Only when near crosshair")));
92 me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "hud_shownames_status", _("Display health and armor")));
96 me.TD(me, 1, 2, e = makeXonoticButton(_("Enter HUD editor"), '0 0 0'));
97 e.onClick = HUDSetup_Check_Gamestatus;
99 // TODO: show hud config name with text here