]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/common/effects/all.inc
Effects: fix arc with mismatching effectinfo
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / effects / all.inc
1 // Global list of effects, networked to CSQC by ID to save bandwidth and to use client particle numbers (allows mismatching effectinfos to some degree)
2 // Not too concerned about the order of this list, just keep the weapon effects together!
3
4 #include "../teams.qh"
5
6 // EFFECT(istrail, EFFECT_NAME,     "effectinfo_string")
7 EFFECT(0, EXPLOSION_SMALL,          "explosion_small")
8 EFFECT(0, EXPLOSION_MEDIUM,         "explosion_medium")
9 EFFECT(0, EXPLOSION_BIG,            "explosion_big")
10
11 EFFECT(0, SMOKE_SMALL,              "smoke_small")
12 EFFECT(0, SMOKE_LARGE,              "smoke_large")
13
14
15
16 EFFECT(0, BLASTER_IMPACT,           "laser_impact")
17 EFFECT(0, BLASTER_MUZZLEFLASH,      "laser_muzzleflash")
18
19 EFFECT(0, SHOTGUN_IMPACT,           "shotgun_impact")
20 EFFECT(0, SHOTGUN_MUZZLEFLASH,      "shotgun_muzzleflash")
21
22 EFFECT(0, ARC_BEAM,                 "arc_beam")
23 EFFECT(0, ARC_BEAM_HEAL,            "arc_beam_heal")
24 EFFECT(0, ARC_BEAM_HEAL_IMPACT,     "arc_beam_healimpact")
25 EFFECT(0, ARC_BEAM_HEAL_IMPACT2,    "healray_impact")
26 EFFECT(0, ARC_OVERHEAT,             "arc_overheat")
27 EFFECT(0, ARC_OVERHEAT_FIRE,        "arc_overheat_fire")
28 EFFECT(0, ARC_SMOKE,                "arc_smoke")
29 EFFECT(0, ARC_LIGHTNING,            "arc_lightning")
30 EFFECT(0, ARC_LIGHTNING2,           "electro_lightning")
31
32 EFFECT(0, MACHINEGUN_IMPACT,        "machinegun_impact")
33 EFFECT(0, MACHINEGUN_MUZZLEFLASH,   "uzi_muzzleflash")
34
35 EFFECT(0, GRENADE_EXPLODE,          "grenade_explode")
36 EFFECT(0, GRENADE_MUZZLEFLASH,      "grenadelauncher_muzzleflash")
37
38 EFFECT(0, ELECTRO_BALLEXPLODE,      "electro_ballexplode")
39 EFFECT(0, ELECTRO_COMBO,            "electro_combo")
40 EFFECT(0, ELECTRO_IMPACT,           "electro_impact")
41 EFFECT(0, ELECTRO_MUZZLEFLASH,      "electro_muzzleflash")
42
43 EFFECT(0, CRYLINK_IMPACT,           "crylink_impactbig")
44 EFFECT(0, CRYLINK_IMPACT2,          "crylink_impact")
45 EFFECT(0, CRYLINK_JOINEXPLODE,      "crylink_joinexplode")
46 EFFECT(0, CRYLINK_MUZZLEFLASH,      "crylink_muzzleflash")
47
48 EFFECT(0, VORTEX_BEAM,              "nex_beam")
49 EFFECT(0, VORTEX_BEAM_OLD,          "TE_TEI_G3")
50 EFFECT(0, VORTEX_IMPACT,            "nex_impact")
51 EFFECT(0, VORTEX_MUZZLEFLASH,       "nex_muzzleflash")
52
53 EFFECT(1, VAPORIZER_RED,            "TE_TEI_G3RED")
54 EFFECT(1, VAPORIZER_HIT_RED,        "TE_TEI_G3RED_HIT")
55 EFFECT(1, VAPORIZER_BLUE,           "TE_TEI_G3BLUE")
56 EFFECT(1, VAPORIZER_HIT_BLUE,       "TE_TEI_G3BLUE_HIT")
57 EFFECT(1, VAPORIZER_YELLOW,         "TE_TEI_G3YELLOW")
58 EFFECT(1, VAPORIZER_HIT_YELLOW,     "TE_TEI_G3YELLOW_HIT")
59 EFFECT(1, VAPORIZER_PINK,           "TE_TEI_G3PINK")
60 EFFECT(1, VAPORIZER_HIT_PINK,       "TE_TEI_G3PINK_HIT")
61 EFFECT(1, VAPORIZER_NEUTRAL,        "TE_TEI_G3")
62 EFFECT(1, VAPORIZER_HIT_NEUTRAL,    "TE_TEI_G3_HIT")
63 entity EFFECT_VAPORIZER(int teamid)
64 {
65     switch (teamid) {
66         case NUM_TEAM_1:    return EFFECT_VAPORIZER_RED;
67         case NUM_TEAM_2:    return EFFECT_VAPORIZER_BLUE;
68         case NUM_TEAM_3:    return EFFECT_VAPORIZER_YELLOW;
69         case NUM_TEAM_4:    return EFFECT_VAPORIZER_PINK;
70         default:            return EFFECT_VAPORIZER_NEUTRAL;
71     }
72 }
73 entity EFFECT_VAPORIZER_HIT(int teamid)
74 {
75     switch (teamid) {
76         case NUM_TEAM_1:    return EFFECT_VAPORIZER_HIT_RED;
77         case NUM_TEAM_2:    return EFFECT_VAPORIZER_HIT_BLUE;
78         case NUM_TEAM_3:    return EFFECT_VAPORIZER_HIT_YELLOW;
79         case NUM_TEAM_4:    return EFFECT_VAPORIZER_HIT_PINK;
80         default:            return EFFECT_VAPORIZER_HIT_NEUTRAL;
81     }
82 }
83
84 EFFECT(0, RIFLE_IMPACT,             "machinegun_impact")
85 EFFECT(0, RIFLE_MUZZLEFLASH,        "rifle_muzzleflash")
86 EFFECT(1, RIFLE,                    "tr_rifle")
87 EFFECT(1, RIFLE_WEAK,               "tr_rifle_weak")
88
89 EFFECT(0, HAGAR_BOUNCE,             "hagar_bounce")
90 EFFECT(0, HAGAR_EXPLODE,            "hagar_explode")
91 EFFECT(0, HAGAR_MUZZLEFLASH,        "hagar_muzzleflash")
92 EFFECT(1, HAGAR_ROCKET,             "tr_hagar")
93
94 EFFECT(0, ROCKET_EXPLODE,           "rocket_explode")
95 EFFECT(0, ROCKET_GUIDE,             "rocket_guide")
96 EFFECT(0, ROCKET_MUZZLEFLASH,       "rocketlauncher_muzzleflash")
97
98 EFFECT(0, HOOK_EXPLODE,             "hookbomb_explode")
99 EFFECT(0, HOOK_IMPACT,              "grapple_impact")
100 EFFECT(0, HOOK_MUZZLEFLASH,         "grapple_muzzleflash")
101
102 EFFECT(0, SEEKER_MUZZLEFLASH,       "seeker_muzzleflash")
103
104 EFFECT(1, FIREBALL,                 "fireball")
105 EFFECT(0, FIREBALL_BFGDAMAGE,       "fireball_bfgdamage")
106 EFFECT(0, FIREBALL_EXPLODE,         "fireball_explode")
107 EFFECT(0, FIREBALL_LASER,           "fireball_laser")
108 EFFECT(0, FIREBALL_MUZZLEFLASH,     "fireball_muzzleflash")
109 EFFECT(0, FIREBALL_PRE_MUZZLEFLASH, "fireball_preattack_muzzleflash")
110
111
112
113 EFFECT(0, RAPTOR_CANNON_IMPACT,     "raptor_cannon_impact")
114 EFFECT(0, RAPTOR_BOMB_IMPACT,       "raptor_bomb_impact")
115 EFFECT(0, RAPTOR_BOMB_SPREAD,       "raptor_bomb_spread")
116 EFFECT(0, RAPTOR_MUZZLEFLASH,       "raptor_cannon_muzzleflash")
117
118 EFFECT(0, RACER_BOOSTER,            "wakizashi_booster_smoke")
119 EFFECT(0, RACER_IMPACT,             "wakizashi_gun_impact")
120 EFFECT(0, RACER_MUZZLEFLASH,        "wakizashi_gun_muzzleflash")
121 EFFECT(0, RACER_ROCKETLAUNCH,       "wakizashi_rocket_launch")
122 EFFECT(0, RACER_ROCKET_EXPLODE,     "wakizashi_rocket_launch")
123 EFFECT(1, RACER_ROCKET_TRAIL,       "wakizashi_rocket_thrust")
124
125 EFFECT(0, SPIDERBOT_ROCKETLAUNCH,           "spiderbot_rocket_launch")
126 EFFECT(1, SPIDERBOT_ROCKET_TRAIL,           "spiderbot_rocket_thrust")
127 EFFECT(0, SPIDERBOT_ROCKET_EXPLODE,         "spiderbot_rocket_explode")
128 EFFECT(0, SPIDERBOT_MINIGUN_IMPACT,         "spiderbot_minigun_impact")
129 EFFECT(0, SPIDERBOT_MINIGUN_MUZZLEFLASH,    "spiderbot_minigun_muzzleflash")
130
131 EFFECT(0, BUMBLEBEE_HEAL_MUZZLEFLASH,   "healray_muzzleflash")
132 EFFECT(0, BUMBLEBEE_HEAL_IMPACT,        "healray_impact")
133
134 EFFECT(0, BIGPLASMA_IMPACT,         "bigplasma_impact")
135 EFFECT(0, BIGPLASMA_MUZZLEFLASH,    "bigplasma_muzzleflash")
136
137 EFFECT(0, TELEPORT,                 "teleport")
138
139 EFFECT(0, SPAWNPOINT_RED,           "spawn_point_red")
140 EFFECT(0, SPAWN_RED,                "spawn_event_red")
141 EFFECT(0, SPAWNPOINT_BLUE,          "spawn_point_blue")
142 EFFECT(0, SPAWN_BLUE,               "spawn_event_blue")
143 EFFECT(0, SPAWNPOINT_YELLOW,        "spawn_point_yellow")
144 EFFECT(0, SPAWN_YELLOW,             "spawn_event_yellow")
145 EFFECT(0, SPAWNPOINT_PINK,          "spawn_point_pink")
146 EFFECT(0, SPAWN_PINK,               "spawn_event_pink")
147 EFFECT(0, SPAWNPOINT_NEUTRAL,       "spawn_point_neutral")
148 EFFECT(0, SPAWN_NEUTRAL,            "spawn_event_neutral")
149
150 EFFECT(0, NADE_EXPLODE_RED,         "nade_red_explode")
151 EFFECT(0, NADE_EXPLODE_BLUE,        "nade_blue_explode")
152 EFFECT(0, NADE_EXPLODE_YELLOW,      "nade_yellow_explode")
153 EFFECT(0, NADE_EXPLODE_PINK,        "nade_pink_explode")
154 EFFECT(0, NADE_EXPLODE_NEUTRAL,     "nade_neutral_explode")
155 entity EFFECT_NADE_EXPLODE(int teamid)
156 {
157     switch (teamid) {
158         case NUM_TEAM_1:    return EFFECT_NADE_EXPLODE_RED;
159         case NUM_TEAM_2:    return EFFECT_NADE_EXPLODE_BLUE;
160         case NUM_TEAM_3:    return EFFECT_NADE_EXPLODE_YELLOW;
161         case NUM_TEAM_4:    return EFFECT_NADE_EXPLODE_PINK;
162         default:                    return EFFECT_NADE_EXPLODE_NEUTRAL;
163     }
164 }
165
166 EFFECT(1, NADE_TRAIL_RED,           "nade_red")
167 EFFECT(1, NADE_TRAIL_BLUE,          "nade_blue")
168 EFFECT(1, NADE_TRAIL_YELLOW,        "nade_yellow")
169 EFFECT(1, NADE_TRAIL_PINK,          "nade_pink")
170 EFFECT(1, NADE_TRAIL_NEUTRAL,       "nade_neutral")
171 entity EFFECT_NADE_TRAIL(int teamid)
172 {
173     switch (teamid) {
174         case NUM_TEAM_1:    return EFFECT_NADE_TRAIL_RED;
175         case NUM_TEAM_2:    return EFFECT_NADE_TRAIL_BLUE;
176         case NUM_TEAM_3:    return EFFECT_NADE_TRAIL_YELLOW;
177         case NUM_TEAM_4:    return EFFECT_NADE_TRAIL_PINK;
178         default:            return EFFECT_NADE_TRAIL_NEUTRAL;
179     }
180 }
181
182 EFFECT(1, NADE_TRAIL_BURN_RED,      "nade_red_burn")
183 EFFECT(1, NADE_TRAIL_BURN_BLUE,     "nade_blue_burn")
184 EFFECT(1, NADE_TRAIL_BURN_YELLOW,   "nade_yellow_burn")
185 EFFECT(1, NADE_TRAIL_BURN_PINK,     "nade_pink_burn")
186 EFFECT(1, NADE_TRAIL_BURN_NEUTRAL,  "nade_neutral_burn")
187 entity EFFECT_NADE_TRAIL_BURN(int teamid)
188 {
189     switch (teamid) {
190         case NUM_TEAM_1:    return EFFECT_NADE_TRAIL_BURN_RED;
191         case NUM_TEAM_2:    return EFFECT_NADE_TRAIL_BURN_BLUE;
192         case NUM_TEAM_3:    return EFFECT_NADE_TRAIL_BURN_YELLOW;
193         case NUM_TEAM_4:    return EFFECT_NADE_TRAIL_BURN_PINK;
194         default:            return EFFECT_NADE_TRAIL_BURN_NEUTRAL;
195     }
196 }
197
198 EFFECT(0, ICEORGLASS,               "iceorglass")
199 EFFECT(0, ICEFIELD,                 "icefield")
200 EFFECT(0, FIREFIELD,                "firefield")
201 EFFECT(0, HEALING,                  "healing_fx")
202 EFFECT(1, LASER_BEAM_FAST,          "nex242_misc_laser_beam_fast")
203 EFFECT(0, RESPAWN_GHOST,            "respawn_ghost")
204
205 EFFECT(0, FLAG_TOUCH_RED,           "redflag_touch")
206 EFFECT(0, FLAG_TOUCH_BLUE,          "blueflag_touch")
207 EFFECT(0, FLAG_TOUCH_YELLOW,        "yellowflag_touch")
208 EFFECT(0, FLAG_TOUCH_PINK,          "pinkflag_touch")
209 EFFECT(0, FLAG_TOUCH_NEUTRAL,       "neutralflag_touch")
210 entity EFFECT_FLAG_TOUCH(int teamid)
211 {
212     switch (teamid) {
213         case NUM_TEAM_1:    return EFFECT_FLAG_TOUCH_RED;
214         case NUM_TEAM_2:    return EFFECT_FLAG_TOUCH_BLUE;
215         case NUM_TEAM_3:    return EFFECT_FLAG_TOUCH_YELLOW;
216         case NUM_TEAM_4:    return EFFECT_FLAG_TOUCH_PINK;
217         default:            return EFFECT_FLAG_TOUCH_NEUTRAL;
218     }
219 }
220
221 EFFECT(1, PASS_RED,                 "red_pass")
222 EFFECT(1, PASS_BLUE,                "blue_pass")
223 EFFECT(1, PASS_YELLOW,              "yellow_pass")
224 EFFECT(1, PASS_PINK,                "pink_pass")
225 EFFECT(1, PASS_NEUTRAL,             "neutral_pass")
226 entity EFFECT_PASS(int teamid)
227 {
228     switch (teamid) {
229         case NUM_TEAM_1:    return EFFECT_PASS_RED;
230         case NUM_TEAM_2:    return EFFECT_PASS_BLUE;
231         case NUM_TEAM_3:    return EFFECT_PASS_YELLOW;
232         case NUM_TEAM_4:    return EFFECT_PASS_PINK;
233         default:            return EFFECT_PASS_NEUTRAL;
234     }
235 }
236
237 EFFECT(0, CAP_RED,                  "red_cap")
238 EFFECT(0, CAP_BLUE,                 "blue_cap")
239 EFFECT(0, CAP_YELLOW,               "yellow_cap")
240 EFFECT(0, CAP_PINK,                 "pink_cap")
241 EFFECT(0, CAP_NEUTRAL,              "neutral_cap")
242 entity EFFECT_CAP(int teamid)
243 {
244     switch (teamid) {
245         case NUM_TEAM_1:    return EFFECT_CAP_RED;
246         case NUM_TEAM_2:    return EFFECT_CAP_BLUE;
247         case NUM_TEAM_3:    return EFFECT_CAP_YELLOW;
248         case NUM_TEAM_4:    return EFFECT_CAP_PINK;
249         default:            return EFFECT_CAP_NEUTRAL;
250     }
251 }
252
253 EFFECT(0, ITEM_PICKUP,              "item_pickup")
254 EFFECT(0, ITEM_RESPAWN,             "item_respawn")
255
256 EFFECT(0, ONS_GENERATOR_DAMAGED,    "torch_small")
257 EFFECT(0, ONS_GENERATOR_GIB,        "onslaught_generator_gib_explode")
258 EFFECT(0, ONS_GENERATOR_EXPLODE,    "onslaught_generator_smallexplosion")
259 EFFECT(0, ONS_GENERATOR_EXPLODE2,   "onslaught_generator_finalexplosion")
260
261
262
263 EFFECT(0, LASER_DEADLY,             "laser_deadly")
264 EFFECT(1, FLAC_TRAIL,               "TR_SEEKER")
265 EFFECT(1, SEEKER_TRAIL,             "TR_SEEKER")
266 EFFECT(1, FIREMINE,                 "firemine")
267 EFFECT(0, BALL_SPARKS,              "kaball_sparks")
268 EFFECT(0, ELECTRIC_SPARKS,          "electricity_sparks")
269 EFFECT(0, SPARKS,                   "sparks")
270 EFFECT(0, RAGE,                     "rage")
271 EFFECT(0, SMOKING,                  "smoking")
272 EFFECT(0, SMOKE_RING,               "smoke_ring")
273 EFFECT(0, JUMPPAD,                  "jumppad_activate")
274 EFFECT(1, BULLET,                   "tr_bullet")
275 EFFECT(0, EF_FLAME,                 "EF_FLAME")
276 EFFECT(0, EF_STARDUST,              "EF_STARDUST")
277 EFFECT(0, TE_EXPLOSION,             "TE_EXPLOSION")
278 EFFECT(1, TR_NEXUIZPLASMA,          "TR_NEXUIZPLASMA")
279 EFFECT(1, TR_CRYLINKPLASMA,         "TR_CRYLINKPLASMA")
280 EFFECT(1, TR_ROCKET,                "TR_ROCKET")
281 EFFECT(1, TR_GRENADE,               "TR_GRENADE")
282 EFFECT(1, TR_BLOOD,                 "TR_BLOOD")
283 EFFECT(1, TR_WIZSPIKE,              "TR_WIZSPIKE")
284 EFFECT(1, TR_SLIGHTBLOOD,           "TR_SLIGHTBLOOD")
285 EFFECT(1, TR_KNIGHTSPIKE,           "TR_KNIGHTSPIKE")
286 EFFECT(1, TR_VORESPIKE,             "TR_VORESPIKE")
287 EFFECT(0, TE_SPARK,                 "TE_SPARK")
288
289 EFFECT(1, ROCKETMINSTA_LASER_RED,       "rocketminsta_laser_red")
290 EFFECT(1, ROCKETMINSTA_LASER_BLUE,      "rocketminsta_laser_blue")
291 EFFECT(1, ROCKETMINSTA_LASER_YELLOW,    "rocketminsta_laser_yellow")
292 EFFECT(1, ROCKETMINSTA_LASER_PINK,      "rocketminsta_laser_pink")
293 EFFECT(1, ROCKETMINSTA_LASER_NEUTRAL,   "rocketminsta_laser_neutral")
294 entity EFFECT_ROCKETMINSTA_LASER(int teamid)
295 {
296     entity e;
297     switch (teamid) {
298         case NUM_TEAM_1:    e = EFFECT_ROCKETMINSTA_LASER_RED; break;
299         case NUM_TEAM_2:    e = EFFECT_ROCKETMINSTA_LASER_BLUE; break;
300         case NUM_TEAM_3:    e = EFFECT_ROCKETMINSTA_LASER_YELLOW; break;
301         case NUM_TEAM_4:    e = EFFECT_ROCKETMINSTA_LASER_PINK; break;
302         default:            e = EFFECT_ROCKETMINSTA_LASER_NEUTRAL; break;
303     }
304     if (particleeffectnum(e) < 0 || Team_TeamToNumber(teamid) == -1) { e = EFFECT_TR_NEXUIZPLASMA; }
305     return e;
306 }