]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/menu/xonotic/crosshairpreview.qc
Merge branch 'master' into martin-t/dmgtext
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / crosshairpreview.qc
1 #include "crosshairpreview.qh"
2
3 entity makeXonoticCrosshairPreview()
4 {
5         entity me;
6         me = NEW(XonoticCrosshairPreview);
7         me.configureXonoticCrosshairPreview(me);
8         return me;
9 }
10
11 void XonoticCrosshairPreview_configureXonoticCrosshairPreview(entity me)
12 {
13         me.src = strzone(strcat("/gfx/crosshair", cvar_string("crosshair")));
14         me.src2 = "/gfx/crosshairdot";
15 }
16
17 void XonoticCrosshairPreview_draw(entity me)
18 {
19         float save;
20         save = draw_alpha;
21         if(me.disabled)
22                 draw_alpha *= me.disabledAlpha;
23
24         vector sz, rgb;
25         float a;
26         rgb = stov(cvar_string("crosshair_color"));
27         a = cvar("crosshair_alpha");
28         strcpy(me.src, strcat("/gfx/crosshair", cvar_string("crosshair")));
29
30         sz = draw_PictureSize(me.src);
31         sz = globalToBoxSize(sz, me.size);
32         sz = sz * cvar("crosshair_size");
33
34         draw_Picture('0.5 0.5 0' - 0.5 * sz, me.src, sz, rgb, a);
35         if(cvar("crosshair_dot"))
36         {
37                 if(cvar("crosshair_dot_color_custom") && (cvar_string("crosshair_dot_color") != "0"))
38                         rgb = stov(cvar_string("crosshair_dot_color"));
39
40                 draw_Picture('0.5 0.5 0' - 0.5 * sz * cvar("crosshair_dot_size"), me.src2, sz * cvar("crosshair_dot_size"), rgb, a * cvar("crosshair_dot_alpha"));
41         }
42
43         draw_alpha = save;
44
45         SUPER(XonoticCrosshairPreview).draw(me);
46 }