set g_balance_electro_primary_force_up 0
set g_balance_electro_primary_radius 100
set g_balance_electro_primary_comboradius 300
+set g_balance_electro_primary_midaircombo_interval 0.3
set g_balance_electro_primary_speed 2500
set g_balance_electro_primary_spread 0
set g_balance_electro_primary_lifetime 5
w_cvar(WEP_ELECTRO, electro, MO_BOTH, spread) \
w_cvar(WEP_ELECTRO, electro, MO_BOTH, lifetime) \
w_cvar(WEP_ELECTRO, electro, MO_PRI, comboradius) \
+ w_cvar(WEP_ELECTRO, electro, MO_PRI, midaircombo_interval) \
w_cvar(WEP_ELECTRO, electro, MO_SEC, bouncefactor) \
w_cvar(WEP_ELECTRO, electro, MO_SEC, bouncestop) \
w_cvar(WEP_ELECTRO, electro, MO_SEC, count) \
}
}
+void W_Plasma_Think()
+{
+ self.nextthink = time + WEP_CVAR_PRI(electro, midaircombo_interval);
+
+ if(time >= self.ltime)
+ {
+ self.use();
+ return;
+ }
+
+ W_Plasma_TriggerCombo(self.origin, WEP_CVAR_PRI(electro, comboradius), self.realowner);
+}
+
void W_Electro_Attack_Bolt(void)
{
entity proj;
proj.bot_dodge = TRUE;
proj.bot_dodgerating = WEP_CVAR_PRI(electro, damage);
proj.use = W_Plasma_Explode;
- proj.think = adaptor_think2use_hittype_splash;
- proj.nextthink = time + WEP_CVAR_PRI(electro, lifetime);
+ proj.think = W_Plasma_Think;
+ proj.nextthink = time;
+ proj.ltime = time + WEP_CVAR_PRI(electro, lifetime);
PROJECTILE_MAKETRIGGER(proj);
proj.projectiledeathtype = WEP_ELECTRO;
setorigin(proj, w_shotorg);