c0dbb1f825de396839004e43a8cfca32c0e2a7e3
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / dialog_settings_game_messages.c
1 #ifdef INTERFACE
2 CLASS(XonoticGameMessageSettingsTab) EXTENDS(XonoticTab)
3         //METHOD(XonoticGameWeaponsSettingsTab, toString, string(entity))
4         METHOD(XonoticGameMessageSettingsTab, fill, void(entity))
5         METHOD(XonoticGameMessageSettingsTab, showNotify, void(entity))
6         ATTRIB(XonoticGameMessageSettingsTab, title, string, _("Messages"))
7         ATTRIB(XonoticGameMessageSettingsTab, intendedWidth, float, 0.9)
8         ATTRIB(XonoticGameMessageSettingsTab, rows, float, 13)
9         ATTRIB(XonoticGameMessageSettingsTab, columns, float, 6)
10         ATTRIB(XonoticGameMessageSettingsTab, weaponsList, entity, NULL)
11 ENDCLASS(XonoticGameMessageSettingsTab)
12 entity makeXonoticGameMessageSettingsTab();
13 #endif
14
15 #ifdef IMPLEMENTATION
16 void XonoticGameMessageSettingsTab_showNotify(entity me)
17 {
18         loadAllCvars(me);
19 }
20 entity makeXonoticGameMessageSettingsTab()
21 {
22         entity me;
23         me = spawnXonoticGameMessageSettingsTab();
24         me.configureDialog(me);
25         return me;
26 }
27
28 void XonoticGameMessageSettingsTab_fill(entity me)
29 {
30         entity e;
31
32         me.TR(me);
33                 me.TD(me, 1, 3, e = makeXonoticTextLabel(0.5, _("Frag Information")));
34                         e.isBold = TRUE;
35                         e.alpha = 0.5;
36         me.TR(me);
37                 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "notification_show_sprees", _("Display information about killing sprees")));
38         me.TR(me);
39                 me.TDempty(me, 0.2);
40                 me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "notification_show_sprees_info_specialonly", _("Only display sprees if they are achievements")));
41                         makeMulti(e, "notification_show_sprees_center_specialonly");
42                         setDependent(e, "notification_show_sprees", 1, 1);
43         me.TR(me);
44                 me.TDempty(me, 0.2);
45                 me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "notification_show_sprees_center", _("Show spree information in centerprints")));
46                         setDependent(e, "notification_show_sprees", 1, 1);
47         me.TR(me);
48                 me.TDempty(me, 0.2);
49                 me.TD(me, 1, 2.8, e = makeXonoticCheckBoxEx(3, 0, "notification_show_sprees_info", _("Show spree information in death messages")));
50                         setDependent(e, "notification_show_sprees", 1, 1);
51         #if 0
52         me.TR(me);
53                 me.TDempty(me, 0.1);
54                 me.TD(me, 1, 0.9, e = makeXonoticTextLabel(0, _("Sprees in info messages:")));
55                         setDependent(e, "notification_show_sprees", 1, 1);
56                 me.TD(me, 1, 2, e = makeXonoticTextSlider("notification_show_sprees_info"));
57                         e.addValue(e, ZCTX(_("Disabled")), "0");
58                         e.addValue(e, ZCTX(_("Target")), "1");
59                         e.addValue(e, ZCTX(_("Attacker")), "2");
60                         e.addValue(e, ZCTX(_("Both")), "3");
61                         e.configureXonoticTextSliderValues(e);
62                         setDependent(e, "notification_show_sprees", 1, 1);
63         #endif
64         me.TR(me);
65                 me.TDempty(me, 0.4);
66                 me.TD(me, 1, 2.6, e = makeXonoticCheckBox(0, "notification_show_sprees_info_newline", _("Print on a seperate line")));
67                         setDependent(e, "notification_show_sprees", 1, 1);
68         me.TR(me);
69                 me.TD(me, 1, 3, e = makeXonoticCheckBoxEx(2, 1, "notification_CHOICE_FRAG", _("Add extra frag information to centerprint when available")));
70                         makeMulti(e, "notification_CHOICE_FRAGGED notification_CHOICE_TYPEFRAG notification_CHOICE_TYPEFRAGGED");
71                         e.sendCvars = TRUE;
72         me.TR(me);
73                 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "notification_show_location", _("Add frag location to death messages when available")));
74
75         me.gotoRC(me, 9, 0); me.setFirstColumn(me, me.currentColumn);
76                 me.TD(me, 1, 3, e = makeXonoticTextLabel(0.5, _("Gamemode Settings")));
77                         e.isBold = TRUE;
78                         e.alpha = 0.5;
79         me.TR(me);
80                 me.TD(me, 1, 3, e = makeXonoticCheckBoxEx(2, 1, "notification_CHOICE_CTF_CAPTURE_TIME_RED", _("Display capture times in Capture The Flag")));
81                         makeMulti(e, "notification_CHOICE_CTF_CAPTURE_TIME_BLUE notification_CHOICE_CTF_CAPTURE_BROKEN_RED notification_CHOICE_CTF_CAPTURE_BROKEN_BLUE notification_CHOICE_CTF_CAPTURE_UNBROKEN_RED notification_CHOICE_CTF_CAPTURE_UNBROKEN_BLUE ");
82                         e.sendCvars = TRUE;
83         me.TR(me);
84                 me.TD(me, 1, 3, e = makeXonoticCheckBoxEx(2, 1, "notification_CHOICE_CTF_PICKUP_ENEMY", _("Display name of flag stealer in Capture The Flag")));
85                         makeMulti(e, "notification_CHOICE_CTF_PICKUP_TEAM");
86                         e.sendCvars = TRUE;
87
88         me.gotoRC(me, 0, 3.2); me.setFirstColumn(me, me.currentColumn);
89                 me.TD(me, 1, 3, e = makeXonoticTextLabel(0.5, _("Other")));
90                         e.isBold = TRUE;
91                         e.alpha = 0.5;
92         me.TR(me);
93                 me.TD(me, 1, 3, e = makeXonoticCheckBoxEx(4, 1, "con_notify", _("Display console messages in the top left corner")));
94         me.TR(me);
95                 me.TD(me, 1, 3, e = makeXonoticCheckBoxEx(2, 1, "notification_allow_chatboxprint", _("Display all info messages in the chatbox")));
96         me.TR(me);
97                 me.TD(me, 1, 3, e = makeXonoticCheckBoxEx(2, 1, "notification_INFO_QUIT_DISCONNECT", _("Display player statuses in the chatbox")));
98                         makeMulti(e, "notification_INFO_QUIT_KICK_IDLING notification_INFO_JOIN_CONNECT_TEAM_BLUE notification_INFO_JOIN_CONNECT_TEAM_PINK notification_INFO_JOIN_CONNECT_TEAM_RED notification_INFO_JOIN_CONNECT_TEAM_YELLOW");
99         me.TR(me);
100         me.TR(me);
101                 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "notification_CENTER_POWERUP_INVISIBILITY", _("Powerup notifications")));
102                         makeMulti(e, "notification_CENTER_POWERUP_SHIELD notification_CENTER_POWERUP_SPEED notification_CENTER_POWERUP_STRENGTH notification_CENTER_POWERDOWN_INVISIBILITY notification_CENTER_POWERDOWN_SHIELD notification_CENTER_POWERDOWN_SPEED notification_CENTER_POWERDOWN_STRENGTH notification_CENTER_SUPERWEAPON_BROKEN notification_CENTER_SUPERWEAPON_LOST notification_CENTER_SUPERWEAPON_PICKUP notification_INFO_POWERUP_INVISIBILITY notification_INFO_POWERUP_SHIELD notification_INFO_POWERUP_SPEED notification_INFO_POWERUP_STRENGTH");
103         me.TR(me);
104                 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "notification_CENTER_ITEM_WEAPON_DONTHAVE", _("Weapon centerprint notifications")));
105                         makeMulti(e, "notification_CENTER_ITEM_WEAPON_DROP notification_CENTER_ITEM_WEAPON_GOT notification_CENTER_ITEM_WEAPON_NOAMMO notification_CENTER_ITEM_WEAPON_PRIMORSEC notification_CENTER_ITEM_WEAPON_UNAVAILABLE"); 
106         me.TR(me);
107                 me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "notification_INFO_ITEM_WEAPON_DONTHAVE", _("Weapon info message notifications")));
108                         makeMulti(e, "notification_INFO_ITEM_WEAPON_DROP notification_INFO_ITEM_WEAPON_GOT notification_INFO_ITEM_WEAPON_NOAMMO notification_INFO_ITEM_WEAPON_PRIMORSEC notification_INFO_ITEM_WEAPON_UNAVAILABLE"); 
109
110         me.gotoRC(me, 9, 3.2); me.setFirstColumn(me, me.currentColumn);
111                 me.TD(me, 1, 3, e = makeXonoticTextLabel(0.5, _("Announcers")));
112                         e.isBold = TRUE;
113                         e.alpha = 0.5;
114         #if 0
115         // there's just not enough room for this, and it's not important enough to justify...
116         me.TR(me);
117                 me.TD(me, 1, 3, e = makeXonoticCheckBoxEx(2, 0, "notification_ANNCE_NUM_RESPAWN_1", _("Respawn countdown sounds")));
118                         makeMulti(e, "notification_ANNCE_NUM_RESPAWN_2 notification_ANNCE_NUM_RESPAWN_3 notification_ANNCE_NUM_RESPAWN_4 notification_ANNCE_NUM_RESPAWN_5 notification_ANNCE_NUM_RESPAWN_6 notification_ANNCE_NUM_RESPAWN_7 notification_ANNCE_NUM_RESPAWN_8 notification_ANNCE_NUM_RESPAWN_9 notification_ANNCE_NUM_RESPAWN_10");
119         #endif
120         me.TR(me);
121                 me.TD(me, 1, 3, e = makeXonoticCheckBoxEx(1, 0, "notification_ANNCE_KILLSTREAK_03", _("Killstreak sounds")));
122                         makeMulti(e, "notification_ANNCE_KILLSTREAK_05 notification_ANNCE_KILLSTREAK_10 notification_ANNCE_KILLSTREAK_15 notification_ANNCE_KILLSTREAK_20 notification_ANNCE_KILLSTREAK_25 notification_ANNCE_KILLSTREAK_30");
123         me.TR(me);
124                 me.TD(me, 1, 3, e = makeXonoticCheckBoxEx(1, 0, "notification_ANNCE_ACHIEVEMENT_AIRSHOT", _("Achievement sounds")));
125                         makeMulti(e, "notification_ANNCE_ACHIEVEMENT_AMAZING notification_ANNCE_ACHIEVEMENT_AWESOME notification_ANNCE_ACHIEVEMENT_BOTLIKE notification_ANNCE_ACHIEVEMENT_ELECTROBITCH notification_ANNCE_ACHIEVEMENT_IMPRESSIVE notification_ANNCE_ACHIEVEMENT_YODA");
126 }
127 #endif