Xonotic QuakeC
The free, fast arena FPS with crisp movement and a wide array of weapons
all.inc
Go to the documentation of this file.
1#pragma once
2// Global list of effects, networked to CSQC by ID to save bandwidth and to use client particle numbers (allows mismatching effectinfos to some degree)
3// Not too concerned about the order of this list, just keep the weapon effects together!
4// XONRELEASE TODO: xonotic-v0.9.0 post-release consider improving the order of effectinfo.txt (and ./effectinfo.inc)
5
6#include "../teams.qh"
7
8// EFFECT(istrail, EFFECT_NAME, "effectinfo_string")
9EFFECT(0, EXPLOSION_SMALL, "explosion_small")
10EFFECT(0, EXPLOSION_MEDIUM, "explosion_medium")
11EFFECT(0, EXPLOSION_BIG, "explosion_big")
12
13EFFECT(0, SMOKE_SMALL, "smoke_small")
14EFFECT(0, SMOKE_LARGE, "smoke_large")
15
16
17EFFECT(0, ARC_MUZZLEFLASH, "electro_muzzleflash")
18
19EFFECT(0, BLASTER_IMPACT, "laser_impact")
20EFFECT(0, BLASTER_MUZZLEFLASH, "laser_muzzleflash")
21EFFECT(1, BLASTER, "tr_laser")
22
23EFFECT(0, SHOTGUN_IMPACT, "shotgun_impact")
24EFFECT(0, SHOTGUN_MUZZLEFLASH, "shotgun_muzzleflash")
25EFFECT(0, SHOTGUN_WOOSH, "shotgun_woosh")
26
27EFFECT(0, ARC_BEAM, "arc_beam")
28EFFECT(0, ARC_BEAM_HEAL, "arc_beam_heal")
29EFFECT(0, ARC_BEAM_HEAL_IMPACT, "arc_beam_healimpact")
30EFFECT(0, ARC_BEAM_HEAL_IMPACT2, "healray_impact")
31// TODO: effect needs updating
32//EFFECT(0, ARC_BOLT_EXPLODE, "arc_bolt_explode")
33EFFECT(0, ARC_OVERHEAT, "arc_overheat")
34EFFECT(0, ARC_OVERHEAT_FIRE, "arc_overheat_fire")
35EFFECT(0, ARC_SMOKE, "arc_smoke")
36EFFECT(0, ARC_LIGHTNING, "arc_lightning")
37//EFFECT(0, ARC_LIGHTNING2, "electro_lightning")
38
39EFFECT(0, MACHINEGUN_IMPACT, "machinegun_impact")
40EFFECT(0, MACHINEGUN_MUZZLEFLASH, "uzi_muzzleflash")
41
42EFFECT(0, GRENADE_EXPLODE, "grenade_explode")
43EFFECT(0, GRENADE_MUZZLEFLASH, "grenadelauncher_muzzleflash")
44
45EFFECT(0, ELECTRO_BALLEXPLODE, "electro_ballexplode")
46EFFECT(0, ELECTRO_COMBO, "electro_combo")
47EFFECT(0, ELECTRO_IMPACT, "electro_impact")
48EFFECT(0, ELECTRO_MUZZLEFLASH, "electro_muzzleflash")
49
50EFFECT(0, CRYLINK_IMPACT, "crylink_impactbig")
51EFFECT(0, CRYLINK_IMPACT2, "crylink_impact")
52EFFECT(0, CRYLINK_JOINEXPLODE, "crylink_joinexplode")
53EFFECT(0, CRYLINK_MUZZLEFLASH, "crylink_muzzleflash")
54
55// XONRELEASE TODO: xonotic-v0.9.0 post-release rename GREEN_HLAC* to HLAC*
56// see also common/weapons/weapon/hlac.q*
57EFFECT(0, GREEN_HLAC_IMPACT, "hlac_impact")
58EFFECT(0, GREEN_HLAC_MUZZLEFLASH, "hlac_muzzleflash")
59EFFECT(1, GREEN_HLAC, "tr_hlac")
60
61EFFECT(0, VORTEX_BEAM, "nex_beam")
62EFFECT(0, VORTEX_BEAM_OLD, "TE_TEI_G3")
63EFFECT(0, VORTEX_IMPACT, "nex_impact")
64EFFECT(0, VORTEX_MUZZLEFLASH, "nex_muzzleflash")
65
66// XONRELEASE TODO: xonotic-v0.9.0 post-release remove the effect definitions from effectinfo.txt
67//EFFECT(1, VAPORIZER_RED, "TE_TEI_G3RED")
68//EFFECT(1, VAPORIZER_HIT_RED, "TE_TEI_G3RED_HIT")
69//EFFECT(1, VAPORIZER_BLUE, "TE_TEI_G3BLUE")
70//EFFECT(1, VAPORIZER_HIT_BLUE, "TE_TEI_G3BLUE_HIT")
71//EFFECT(1, VAPORIZER_YELLOW, "TE_TEI_G3YELLOW")
72//EFFECT(1, VAPORIZER_HIT_YELLOW, "TE_TEI_G3YELLOW_HIT")
73//EFFECT(1, VAPORIZER_PINK, "TE_TEI_G3PINK")
74//EFFECT(1, VAPORIZER_HIT_PINK, "TE_TEI_G3PINK_HIT")
75EFFECT(1, VAPORIZER_BEAM, "TE_TEI_G3")
76EFFECT(1, VAPORIZER_BEAM_HIT, "TE_TEI_G3_HIT")
77
78EFFECT(0, RIFLE_IMPACT, "machinegun_impact")
79EFFECT(0, RIFLE_MUZZLEFLASH, "rifle_muzzleflash")
80EFFECT(1, RIFLE, "tr_rifle")
81EFFECT(1, RIFLE_WEAK, "tr_rifle_weak")
82
83EFFECT(0, HAGAR_BOUNCE, "hagar_bounce")
84EFFECT(0, HAGAR_EXPLODE, "hagar_explode")
85EFFECT(0, HAGAR_MUZZLEFLASH, "hagar_muzzleflash")
86EFFECT(1, HAGAR_ROCKET, "tr_hagar")
87
88EFFECT(0, ROCKET_EXPLODE, "rocket_explode")
89EFFECT(0, ROCKET_GUIDE, "rocket_guide")
90EFFECT(0, ROCKET_MUZZLEFLASH, "rocketlauncher_muzzleflash")
91
92EFFECT(0, HOOK_EXPLODE, "hookbomb_explode")
93EFFECT(0, HOOK_IMPACT, "grapple_impact")
94EFFECT(0, HOOK_MUZZLEFLASH, "grapple_muzzleflash")
95
96EFFECT(0, SEEKER_EXPLODE, "seeker_explode")
97EFFECT(0, SEEKER_MUZZLEFLASH, "seeker_muzzleflash")
98EFFECT(0, SEEKER_TAG_IMPACT, "tag_impact")
99EFFECT(1, SEEKER_TAG, "tr_tag")
100EFFECT(1, SEEKER_MISSILE, "TR_SEEKER")
101EFFECT(1, SEEKER_FLAC, "TR_SEEKER")
102
103EFFECT(1, FIREBALL, "fireball")
104EFFECT(0, FIREBALL_BFGDAMAGE, "fireball_bfgdamage")
105EFFECT(0, FIREBALL_EXPLODE, "fireball_explode")
106EFFECT(0, FIREBALL_LASER, "fireball_laser")
107EFFECT(0, FIREBALL_MUZZLEFLASH, "fireball_muzzleflash")
108EFFECT(0, FIREBALL_PRE_MUZZLEFLASH, "fireball_preattack_muzzleflash")
109
110EFFECT(0, HMG_MUZZLEFLASH, "hmg_muzzleflash")
111
112
113
114EFFECT(0, RAPTOR_CANNON_IMPACT, "raptor_cannon_impact")
115EFFECT(0, RAPTOR_BOMB_IMPACT, "raptor_bomb_impact")
116EFFECT(0, RAPTOR_BOMB_SPREAD, "raptor_bomb_spread")
117EFFECT(0, RAPTOR_MUZZLEFLASH, "raptor_cannon_muzzleflash")
118
119EFFECT(0, RACER_BOOSTER, "wakizashi_booster_smoke")
120EFFECT(0, RACER_IMPACT, "wakizashi_gun_impact")
121EFFECT(0, RACER_MUZZLEFLASH, "wakizashi_gun_muzzleflash")
122EFFECT(0, RACER_ROCKETLAUNCH, "wakizashi_rocket_launch")
123EFFECT(0, RACER_ROCKET_EXPLODE, "wakizashi_rocket_explode")
124EFFECT(1, RACER_ROCKET_TRAIL, "wakizashi_rocket_thrust")
125
126EFFECT(0, SPIDERBOT_ROCKETLAUNCH, "spiderbot_rocket_launch")
127EFFECT(1, SPIDERBOT_ROCKET_TRAIL, "spiderbot_rocket_thrust")
128EFFECT(0, SPIDERBOT_ROCKET_EXPLODE, "spiderbot_rocket_explode")
129EFFECT(0, SPIDERBOT_MINIGUN_IMPACT, "spiderbot_minigun_impact")
130EFFECT(0, SPIDERBOT_MINIGUN_MUZZLEFLASH, "spiderbot_minigun_muzzleflash")
131
132EFFECT(0, BUMBLEBEE_HEAL_MUZZLEFLASH, "healray_muzzleflash")
133EFFECT(0, BUMBLEBEE_HEAL_IMPACT, "healray_impact")
134
135EFFECT(0, BIGPLASMA_IMPACT, "bigplasma_impact")
136EFFECT(0, BIGPLASMA_MUZZLEFLASH, "bigplasma_muzzleflash")
137
138EFFECT(0, TELEPORT, "teleport")
139
140// TODO: remove the effect definitions from effectinfo.txt post-release (xonotic-v0.9.0)
141//EFFECT(0, SPAWNPOINT_RED, "spawn_point_red")
142//EFFECT(0, SPAWNPOINT_BLUE, "spawn_point_blue")
143//EFFECT(0, SPAWNPOINT_YELLOW, "spawn_point_yellow")
144//EFFECT(0, SPAWNPOINT_PINK, "spawn_point_pink")
145//EFFECT(0, SPAWN_RED, "spawn_event_red")
146//EFFECT(0, SPAWN_BLUE, "spawn_event_blue")
147//EFFECT(0, SPAWN_YELLOW, "spawn_event_yellow")
148//EFFECT(0, SPAWN_PINK, "spawn_event_pink")
149//EFFECT(0, SPAWN_GREEN, "spawn_event_green")
150//EFFECT(0, SPAWN_BROWN, "spawn_event_brown")
151//EFFECT(0, SPAWN_PURPLE, "spawn_event_purple")
152EFFECT(0, SPAWNPOINT, "spawn_point_neutral")
153EFFECT(0, SPAWN, "spawn_event_neutral")
154
155EFFECT(0, DARKFIELD, "darkfield")
156EFFECT(0, ICEORGLASS, "iceorglass")
157EFFECT(0, ICEFIELD, "icefield")
158EFFECT(0, FIREFIELD, "firefield")
159EFFECT(0, HEALING, "healing_fx")
160EFFECT(0, VAMPIRE, "vampire_fx")
161EFFECT(0, VENGEANCE, "vengeance_fx")
162EFFECT(0, ARMOR_REPAIR, "armorrepair_fx")
163EFFECT(0, AMMO_REGEN, "ammoregen_fx")
164EFFECT(0, MAGNET, "magnet_fx")
165EFFECT(0, SWAPPER, "swapper")
166EFFECT(1, LASER_BEAM_FAST, "nex242_misc_laser_beam_fast")
167EFFECT(0, RESPAWN_GHOST, "respawn_ghost")
168
169// TODO: ctf effects are server side (BAD)
170EFFECT(0, FLAG_TOUCH_RED, "redflag_touch")
171EFFECT(0, FLAG_TOUCH_BLUE, "blueflag_touch")
172EFFECT(0, FLAG_TOUCH_YELLOW, "yellowflag_touch")
173EFFECT(0, FLAG_TOUCH_PINK, "pinkflag_touch")
174EFFECT(0, FLAG_TOUCH_NEUTRAL, "neutralflag_touch")
176{
177 switch (teamid) {
178 case NUM_TEAM_1: return EFFECT_FLAG_TOUCH_RED;
179 case NUM_TEAM_2: return EFFECT_FLAG_TOUCH_BLUE;
180 case NUM_TEAM_3: return EFFECT_FLAG_TOUCH_YELLOW;
181 case NUM_TEAM_4: return EFFECT_FLAG_TOUCH_PINK;
182 default: return EFFECT_FLAG_TOUCH_NEUTRAL;
183 }
184}
185
186EFFECT(1, PASS_RED, "red_pass")
187EFFECT(1, PASS_BLUE, "blue_pass")
188EFFECT(1, PASS_YELLOW, "yellow_pass")
189EFFECT(1, PASS_PINK, "pink_pass")
190EFFECT(1, PASS_NEUTRAL, "neutral_pass")
192{
193 switch (teamid) {
194 case NUM_TEAM_1: return EFFECT_PASS_RED;
195 case NUM_TEAM_2: return EFFECT_PASS_BLUE;
196 case NUM_TEAM_3: return EFFECT_PASS_YELLOW;
197 case NUM_TEAM_4: return EFFECT_PASS_PINK;
198 default: return EFFECT_PASS_NEUTRAL;
199 }
200}
201
202EFFECT(0, CAP_RED, "red_cap")
203EFFECT(0, CAP_BLUE, "blue_cap")
204EFFECT(0, CAP_YELLOW, "yellow_cap")
205EFFECT(0, CAP_PINK, "pink_cap")
206EFFECT(0, CAP_NEUTRAL, "neutral_cap")
208{
209 switch (teamid) {
210 case NUM_TEAM_1: return EFFECT_CAP_RED;
211 case NUM_TEAM_2: return EFFECT_CAP_BLUE;
212 case NUM_TEAM_3: return EFFECT_CAP_YELLOW;
213 case NUM_TEAM_4: return EFFECT_CAP_PINK;
214 default: return EFFECT_CAP_NEUTRAL;
215 }
216}
217
218EFFECT(0, ITEM_PICKUP, "item_pickup")
219EFFECT(0, ITEM_RESPAWN, "item_respawn")
220EFFECT(0, ITEM_DESPAWN, "item_despawn")
221EFFECT(0, ITEM_TELEPORT, "item_teleport")
222
223// FIXME: needs custom effect
224EFFECT(0, ONS_ELECTRICITY_EXPLODE, "electro_ballexplode")
225EFFECT(0, ONS_GENERATOR_DAMAGED, "torch_small")
226EFFECT(0, ONS_GENERATOR_GIB, "onslaught_generator_gib_explode")
227EFFECT(0, ONS_GENERATOR_EXPLODE, "onslaught_generator_smallexplosion")
228EFFECT(0, ONS_GENERATOR_EXPLODE2, "onslaught_generator_finalexplosion")
229// FIXME: needs custom effect
230EFFECT(0, ONS_SHOCKWAVE, "electro_combo")
231
232EFFECT(0, DOM_CAPTURE, "dom_capture")
233
234
235EFFECT(0, LASER_DEADLY, "laser_deadly")
236EFFECT(1, FIREMINE, "firemine")
237EFFECT(0, BALL_SPARKS, "kaball_sparks")
238EFFECT(0, ELECTRIC_SPARKS, "electricity_sparks")
239EFFECT(0, SPARKS, "sparks")
240EFFECT(0, RAGE, "rage")
241EFFECT(0, SMOKING, "smoking")
242EFFECT(0, SMOKE_RING, "smoke_ring")
243EFFECT(0, JUMPPAD, "jumppad_activate")
244EFFECT(1, BULLET, "tr_bullet")
245EFFECT(1, BULLET_WEAK, "tr_bullet_weak")
246EFFECT(0, EF_SHOCK, "EF_SHOCK")
247EFFECT(1, EF_SPEED, "EF_SPEED")
248EFFECT(0, EF_FLAME, "EF_FLAME")
249EFFECT(0, EF_STARDUST, "EF_STARDUST")
250EFFECT(0, TE_EXPLOSION, "TE_EXPLOSION")
251EFFECT(1, TR_NEXUIZPLASMA, "TR_NEXUIZPLASMA")
252EFFECT(1, TR_CRYLINKPLASMA, "TR_CRYLINKPLASMA")
253EFFECT(1, TR_ROCKET, "TR_ROCKET")
254EFFECT(1, TR_GRENADE, "TR_GRENADE")
255EFFECT(1, TR_BLOOD, "TR_BLOOD")
256EFFECT(1, TR_WIZSPIKE, "TR_WIZSPIKE")
257EFFECT(1, TR_SLIGHTBLOOD, "TR_SLIGHTBLOOD")
258EFFECT(1, TR_KNIGHTSPIKE, "TR_KNIGHTSPIKE")
259EFFECT(1, TR_VORESPIKE, "TR_VORESPIKE")
260EFFECT(0, TE_SPARK, "TE_SPARK")
261
262// TODO: remove the effect definitions from effectinfo.txt post-release (xonotic-v0.9.0)
263//EFFECT(1, ROCKETMINSTA_LASER_RED, "rocketminsta_laser_red")
264//EFFECT(1, ROCKETMINSTA_LASER_BLUE, "rocketminsta_laser_blue")
265//EFFECT(1, ROCKETMINSTA_LASER_YELLOW, "rocketminsta_laser_yellow")
266//EFFECT(1, ROCKETMINSTA_LASER_PINK, "rocketminsta_laser_pink")
267EFFECT(1, ROCKETMINSTA_LASER, "rocketminsta_laser_neutral")
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
const int EF_SPEED
Definition constants.qh:96
const int EF_SHOCK
Definition constants.qh:95
const float EF_STARDUST
const float TE_EXPLOSION
const float EF_FLAME
entity EFFECT_CAP(int teamid)
Definition all.inc:207
entity EFFECT_PASS(int teamid)
Definition all.inc:191
entity EFFECT_FLAG_TOUCH(int teamid)
Definition all.inc:175
#define EFFECT(istrail, name, realname)
Definition all.qh:14
const int NUM_TEAM_2
Definition teams.qh:14
const int NUM_TEAM_4
Definition teams.qh:16
const int NUM_TEAM_3
Definition teams.qh:15
const int NUM_TEAM_1
Definition teams.qh:13