W_Electro_TriggerCombo(this.origin, WEP_CVAR(electro, combo_comboradius), this.realowner);
this.event_damage = func_null;
+ this.velocity = this.movedir; // particle fx and decals need .velocity
+ if(WEP_CVAR(electro, combo_duration))
+ {
+ this.projectiledeathtype = WEP_ELECTRO.m_id | HITTYPE_SPLASH;
+ this.event_damage = func_null;
+ settouch(this, func_null);
+ this.effects |= EF_NODRAW;
+
+ setthink(this, W_Electro_ExplodeComboThink);
+ this.nextthink = time;
+ this.dmg = WEP_CVAR(electro, combo_damage);
+ this.dmg_edge = WEP_CVAR(electro, combo_edgedamage);
+ this.dmg_radius = WEP_CVAR(electro, combo_radius);
+ this.dmg_force = WEP_CVAR(electro, combo_force);
+ this.dmg_power = WEP_CVAR(electro, combo_power);
+ this.dmg_duration = WEP_CVAR(electro, combo_duration);
+ this.dmg_interval = WEP_CVAR(electro, combo_damage_interval);
+ this.dmg_linear = WEP_CVAR(electro, combo_damage_linear);
+ this.teleport_time = time;
+ this.dmg_last = 1;
+ set_movetype(this, MOVETYPE_NONE);
+ return;
+ }
+
RadiusDamage(
this,
this.realowner,
CLASS(Electro, Weapon)
/* spawnfunc */ ATTRIB(Electro, m_canonical_spawnfunc, string, "weapon_electro");
- /* ammotype */ ATTRIB(Electro, ammo_type, int, RES_CELLS);
+ /* ammotype */ ATTRIB(Electro, ammo_type, Resource, RES_CELLS);
/* impulse */ ATTRIB(Electro, impulse, int, 5);
-/* flags */ ATTRIB(Electro, spawnflags, int, WEP_FLAG_NORMAL | WEP_FLAG_RELOADABLE | WEP_FLAG_CANCLIMB | WEP_TYPE_SPLASH);
+/* flags */ ATTRIB(Electro, spawnflags, int, WEP_FLAG_NORMAL | WEP_FLAG_RELOADABLE | WEP_TYPE_SPLASH);
/* rating */ ATTRIB(Electro, bot_pickupbasevalue, float, 5000);
/* color */ ATTRIB(Electro, wpcolor, vector, '0 0.5 1');
/* modelname */ ATTRIB(Electro, mdl, string, "electro");
SPAWNFUNC_WEAPON(weapon_electro, WEP_ELECTRO)
#ifdef SVQC
+.float dmg;
+.float dmg_edge;
+.float dmg_radius;
+.float dmg_force;
+.float dmg_power;
+.float dmg_duration;
+.float dmg_last;
+.float dmg_interval;
+.float dmg_linear;
+
+ IntrusiveList LimitedElectroBallRubbleList;
.float electro_count;
.float electro_secondarytime;
void W_Electro_ExplodeCombo(entity this);