Xonotic QuakeC
The free, fast arena FPS with crisp movement and a wide array of weapons
effectinfo_ctf.inc
Go to the documentation of this file.
1// flag_touch -- effects for touching the flag
2#define flag_touch(name, colormin, colormax) \
3 DEF(name##flag_touch); \
4 SUB(name##flag_touch) { \
5 MY(airfriction) = 3; \
6 MY(alpha_max) = 256; \
7 MY(alpha_fade) = 556; \
8 MY(bounce) = 1.500000; \
9 MY(color_min) = colormin; \
10 MY(color_max) = colormax; \
11 MY(count) = 35; \
12 MY(gravity) = 1; \
13 MY(originjitter) = '1.0 1.0 1.0'; \
14 MY(size_min) = 1; \
15 MY(size_max) = 3; \
16 MY(tex_min) = 40; \
17 MY(tex_max) = 40; \
18 MY(type) = "spark"; \
19 MY(velocityjitter) = '300.0 300.0 300.0'; \
20 MY(velocitymultiplier) = 0.500000; \
21 }
22
23flag_touch(red, "0xFF0000", "0x970000")
24flag_touch(blue, "0x0000FF", "0x000097")
25flag_touch(yellow, "0xFFFF0F", "0xFFFF0F")
26flag_touch(pink, "0xFF0FFF", "0xFF0FFF")
27flag_touch(neutral, "0xFFFFFF", "0xFFFFFF")
28#undef flag_touch
29
30#define pass(name, colormin, colormax) \
31 DEF(name##_pass); \
32 SUB(name##_pass) { \
33 MY(airfriction) = 5; \
34 MY(alpha_min) = 64; \
35 MY(alpha_max) = 128; \
36 MY(alpha_fade) = 64; \
37 MY(color_min) = colormin; \
38 MY(color_max) = colormax; \
39 MY(sizeincrease) = 2; \
40 MY(size_min) = 2; \
41 MY(size_max) = 2; \
42 MY(tex_min) = 32; \
43 MY(tex_max) = 32; \
44 MY(trailspacing) = 64; \
45 MY(type) = "static"; \
46 } \
47 SUB(name##_pass) { \
48 MY(airfriction) = 9; \
49 MY(alpha_min) = 32; \
50 MY(alpha_max) = 64; \
51 MY(alpha_fade) = 32; \
52 MY(color_min) = colormin; \
53 MY(color_max) = colormax; \
54 MY(sizeincrease) = 8; \
55 MY(size_min) = 1; \
56 MY(size_max) = 1; \
57 MY(tex_max) = 8; \
58 MY(trailspacing) = 12; \
59 MY(type) = "static"; \
60 MY(velocityjitter) = '64.0 64.0 64.0'; \
61 } \
62 SUB(name##_pass) { \
63 MY(alpha_min) = 256; \
64 MY(alpha_max) = 256; \
65 MY(alpha_fade) = 1280; \
66 MY(color_min) = colormin; \
67 MY(color_max) = colormax; \
68 MY(size_min) = 4; \
69 MY(size_max) = 4; \
70 MY(trailspacing) = 12; \
71 MY(type) = "static"; \
72 } \
73 /**/
74
75pass(red, "0xFF0000", "0x970000")
76pass(blue, "0x0000FF", "0x000097")
77pass(yellow, "0xFFFF0F", "0xFFFF0F")
78pass(pink, "0xFFFFFF", "0xFFFFFF")
79pass(neutral, "0xFFFFFF", "0xFFFFFF")
80#undef pass
81
82// cap -- team capture effect
83#define cap(name, colormin, colormax) \
84 DEF(name##_cap); \
85 SUB(name##_cap) { \
86 MY(airfriction) = 2; \
87 MY(alpha_max) = 256; \
88 MY(alpha_fade) = 100; \
89 MY(bounce) = 1.500000; \
90 MY(color_min) = colormin; \
91 MY(color_max) = colormax; \
92 MY(count) = 500; \
93 MY(originjitter) = '1.0 1.0 1.0'; \
94 MY(size_min) = 1; \
95 MY(size_max) = 1; \
96 MY(stretchfactor) = 0.600000; \
97 MY(tex_min) = 64; \
98 MY(tex_max) = 64; \
99 MY(type) = "spark"; \
100 MY(velocityjitter) = '1000.0 1000.0 1500.0'; \
101 MY(velocitymultiplier) = 0.500000; \
102 } \
103 SUB(name##_cap) { \
104 MY(alpha_min) = 190; \
105 MY(alpha_max) = 190; \
106 MY(alpha_fade) = 180; \
107 MY(color_min) = colormin; \
108 MY(color_max) = colormax; \
109 MY(countabsolute) = 1; \
110 MY(sizeincrease) = -80; \
111 MY(size_min) = 150; \
112 MY(size_max) = 150; \
113 MY(tex_min) = 65; \
114 MY(tex_max) = 65; \
115 MY(type) = "smoke"; \
116 } \
117 /**/
118
119cap(red, "0xFF0000", "0x970000")
120cap(blue, "0x0000FF", "0x000097")
121cap(yellow, "0xFFFF0F", "0xFFFF0F")
122cap(pink, "0xFF0FFF", "0xFF0FFF")
123#undef cap
#define cap(name, colormin, colormax)
#define flag_touch(name, colormin, colormax)
#define pass(name, colormin, colormax)