]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/menu/xonotic/dialog_multiplayer_media_demo.qc
Rename a few parameters and locals named x, y, z
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / dialog_multiplayer_media_demo.qc
1 #include "dialog_multiplayer_media_demo.qh"
2
3 #include "demolist.qh"
4 #include "textlabel.qh"
5 #include "inputbox.qh"
6 #include "checkbox.qh"
7 #include "button.qh"
8
9 const float DMO_PLAY = 1;
10 const float DMO_TIME = 2;
11 void DemoConfirm_Check_Gamestatus(entity btn, entity me)
12 {
13         if(!(gamestatus & (GAME_CONNECTED | GAME_ISSERVER))) // we're not in a match, lets watch the demo
14         {
15                 if(btn.democlicktype == DMO_PLAY)
16                         { demolist.startDemo(demolist); }
17                 else if(btn.democlicktype == DMO_TIME)
18                         { demolist.timeDemo(demolist); }
19         }
20         else // already in a match, player has to confirm
21         {
22                 if(btn.democlicktype == DMO_PLAY)
23                         { DialogOpenButton_Click(btn, main.demostartconfirmDialog); }
24                 else if(btn.democlicktype == DMO_TIME)
25                         { DialogOpenButton_Click(btn, main.demotimeconfirmDialog); }
26         }
27 }
28
29 entity makeXonoticDemoBrowserTab()
30 {
31         entity me;
32         me = NEW(XonoticDemoBrowserTab);
33         me.configureDialog(me);
34         return me;
35 }
36 void XonoticDemoBrowserTab_fill(entity me)
37 {
38         entity e;
39         demolist = makeXonoticDemoList();
40
41         me.TR(me);
42                 me.TD(me, 1, 0.6, e = makeXonoticTextLabel(1, _("Filter:")));
43                 me.TD(me, 1, 2.9, e = makeXonoticInputBox(0, string_null));
44                         e.onChange = DemoList_Filter_Change;
45                         e.onChangeEntity = demolist;
46
47         me.gotoRC(me, 0, 3.7);
48                 me.TD(me, 1, 1.5, e = makeXonoticCheckBox(0, "cl_autodemo", _("Auto record demos")));
49                 me.TD(me, 1, 1, e = makeXonoticButton(_("Refresh"), '0 0 0'));
50                         e.onClick = DemoList_Refresh_Click;
51                         e.onClickEntity = demolist;
52
53         me.gotoRC(me, 1.5, 0);
54                 me.TD(me, me.rows - 2.5, me.columns, demolist);
55
56         me.gotoRC(me, me.rows - 1, 0);
57                 me.TD(me, 1, me.columns / 2, e = makeXonoticButton_T(_("Timedemo"), '0 0 0',
58                         _("Benchmark how fast your computer can run the highlighted demo")));
59                         e.democlicktype = DMO_TIME;
60                         e.onClick = DemoConfirm_Check_Gamestatus;
61                         e.onClickEntity = me; // demolist is global anyway
62                 me.TD(me, 1, me.columns / 2, e = makeXonoticButton(ZCTX(_("DEMO^Play")), '0 0 0'));
63                         e.democlicktype = DMO_PLAY;
64                         e.onClick = DemoConfirm_Check_Gamestatus;
65                         e.onClickEntity = me; // demolist is global anyway
66 }