--- /dev/null
+// Global list of effects, networked to CSQC by ID to save bandwidth and to use client particle numbers (allows mismatching effectinfos to some degree)
+// Not too concerned about the order of this list, just keep the weapon effects together!
+
+// EFFECT(istrail, EFFECT_NAME, "effectinfo_string")
+EFFECT(0, EFFECT_EXPLOSION_SMALL, "explosion_small")
+EFFECT(0, EFFECT_EXPLOSION_MEDIUM, "explosion_medium")
+EFFECT(0, EFFECT_EXPLOSION_BIG, "explosion_big")
+EFFECT(1, EFFECT_VAPORIZER_RED, "TE_TEI_G3RED")
+EFFECT(1, EFFECT_VAPORIZER_RED_HIT, "TE_TEI_G3RED_HIT")
+EFFECT(1, EFFECT_VAPORIZER_BLUE, "TE_TEI_G3BLUE")
+EFFECT(1, EFFECT_VAPORIZER_BLUE_HIT, "TE_TEI_G3BLUE_HIT")
+EFFECT(1, EFFECT_VAPORIZER_YELLOW, "TE_TEI_G3YELLOW")
+EFFECT(1, EFFECT_VAPORIZER_YELLOW_HIT, "TE_TEI_G3YELLOW_HIT")
+EFFECT(1, EFFECT_VAPORIZER_PINK, "TE_TEI_G3PINK")
+EFFECT(1, EFFECT_VAPORIZER_PINK_HIT, "TE_TEI_G3PINK_HIT")
+EFFECT(1, EFFECT_VAPORIZER_NEUTRAL, "TE_TEI_G3NEUTRAL")
+EFFECT(1, EFFECT_VAPORIZER_NEUTRAL_HIT, "TE_TEI_G3NEUTRAL_HIT")
+EFFECT(0, EFFECT_ELECTRO_COMBO, "electro_combo")
+EFFECT(0, EFFECT_ELECTRO_IMPACT, "electro_impact")
+EFFECT(0, EFFECT_ELECTRO_MUZZLEFLASH, "electro_muzzleflash")
+EFFECT(0, EFFECT_HAGAR_BOUNCE, "hagar_bounce")
+EFFECT(0, EFFECT_HAGAR_MUZZLEFLASH, "hagar_muzzleflash")
+EFFECT(0, EFFECT_LASER_MUZZLEFLASH, "laser_muzzleflash")
+EFFECT(0, EFFECT_MACHINEGUN_MUZZLEFLASH, "uzi_muzzleflash")
+EFFECT(0, EFFECT_RIFLE_MUZZLEFLASH, "rifle_muzzleflash")
+EFFECT(0, EFFECT_RAPTOR_MUZZLEFLASH, "raptor_cannon_muzzleflash")
+EFFECT(0, EFFECT_RACER_MUZZLEFLASH, "wakizashi_gun_muzzleflash")
+EFFECT(0, EFFECT_RACER_ROCKETLAUNCH, "wakizashi_rocket_launch")
+EFFECT(0, EFFECT_SPIDERBOT_ROCKETLAUNCH, "spiderbot_rocket_launch")
+EFFECT(0, EFFECT_BIGPLASMA_MUZZLEFLASH, "bigplasma_muzzleflash")
+EFFECT(1, EFFECT_RIFLE, "tr_rifle")
+EFFECT(1, EFFECT_RIFLE_WEAK, "tr_rifle_weak")
+EFFECT(0, EFFECT_SEEKER_MUZZLEFLASH, "seeker_muzzleflash")
+EFFECT(0, EFFECT_SHOTGUN_MUZZLEFLASH, "shotgun_muzzleflash")
+EFFECT(0, EFFECT_GRENADE_MUZZLEFLASH, "grenadelauncher_muzzleflash")
+EFFECT(0, EFFECT_GRENADE_EXPLODE, "grenade_explode")
+EFFECT(0, EFFECT_FLAK_BOUNCE, "flak_bounce")
+EFFECT(0, EFFECT_CRYLINK_JOINEXPLODE, "crylink_joinexplode")
+EFFECT(0, EFFECT_CRYLINK_MUZZLEFLASH, "crylink_muzzleflash")
+EFFECT(0, EFFECT_VORTEX_MUZZLEFLASH, "nex_muzzleflash")
+EFFECT(0, EFFECT_HOOK_MUZZLEFLASH, "grapple_muzzleflash")
+EFFECT(0, EFFECT_HOOK_IMPACT, "grapple_impact")
+EFFECT(0, EFFECT_ROCKET_EXPLODE, "rocket_explode")
+EFFECT(0, EFFECT_ROCKET_GUIDE, "rocket_guide")
+EFFECT(0, EFFECT_ROCKET_MUZZLEFLASH, "rocketlauncher_muzzleflash")
+EFFECT(0, EFFECT_FIREBALL_LASER, "fireball_laser")
+EFFECT(0, EFFECT_FIREBALL_EXPLODE, "fireball_explode")
+EFFECT(0, EFFECT_FIREBALL_BFGDAMAGE, "fireball_bfgdamage")
+EFFECT(0, EFFECT_FIREBALL_MUZZLEFLASH, "fireball_muzzleflash")
+EFFECT(0, EFFECT_FIREBALL_PRE_MUZZLEFLASH, "fireball_preattack_muzzleflash")
+EFFECT(0, EFFECT_TELEPORT, "teleport")
+EFFECT(0, EFFECT_SPAWN_RED, "spawn_event_red")
+EFFECT(0, EFFECT_SPAWN_BLUE, "spawn_event_blue")
+EFFECT(0, EFFECT_SPAWN_YELLOW, "spawn_event_yellow")
+EFFECT(0, EFFECT_SPAWN_PINK, "spawn_event_pink")
+EFFECT(0, EFFECT_SPAWN_NEUTRAL, "spawn_event_neutral")
+EFFECT(0, EFFECT_NADE_RED_EXPLODE, "nade_red_explode")
+EFFECT(0, EFFECT_NADE_BLUE_EXPLODE, "nade_blue_explode")
+EFFECT(0, EFFECT_NADE_YELLOW_EXPLODE, "nade_yellow_explode")
+EFFECT(0, EFFECT_NADE_PINK_EXPLODE, "nade_pink_explode")
+EFFECT(0, EFFECT_NADE_NEUTRAL_EXPLODE, "nade_neutral_explode")
+EFFECT(0, EFFECT_ICEORGLASS, "iceorglass")
+EFFECT(0, EFFECT_ICEFIELD, "icefield")
+EFFECT(0, EFFECT_FIREFIELD, "firefield")
+EFFECT(0, EFFECT_HEALING, "healing_fx")
+EFFECT(1, EFFECT_LASER_BEAM_FAST, "nex242_misc_laser_beam_fast")
+EFFECT(0, EFFECT_RESPAWN_GHOST, "respawn_ghost")
+EFFECT(0, EFFECT_FLAG_RED_TOUCH, "redflag_touch")
+EFFECT(0, EFFECT_FLAG_BLUE_TOUCH, "blueflag_touch")
+EFFECT(0, EFFECT_FLAG_YELLOW_TOUCH, "yellowflag_touch")
+EFFECT(0, EFFECT_FLAG_PINK_TOUCH, "pinkflag_touch")
+EFFECT(0, EFFECT_FLAG_NEUTRAL_TOUCH, "neutralflag_touch")
+EFFECT(1, EFFECT_RED_PASS, "red_pass")
+EFFECT(1, EFFECT_BLUE_PASS, "blue_pass")
+EFFECT(1, EFFECT_YELLOW_PASS, "yellow_pass")
+EFFECT(1, EFFECT_PINK_PASS, "pink_pass")
+EFFECT(1, EFFECT_NEUTRAL_PASS, "neutral_pass")
+EFFECT(0, EFFECT_RED_CAP, "red_cap")
+EFFECT(0, EFFECT_BLUE_CAP, "blue_cap")
+EFFECT(0, EFFECT_YELLOW_CAP, "yellow_cap")
+EFFECT(0, EFFECT_PINK_CAP, "pink_cap")
+EFFECT(0, EFFECT_BALL_SPARKS, "kaball_sparks")
+EFFECT(0, EFFECT_ELECTRIC_SPARKS, "electricity_sparks")
+EFFECT(0, EFFECT_SPARKS, "sparks")
+EFFECT(0, EFFECT_RAGE, "rage")
+EFFECT(0, EFFECT_SMOKING, "smoking")
+EFFECT(0, EFFECT_SMOKE_RING, "smoke_ring")
+EFFECT(0, EFFECT_ITEM_PICKUP, "item_pickup")
+EFFECT(0, EFFECT_ITEM_RESPAWN, "item_respawn")
+EFFECT(0, EFFECT_JUMPPAD, "jumppad_activate")
+EFFECT(1, EFFECT_BULLET, "tr_bullet")
#ifndef P_EFFECTS_H
#define P_EFFECTS_H
-// Global list of effects, networked to CSQC by ID to save bandwidth and to use client particle numbers (allows mismatching effectinfos to some degree)
-// Not too concerned about the order of this list, just keep the weapon effects together!
-
-// EFFECT(istrail, EFFECT_NAME, "effectinfo_string")
-#define EFFECTS \
- EFFECT(0, EFFECT_EXPLOSION_SMALL, "explosion_small") \
- EFFECT(0, EFFECT_EXPLOSION_MEDIUM, "explosion_medium") \
- EFFECT(0, EFFECT_EXPLOSION_BIG, "explosion_big") \
- EFFECT(1, EFFECT_VAPORIZER_RED, "TE_TEI_G3RED") \
- EFFECT(1, EFFECT_VAPORIZER_RED_HIT, "TE_TEI_G3RED_HIT") \
- EFFECT(1, EFFECT_VAPORIZER_BLUE, "TE_TEI_G3BLUE") \
- EFFECT(1, EFFECT_VAPORIZER_BLUE_HIT, "TE_TEI_G3BLUE_HIT") \
- EFFECT(1, EFFECT_VAPORIZER_YELLOW, "TE_TEI_G3YELLOW") \
- EFFECT(1, EFFECT_VAPORIZER_YELLOW_HIT, "TE_TEI_G3YELLOW_HIT") \
- EFFECT(1, EFFECT_VAPORIZER_PINK, "TE_TEI_G3PINK") \
- EFFECT(1, EFFECT_VAPORIZER_PINK_HIT, "TE_TEI_G3PINK_HIT") \
- EFFECT(1, EFFECT_VAPORIZER_NEUTRAL, "TE_TEI_G3NEUTRAL") \
- EFFECT(1, EFFECT_VAPORIZER_NEUTRAL_HIT, "TE_TEI_G3NEUTRAL_HIT") \
- EFFECT(0, EFFECT_ELECTRO_COMBO, "electro_combo") \
- EFFECT(0, EFFECT_ELECTRO_IMPACT, "electro_impact") \
- EFFECT(0, EFFECT_ELECTRO_MUZZLEFLASH, "electro_muzzleflash") \
- EFFECT(0, EFFECT_HAGAR_BOUNCE, "hagar_bounce") \
- EFFECT(0, EFFECT_HAGAR_MUZZLEFLASH, "hagar_muzzleflash") \
- EFFECT(0, EFFECT_LASER_MUZZLEFLASH, "laser_muzzleflash") \
- EFFECT(0, EFFECT_MACHINEGUN_MUZZLEFLASH, "uzi_muzzleflash") \
- EFFECT(0, EFFECT_RIFLE_MUZZLEFLASH, "rifle_muzzleflash") \
- EFFECT(0, EFFECT_RAPTOR_MUZZLEFLASH, "raptor_cannon_muzzleflash") \
- EFFECT(0, EFFECT_RACER_MUZZLEFLASH, "wakizashi_gun_muzzleflash") \
- EFFECT(0, EFFECT_RACER_ROCKETLAUNCH, "wakizashi_rocket_launch") \
- EFFECT(0, EFFECT_SPIDERBOT_ROCKETLAUNCH, "spiderbot_rocket_launch") \
- EFFECT(0, EFFECT_BIGPLASMA_MUZZLEFLASH, "bigplasma_muzzleflash") \
- EFFECT(1, EFFECT_RIFLE, "tr_rifle") \
- EFFECT(1, EFFECT_RIFLE_WEAK, "tr_rifle_weak") \
- EFFECT(0, EFFECT_SEEKER_MUZZLEFLASH, "seeker_muzzleflash") \
- EFFECT(0, EFFECT_SHOTGUN_MUZZLEFLASH, "shotgun_muzzleflash") \
- EFFECT(0, EFFECT_GRENADE_MUZZLEFLASH, "grenadelauncher_muzzleflash") \
- EFFECT(0, EFFECT_GRENADE_EXPLODE, "grenade_explode") \
- EFFECT(0, EFFECT_FLAK_BOUNCE, "flak_bounce") \
- EFFECT(0, EFFECT_CRYLINK_JOINEXPLODE, "crylink_joinexplode") \
- EFFECT(0, EFFECT_CRYLINK_MUZZLEFLASH, "crylink_muzzleflash") \
- EFFECT(0, EFFECT_VORTEX_MUZZLEFLASH, "nex_muzzleflash") \
- EFFECT(0, EFFECT_HOOK_MUZZLEFLASH, "grapple_muzzleflash") \
- EFFECT(0, EFFECT_HOOK_IMPACT, "grapple_impact") \
- EFFECT(0, EFFECT_ROCKET_EXPLODE, "rocket_explode") \
- EFFECT(0, EFFECT_ROCKET_GUIDE, "rocket_guide") \
- EFFECT(0, EFFECT_ROCKET_MUZZLEFLASH, "rocketlauncher_muzzleflash") \
- EFFECT(0, EFFECT_FIREBALL_LASER, "fireball_laser") \
- EFFECT(0, EFFECT_FIREBALL_EXPLODE, "fireball_explode") \
- EFFECT(0, EFFECT_FIREBALL_BFGDAMAGE, "fireball_bfgdamage") \
- EFFECT(0, EFFECT_FIREBALL_MUZZLEFLASH, "fireball_muzzleflash") \
- EFFECT(0, EFFECT_FIREBALL_PRE_MUZZLEFLASH, "fireball_preattack_muzzleflash") \
- EFFECT(0, EFFECT_TELEPORT, "teleport") \
- EFFECT(0, EFFECT_SPAWN_RED, "spawn_event_red") \
- EFFECT(0, EFFECT_SPAWN_BLUE, "spawn_event_blue") \
- EFFECT(0, EFFECT_SPAWN_YELLOW, "spawn_event_yellow") \
- EFFECT(0, EFFECT_SPAWN_PINK, "spawn_event_pink") \
- EFFECT(0, EFFECT_SPAWN_NEUTRAL, "spawn_event_neutral") \
- EFFECT(0, EFFECT_NADE_RED_EXPLODE, "nade_red_explode") \
- EFFECT(0, EFFECT_NADE_BLUE_EXPLODE, "nade_blue_explode") \
- EFFECT(0, EFFECT_NADE_YELLOW_EXPLODE, "nade_yellow_explode") \
- EFFECT(0, EFFECT_NADE_PINK_EXPLODE, "nade_pink_explode") \
- EFFECT(0, EFFECT_NADE_NEUTRAL_EXPLODE, "nade_neutral_explode") \
- EFFECT(0, EFFECT_ICEORGLASS, "iceorglass") \
- EFFECT(0, EFFECT_ICEFIELD, "icefield") \
- EFFECT(0, EFFECT_FIREFIELD, "firefield") \
- EFFECT(0, EFFECT_HEALING, "healing_fx") \
- EFFECT(1, EFFECT_LASER_BEAM_FAST, "nex242_misc_laser_beam_fast") \
- EFFECT(0, EFFECT_RESPAWN_GHOST, "respawn_ghost") \
- EFFECT(0, EFFECT_FLAG_RED_TOUCH, "redflag_touch") \
- EFFECT(0, EFFECT_FLAG_BLUE_TOUCH, "blueflag_touch") \
- EFFECT(0, EFFECT_FLAG_YELLOW_TOUCH, "yellowflag_touch") \
- EFFECT(0, EFFECT_FLAG_PINK_TOUCH, "pinkflag_touch") \
- EFFECT(0, EFFECT_FLAG_NEUTRAL_TOUCH, "neutralflag_touch") \
- EFFECT(1, EFFECT_RED_PASS, "red_pass") \
- EFFECT(1, EFFECT_BLUE_PASS, "blue_pass") \
- EFFECT(1, EFFECT_YELLOW_PASS, "yellow_pass") \
- EFFECT(1, EFFECT_PINK_PASS, "pink_pass") \
- EFFECT(1, EFFECT_NEUTRAL_PASS, "neutral_pass") \
- EFFECT(0, EFFECT_RED_CAP, "red_cap") \
- EFFECT(0, EFFECT_BLUE_CAP, "blue_cap") \
- EFFECT(0, EFFECT_YELLOW_CAP, "yellow_cap") \
- EFFECT(0, EFFECT_PINK_CAP, "pink_cap") \
- EFFECT(0, EFFECT_BALL_SPARKS, "kaball_sparks") \
- EFFECT(0, EFFECT_ELECTRIC_SPARKS, "electricity_sparks") \
- EFFECT(0, EFFECT_SPARKS, "sparks") \
- EFFECT(0, EFFECT_RAGE, "rage") \
- EFFECT(0, EFFECT_SMOKING, "smoking") \
- EFFECT(0, EFFECT_SMOKE_RING, "smoke_ring") \
- EFFECT(0, EFFECT_ITEM_PICKUP, "item_pickup") \
- EFFECT(0, EFFECT_ITEM_RESPAWN, "item_respawn") \
- EFFECT(0, EFFECT_JUMPPAD, "jumppad_activate") \
- EFFECT(1, EFFECT_BULLET, "tr_bullet")
-
-
-
-
-// --------------------
-// --------------------------
-// -----------------------------------
-// ------------------------------------------|
-// some stuff you don't need to care about...|
-// ------------------------------------------|
-// -----------------------------------
-// --------------------------
-// --------------------
.int eent_net_name; // id
.vector eent_net_location;
// NOW we actually activate the declarations
ACCUMULATE_FUNCTION(RegisterEffects, RegisterEffects_First);
-EFFECTS
+#include "effects.inc"
ACCUMULATE_FUNCTION(RegisterEffects, RegisterEffects_Done);
#undef EFFECT