]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/menu/xonotic/crosshairpreview.qc
Fix crosshair picker indentation
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / crosshairpreview.qc
1 #ifdef INTERFACE
2 CLASS(XonoticCrosshairPreview) EXTENDS(Item)
3         METHOD(XonoticCrosshairPreview, configureXonoticCrosshairPreview, void(entity))
4         METHOD(XonoticCrosshairPreview, draw, void(entity))
5         ATTRIB(XonoticCrosshairPreview, src, string, string_null)
6         ATTRIB(XonoticCrosshairPreview, src2, string, string_null)
7         ATTRIB(XonoticCrosshairPreview, disabled, float, 0)
8         ATTRIB(XonoticCrosshairPreview, disabledAlpha, float, SKINALPHA_DISABLED)
9 ENDCLASS(XonoticCrosshairPreview)
10 entity makeXonoticCrosshairPreview();
11 #endif
12
13 #ifdef IMPLEMENTATION
14 entity makeXonoticCrosshairPreview()
15 {
16         entity me;
17         me = spawnXonoticCrosshairPreview();
18         me.configureXonoticCrosshairPreview(me);
19         return me;
20 }
21
22 void XonoticCrosshairPreview_configureXonoticCrosshairPreview(entity me)
23 {
24         me.src = strzone(strcat("/gfx/crosshair", cvar_string("crosshair")));
25         me.src2 = "/gfx/crosshairdot";
26 }
27
28 void XonoticCrosshairPreview_draw(entity me)
29 {
30         float save;
31         save = draw_alpha;
32         if(me.disabled)
33                 draw_alpha *= me.disabledAlpha;
34
35         vector sz, rgb;
36         float a;
37         rgb = stov(cvar_string("crosshair_color"));
38         a = cvar("crosshair_alpha");
39         if(me.src)
40                 strunzone(me.src);
41         me.src = strzone(strcat("/gfx/crosshair", cvar_string("crosshair")));
42
43         sz = draw_PictureSize(me.src);
44         sz = globalToBoxSize(sz, me.size);
45         sz = sz * cvar("crosshair_size");
46
47         draw_Picture('0.5 0.5 0' - 0.5 * sz, me.src, sz, rgb, a);
48         if(cvar("crosshair_dot"))
49         {
50                 if(cvar("crosshair_dot_color_custom") && (cvar_string("crosshair_dot_color") != "0"))
51                         rgb = stov(cvar_string("crosshair_dot_color"));
52
53                 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"));
54         }
55
56         draw_alpha = save;
57
58         SUPER(XonoticCrosshairPreview).draw(me);
59 }
60 #endif