2 CLASS(XonoticGameSettingsTab) EXTENDS(XonoticTab)
3 METHOD(XonoticGameSettingsTab, fill, void(entity))
4 ATTRIB(XonoticGameSettingsTab, title, string, _("Game"))
5 ATTRIB(XonoticGameSettingsTab, intendedWidth, float, 0.9)
6 ATTRIB(XonoticGameSettingsTab, rows, float, 17)
7 ATTRIB(XonoticGameSettingsTab, columns, float, 6.5)
8 ENDCLASS(XonoticGameSettingsTab)
9 entity makeXonoticGameSettingsTab();
13 entity makeXonoticGameSettingsTab()
16 me = spawnXonoticGameSettingsTab();
17 me.configureDialog(me);
21 void XonoticGameSettingsTab_fill(entity me)
24 mc = makeXonoticTabController(me.rows - 2);
26 me.gotoRC(me, 0.5, 0.25);
27 //me.TD(me, 1, 1, mc.makeTabButton(mc, _("General"), makeXonoticGameCrosshairSettingsTab()));
28 me.TD(me, 1, 1, mc.makeTabButton(mc, _("View"), makeXonoticGameViewSettingsTab()));
29 me.TD(me, 1, 1, mc.makeTabButton(mc, _("Crosshair"), makeXonoticGameCrosshairSettingsTab()));
30 me.TD(me, 1, 1, mc.makeTabButton(mc, _("HUD"), makeXonoticGameCrosshairSettingsTab()));
31 me.TD(me, 1, 1, mc.makeTabButton(mc, _("Messages"), makeXonoticGameCrosshairSettingsTab()));
32 me.TD(me, 1, 1, mc.makeTabButton(mc, _("Weapons"), makeXonoticGameCrosshairSettingsTab()));
33 me.TD(me, 1, 1, mc.makeTabButton(mc, _("Playermodels"), makeXonoticGameCrosshairSettingsTab()));
36 me.TD(me, me.rows - 2, me.columns, mc);
40 makeXonoticGameViewSettingsTab()));
41 makeXonoticGameGeneralSettingsTab()));
42 makeXonoticGameCrosshairSettingsTab()));
44 makeXonoticGameWeaponSettingsTab()));
45 l"), makeXonoticGamePlayermodelSettingsTab()));
46 makeXonoticGameHUDSettingsTab()));
47 on"), makeXonoticGameNotificationSettingsTab()));
51 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_gentle", _("Disable gore effects and harsh language"))); // also set sv_gentle
53 me.gotoRC(me, 2, 3); me.setFirstColumn(me, me.currentColumn);
55 me.TD(me, 1, 2, e = makeXonoticButton(_("Crosshair"), '0 0 0'));
56 e.onClick = DialogOpenButton_Click;
57 e.onClickEntity = main.crosshairDialog;
58 setDependent(e, "crosshair_enabled", 1, 2);
59 // TODO: show status of crosshair dot and hittest and pickups and such here with text
62 me.TD(me, 1, 2, e = makeXonoticButton(_("HUD"), '0 0 0'));
63 e.onClick = DialogOpenButton_Click;
64 e.onClickEntity = main.hudDialog;
65 // TODO: show hud config name with text here
68 me.TD(me, 1, 2, e = makeXonoticButton(_("Notification"), '0 0 0'));
69 e.onClick = DialogOpenButton_Click;
70 e.onClickEntity = main.notificationDialog;
71 // TODO: Show all the notification stuff here
74 me.TD(me, 1, 2, e = makeXonoticButton(_("Playermodel"), '0 0 0'));
75 e.onClick = DialogOpenButton_Click;
76 e.onClickEntity = main.modelDialog;
77 // TODO: show csqc model settings like forcemyplayer and deglowing/ghosting bodies with text here
80 me.TD(me, 1, 2, e = makeXonoticButton(_("View"), '0 0 0'));
81 e.onClick = DialogOpenButton_Click;
82 e.onClickEntity = main.viewDialog;
83 // TODO: show fov and other settings with text here
86 me.TD(me, 1, 2, e = makeXonoticButton(_("Weapon"), '0 0 0'));
87 e.onClick = DialogOpenButton_Click;
88 e.onClickEntity = main.weaponsDialog;
89 // I don't really think this is useful as is, and especially it doesn't look very clean...
90 // In the future, if ALL of these buttons had some information, then it would be justified/clean
91 //me.TD(me, 1, 1, e0 = makeXonoticTextLabel(0, string_null));
92 // e0.textEntity = main.weaponsDialog;
95 //me.gotoRC(me, me.rows - 1, 0);
96 // me.TD(me, 1, me.columns, makeXonoticCommandButton(_("Apply immediately"), '0 0 0', "color -1 -1;name \"$_cl_name\";sendcvar cl_weaponpriority;sendcvar cl_autoswitch;sendcvar cl_forceplayermodels;sendcvar cl_forceplayermodelsfromxonotic;playermodel $_cl_playermodel;playerskin $_cl_playerskin", COMMANDBUTTON_APPLY));
100 me.gotoRC(me, me.rows - 1, 0);
101 me.TD(me, 1, me.columns, makeXonoticCommandButton(_("Apply immediately"), '0 0 0', "sendcvar cl_gentle; sendcvar cl_allow_uidtracking; sendcvar cl_allow_uid2name;", COMMANDBUTTON_APPLY));