4 .int eent_net_name; // id
5 .vector eent_net_location;
6 .vector eent_net_velocity;
12 void Read_Effect(bool is_new);
14 void Send_Effect(string eff_name, vector eff_loc, vector eff_vel, int eff_cnt);
17 const int EFFECT_FIRST = 1;
20 const int MAX_EFFECTS = 512;
21 entity effects_ent[MAX_EFFECTS];
23 void Create_Effect_Entity(int eff_name, string eff_string, int eff_trail);
25 #define EFFECT(istrail,name,realname) \
27 void RegisterEffect_##name() \
29 SET_FIELD_COUNT(name, EFFECT_FIRST, EFFECT_COUNT) \
30 CHECK_MAX_COUNT(name, MAX_EFFECTS, EFFECT_COUNT, "EFFECT") \
31 Create_Effect_Entity(name, realname, istrail); \
33 ACCUMULATE_FUNCTION(RegisterEffects, RegisterEffect_##name);
35 void RegisterEffects_First()
38 #define dedi (server_is_dedicated ? "a dedicated " : "")
43 LOG_TRACEF("Beginning effect initialization on %s%s program...\n", dedi, PROGNAME);
47 void RegisterEffects_Done()
49 LOG_TRACE("Effects initialization successful!\n");
52 // NOW we actually activate the declarations
53 ACCUMULATE_FUNCTION(RegisterEffects, RegisterEffects_First);
54 #include "effects.inc"
55 ACCUMULATE_FUNCTION(RegisterEffects, RegisterEffects_Done);