set g_balance_vaporizer_secondary_delay 0
set g_balance_vaporizer_secondary_edgedamage 12.5
set g_balance_vaporizer_secondary_force 400
+set g_balance_vaporizer_secondary_force_zscale 1.2
set g_balance_vaporizer_secondary_lifetime 5
set g_balance_vaporizer_secondary_radius 70
set g_balance_vaporizer_secondary_refire 0.7
set g_balance_okhmg_secondary_delay 0
set g_balance_okhmg_secondary_edgedamage 12.5
set g_balance_okhmg_secondary_force 300
+set g_balance_okhmg_secondary_force_zscale 1
set g_balance_okhmg_secondary_lifetime 5
set g_balance_okhmg_secondary_radius 70
set g_balance_okhmg_secondary_refire 0.7
set g_balance_okmachinegun_secondary_delay 0
set g_balance_okmachinegun_secondary_edgedamage 12.5
set g_balance_okmachinegun_secondary_force 300
+set g_balance_okmachinegun_secondary_force_zscale 1
set g_balance_okmachinegun_secondary_lifetime 5
set g_balance_okmachinegun_secondary_radius 70
set g_balance_okmachinegun_secondary_refire 0.7
set g_balance_oknex_secondary_delay 0
set g_balance_oknex_secondary_edgedamage 12.5
set g_balance_oknex_secondary_force 300
+set g_balance_oknex_secondary_force_zscale 1
set g_balance_oknex_secondary_lifetime 5
set g_balance_oknex_secondary_radius 70
set g_balance_oknex_secondary_refire 0.7
set g_balance_okrpc_secondary_delay 0
set g_balance_okrpc_secondary_edgedamage 12.5
set g_balance_okrpc_secondary_force 300
+set g_balance_okrpc_secondary_force_zscale 1
set g_balance_okrpc_secondary_lifetime 5
set g_balance_okrpc_secondary_radius 70
set g_balance_okrpc_secondary_refire 0.7
set g_balance_okshotgun_secondary_delay 0
set g_balance_okshotgun_secondary_edgedamage 12.5
set g_balance_okshotgun_secondary_force 300
+set g_balance_okshotgun_secondary_force_zscale 1
set g_balance_okshotgun_secondary_lifetime 5
set g_balance_okshotgun_secondary_radius 70
set g_balance_okshotgun_secondary_refire 0.7
set g_balance_vaporizer_secondary_delay 0
set g_balance_vaporizer_secondary_edgedamage 12.5
set g_balance_vaporizer_secondary_force 400
+set g_balance_vaporizer_secondary_force_zscale 1
set g_balance_vaporizer_secondary_lifetime 5
set g_balance_vaporizer_secondary_radius 70
set g_balance_vaporizer_secondary_refire 0.7
set g_balance_okhmg_secondary_delay 0
set g_balance_okhmg_secondary_edgedamage 12.5
set g_balance_okhmg_secondary_force 300
+set g_balance_okhmg_secondary_force_zscale 1
set g_balance_okhmg_secondary_lifetime 5
set g_balance_okhmg_secondary_radius 70
set g_balance_okhmg_secondary_refire 0.7
set g_balance_okmachinegun_secondary_delay 0
set g_balance_okmachinegun_secondary_edgedamage 12.5
set g_balance_okmachinegun_secondary_force 300
+set g_balance_okmachinegun_secondary_force_zscale 1
set g_balance_okmachinegun_secondary_lifetime 5
set g_balance_okmachinegun_secondary_radius 70
set g_balance_okmachinegun_secondary_refire 0.7
set g_balance_oknex_secondary_delay 0
set g_balance_oknex_secondary_edgedamage 12.5
set g_balance_oknex_secondary_force 300
+set g_balance_oknex_secondary_force_zscale 1
set g_balance_oknex_secondary_lifetime 5
set g_balance_oknex_secondary_radius 70
set g_balance_oknex_secondary_refire 0.7
set g_balance_okrpc_secondary_delay 0
set g_balance_okrpc_secondary_edgedamage 12.5
set g_balance_okrpc_secondary_force 300
+set g_balance_okrpc_secondary_force_zscale 1
set g_balance_okrpc_secondary_lifetime 5
set g_balance_okrpc_secondary_radius 70
set g_balance_okrpc_secondary_refire 0.7
set g_balance_okshotgun_secondary_delay 0
set g_balance_okshotgun_secondary_edgedamage 12.5
set g_balance_okshotgun_secondary_force 300
+set g_balance_okshotgun_secondary_force_zscale 1
set g_balance_okshotgun_secondary_lifetime 5
set g_balance_okshotgun_secondary_radius 70
set g_balance_okshotgun_secondary_refire 0.7
set g_balance_okshotgun_secondary_delay 0
set g_balance_okshotgun_secondary_edgedamage 10
set g_balance_okshotgun_secondary_force 300
+set g_balance_okshotgun_secondary_force_zscale 1
set g_balance_okshotgun_secondary_lifetime 5
set g_balance_okshotgun_secondary_radius 60
set g_balance_okshotgun_secondary_refire 0.7
set g_balance_okmachinegun_secondary_damage 20
set g_balance_okmachinegun_secondary_delay 0
set g_balance_okmachinegun_secondary_edgedamage 10
-set g_balance_okmachinegun_secondary_force 300
+set g_balance_okmachinegun_secondary_force_zscale 1
set g_balance_okmachinegun_secondary_lifetime 5
set g_balance_okmachinegun_secondary_radius 60
set g_balance_okmachinegun_secondary_refire 0.7
set g_balance_oknex_secondary_damagefalloff_halflife 0
set g_balance_oknex_secondary_damagefalloff_maxdist 0
set g_balance_oknex_secondary_damagefalloff_mindist 0
-set g_balance_oknex_secondary_force 0
+set g_balance_oknex_secondary_force_zscale 1
set g_balance_oknex_secondary_refire 0
set g_balance_oknex_secondary_refire_type 0
set g_balance_oknex_secondary_delay 0
set g_balance_vaporizer_secondary_delay 0
set g_balance_vaporizer_secondary_edgedamage 12.5
set g_balance_vaporizer_secondary_force 400
+set g_balance_vaporizer_secondary_force_zscale 1
set g_balance_vaporizer_secondary_lifetime 5
set g_balance_vaporizer_secondary_radius 70
set g_balance_vaporizer_secondary_refire 0.7
set g_balance_okhmg_secondary_delay 0
set g_balance_okhmg_secondary_edgedamage 12.5
set g_balance_okhmg_secondary_force 300
+set g_balance_okhmg_secondary_force_zscale 1
set g_balance_okhmg_secondary_lifetime 5
set g_balance_okhmg_secondary_radius 70
set g_balance_okhmg_secondary_refire 0.7
set g_balance_okmachinegun_secondary_delay 0
set g_balance_okmachinegun_secondary_edgedamage 10
set g_balance_okmachinegun_secondary_force 300
+set g_balance_okmachinegun_secondary_force_zscale 1
set g_balance_okmachinegun_secondary_lifetime 5
set g_balance_okmachinegun_secondary_radius 60
set g_balance_okmachinegun_secondary_refire 0.7
set g_balance_oknex_secondary_delay 0
set g_balance_oknex_secondary_edgedamage 10
set g_balance_oknex_secondary_force 0
+set g_balance_oknex_secondary_force_zscale 1
set g_balance_oknex_secondary_lifetime 5
set g_balance_oknex_secondary_radius 60
set g_balance_oknex_secondary_refire 0
set g_balance_okrpc_secondary_delay 0
set g_balance_okrpc_secondary_edgedamage 12.5
set g_balance_okrpc_secondary_force 300
+set g_balance_okrpc_secondary_force_zscale 1
set g_balance_okrpc_secondary_lifetime 5
set g_balance_okrpc_secondary_radius 70
set g_balance_okrpc_secondary_refire 0.7
set g_balance_okshotgun_secondary_delay 0
set g_balance_okshotgun_secondary_edgedamage 10
set g_balance_okshotgun_secondary_force 300
+set g_balance_okshotgun_secondary_force_zscale 1
set g_balance_okshotgun_secondary_lifetime 5
set g_balance_okshotgun_secondary_radius 60
set g_balance_okshotgun_secondary_refire 0.7
set g_balance_vaporizer_secondary_delay 0
set g_balance_vaporizer_secondary_edgedamage 12.5
set g_balance_vaporizer_secondary_force 400
+set g_balance_vaporizer_secondary_force_zscale 1.2
set g_balance_vaporizer_secondary_lifetime 5
set g_balance_vaporizer_secondary_radius 70
set g_balance_vaporizer_secondary_refire 0.7
set g_balance_okhmg_secondary_delay 0
set g_balance_okhmg_secondary_edgedamage 12.5
set g_balance_okhmg_secondary_force 300
+set g_balance_okhmg_secondary_force_zscale 1
set g_balance_okhmg_secondary_lifetime 5
set g_balance_okhmg_secondary_radius 70
set g_balance_okhmg_secondary_refire 0.7
set g_balance_okmachinegun_secondary_delay 0
set g_balance_okmachinegun_secondary_edgedamage 10
set g_balance_okmachinegun_secondary_force 300
+set g_balance_okmachinegun_secondary_force_zscale 1
set g_balance_okmachinegun_secondary_lifetime 5
set g_balance_okmachinegun_secondary_radius 60
set g_balance_okmachinegun_secondary_refire 0.7
set g_balance_oknex_secondary_delay 0
set g_balance_oknex_secondary_edgedamage 10
set g_balance_oknex_secondary_force 0
+set g_balance_oknex_secondary_force_zscale 1
set g_balance_oknex_secondary_lifetime 5
set g_balance_oknex_secondary_radius 60
set g_balance_oknex_secondary_refire 0
set g_balance_okrpc_secondary_delay 0
set g_balance_okrpc_secondary_edgedamage 12.5
set g_balance_okrpc_secondary_force 300
+set g_balance_okrpc_secondary_force_zscale 1
set g_balance_okrpc_secondary_lifetime 5
set g_balance_okrpc_secondary_radius 70
set g_balance_okrpc_secondary_refire 0.7
set g_balance_okshotgun_secondary_delay 0
set g_balance_okshotgun_secondary_edgedamage 10
set g_balance_okshotgun_secondary_force 300
+set g_balance_okshotgun_secondary_force_zscale 1
set g_balance_okshotgun_secondary_lifetime 5
set g_balance_okshotgun_secondary_radius 60
set g_balance_okshotgun_secondary_refire 0.7
set g_balance_vaporizer_secondary_delay 0
set g_balance_vaporizer_secondary_edgedamage 12.5
set g_balance_vaporizer_secondary_force 400
+set g_balance_vaporizer_secondary_force_zscale 1.2
set g_balance_vaporizer_secondary_lifetime 5
set g_balance_vaporizer_secondary_radius 70
set g_balance_vaporizer_secondary_refire 0.7
set g_balance_okhmg_secondary_delay 0
set g_balance_okhmg_secondary_edgedamage 12.5
set g_balance_okhmg_secondary_force 300
+set g_balance_okhmg_secondary_force_zscale 1
set g_balance_okhmg_secondary_lifetime 5
set g_balance_okhmg_secondary_radius 70
set g_balance_okhmg_secondary_refire 0.7
set g_balance_okmachinegun_secondary_delay 0
set g_balance_okmachinegun_secondary_edgedamage 12.5
set g_balance_okmachinegun_secondary_force 300
+set g_balance_okmachinegun_secondary_force_zscale 1
set g_balance_okmachinegun_secondary_lifetime 5
set g_balance_okmachinegun_secondary_radius 70
set g_balance_okmachinegun_secondary_refire 0.7
set g_balance_oknex_secondary_delay 0
set g_balance_oknex_secondary_edgedamage 12.5
set g_balance_oknex_secondary_force 300
+set g_balance_oknex_secondary_force_zscale 1
set g_balance_oknex_secondary_lifetime 5
set g_balance_oknex_secondary_radius 70
set g_balance_oknex_secondary_refire 0.7
set g_balance_okrpc_secondary_delay 0
set g_balance_okrpc_secondary_edgedamage 12.5
set g_balance_okrpc_secondary_force 300
+set g_balance_okrpc_secondary_force_zscale 1
set g_balance_okrpc_secondary_lifetime 5
set g_balance_okrpc_secondary_radius 70
set g_balance_okrpc_secondary_refire 0.7
set g_balance_okshotgun_secondary_delay 0
set g_balance_okshotgun_secondary_edgedamage 12.5
set g_balance_okshotgun_secondary_force 300
+set g_balance_okshotgun_secondary_force_zscale 1
set g_balance_okshotgun_secondary_lifetime 5
set g_balance_okshotgun_secondary_radius 70
set g_balance_okshotgun_secondary_refire 0.7
set g_balance_vaporizer_secondary_delay 0
set g_balance_vaporizer_secondary_edgedamage 12.5
set g_balance_vaporizer_secondary_force 400
+set g_balance_vaporizer_secondary_force_zscale 1.2
set g_balance_vaporizer_secondary_lifetime 5
set g_balance_vaporizer_secondary_radius 70
set g_balance_vaporizer_secondary_refire 0.7
set g_balance_okhmg_secondary_delay 0
set g_balance_okhmg_secondary_edgedamage 12.5
set g_balance_okhmg_secondary_force 300
+set g_balance_okhmg_secondary_force_zscale 1
set g_balance_okhmg_secondary_lifetime 5
set g_balance_okhmg_secondary_radius 70
set g_balance_okhmg_secondary_refire 0.7
set g_balance_okmachinegun_secondary_delay 0
set g_balance_okmachinegun_secondary_edgedamage 10
set g_balance_okmachinegun_secondary_force 300
+set g_balance_okmachinegun_secondary_force_zscale 1
set g_balance_okmachinegun_secondary_lifetime 5
set g_balance_okmachinegun_secondary_radius 60
set g_balance_okmachinegun_secondary_refire 0.7
set g_balance_oknex_secondary_delay 0
set g_balance_oknex_secondary_edgedamage 10
set g_balance_oknex_secondary_force 0
+set g_balance_oknex_secondary_force_zscale 1
set g_balance_oknex_secondary_lifetime 5
set g_balance_oknex_secondary_radius 60
set g_balance_oknex_secondary_refire 0
set g_balance_okrpc_secondary_delay 0
set g_balance_okrpc_secondary_edgedamage 12.5
set g_balance_okrpc_secondary_force 300
+set g_balance_okrpc_secondary_force_zscale 1
set g_balance_okrpc_secondary_lifetime 5
set g_balance_okrpc_secondary_radius 70
set g_balance_okrpc_secondary_refire 0.7
set g_balance_okshotgun_secondary_delay 0
set g_balance_okshotgun_secondary_edgedamage 10
set g_balance_okshotgun_secondary_force 300
+set g_balance_okshotgun_secondary_force_zscale 1
set g_balance_okshotgun_secondary_lifetime 5
set g_balance_okshotgun_secondary_radius 60
set g_balance_okshotgun_secondary_refire 0.7
P(class, prefix, delay, float, SEC) \
P(class, prefix, edgedamage, float, SEC) \
P(class, prefix, force, float, SEC) \
+ P(class, prefix, force_zscale, float, SEC) \
P(class, prefix, lifetime, float, SEC) \
P(class, prefix, radius, float, SEC) \
P(class, prefix, refire, float, SEC) \
P(class, prefix, delay, float, SEC) \
P(class, prefix, edgedamage, float, SEC) \
P(class, prefix, force, float, SEC) \
+ P(class, prefix, force_zscale, float, SEC) \
P(class, prefix, lifetime, float, SEC) \
P(class, prefix, radius, float, SEC) \
P(class, prefix, refire, float, SEC) \
P(class, prefix, delay, float, SEC) \
P(class, prefix, edgedamage, float, SEC) \
P(class, prefix, force, float, SEC) \
+ P(class, prefix, force_zscale, float, SEC) \
P(class, prefix, lifetime, float, SEC) \
P(class, prefix, radius, float, SEC) \
P(class, prefix, refire, float, SEC) \
P(class, prefix, delay, float, SEC) \
P(class, prefix, edgedamage, float, SEC) \
P(class, prefix, force, float, SEC) \
+ P(class, prefix, force_zscale, float, SEC) \
P(class, prefix, lifetime, float, SEC) \
P(class, prefix, radius, float, SEC) \
P(class, prefix, refire, float, SEC) \
P(class, prefix, delay, float, SEC) \
P(class, prefix, edgedamage, float, SEC) \
P(class, prefix, force, float, SEC) \
+ P(class, prefix, force_zscale, float, SEC) \
P(class, prefix, lifetime, float, SEC) \
P(class, prefix, radius, float, SEC) \
P(class, prefix, refire, float, SEC) \
this.event_damage = func_null;
- RadiusDamage(
+ RadiusDamageForSource(
this,
+ (this.origin + (this.mins + this.maxs) * 0.5),
+ this.velocity,
this.realowner,
this.blaster_damage,
this.blaster_edgedamage,
this.blaster_radius,
NULL,
NULL,
+ false,
this.blaster_force,
+ this.blaster_force_zscale,
this.projectiledeathtype,
this.weaponentity_fld,
toucher
float atk_edgedamage,
float atk_radius,
float atk_force,
+ float atk_force_zscale,
float atk_speed,
float atk_spread,
float atk_delay,
missile.blaster_edgedamage = atk_edgedamage;
missile.blaster_radius = atk_radius;
missile.blaster_force = atk_force;
+ missile.blaster_force_zscale = atk_force_zscale;
missile.blaster_lifetime = atk_lifetime;
setorigin(missile, w_shotorg);
WEP_CVAR_PRI(blaster, edgedamage),
WEP_CVAR_PRI(blaster, radius),
WEP_CVAR_PRI(blaster, force),
+ WEP_CVAR_PRI(blaster, force_zscale),
WEP_CVAR_PRI(blaster, speed),
WEP_CVAR_PRI(blaster, spread),
WEP_CVAR_PRI(blaster, delay),
WEP_CVAR_SEC(blaster, edgedamage),
WEP_CVAR_SEC(blaster, radius),
WEP_CVAR_SEC(blaster, force),
+ WEP_CVAR_SEC(blaster, force_zscale),
WEP_CVAR_SEC(blaster, speed),
WEP_CVAR_SEC(blaster, spread),
WEP_CVAR_SEC(blaster, delay),
.float blaster_edgedamage;
.float blaster_radius;
.float blaster_force;
+.float blaster_force_zscale;
.float blaster_lifetime;
// Will be demacroed after WEP_CVAR macros are also demacroed.
WEP_CVAR_SEC(weapon_name, edgedamage), \
WEP_CVAR_SEC(weapon_name, radius), \
WEP_CVAR_SEC(weapon_name, force), \
+ WEP_CVAR_SEC(weapon_name, force_zscale), \
WEP_CVAR_SEC(weapon_name, speed), \
WEP_CVAR_SEC(weapon_name, spread), \
WEP_CVAR_SEC(weapon_name, delay), \
P(class, prefix, delay, float, SEC) \
P(class, prefix, edgedamage, float, SEC) \
P(class, prefix, force, float, SEC) \
+ P(class, prefix, force_zscale, float, SEC) \
P(class, prefix, lifetime, float, SEC) \
P(class, prefix, radius, float, SEC) \
P(class, prefix, refire, float, SEC) \
}
float RadiusDamageForSource (entity inflictor, vector inflictororigin, vector inflictorvelocity, entity attacker, float coredamage, float edgedamage, float rad, entity cantbe, entity mustbe,
- float inflictorselfdamage, float forceintensity, int deathtype, .entity weaponentity, entity directhitentity)
+ float inflictorselfdamage, float forceintensity, float forcezscale, int deathtype, .entity weaponentity, entity directhitentity)
// Returns total damage applies to creatures
{
entity targ;
force = force * (finaldmg / coredamage) * forceintensity;
hitloc = nearest;
- if(deathtype & WEP_BLASTER.m_id)
- force.z *= WEP_CVAR_BOTH(blaster, !(deathtype & HITTYPE_SECONDARY), force_zscale);
+ if(forcezscale)
+ force.z *= forcezscale;
if(targ != directhitentity)
{
float RadiusDamage(entity inflictor, entity attacker, float coredamage, float edgedamage, float rad, entity cantbe, entity mustbe, float forceintensity, int deathtype, .entity weaponentity, entity directhitentity)
{
- return RadiusDamageForSource(inflictor, (inflictor.origin + (inflictor.mins + inflictor.maxs) * 0.5), inflictor.velocity, attacker, coredamage, edgedamage, rad, cantbe, mustbe, false, forceintensity, deathtype, weaponentity, directhitentity);
+ return RadiusDamageForSource(inflictor, (inflictor.origin + (inflictor.mins + inflictor.maxs) * 0.5), inflictor.velocity, attacker, coredamage, edgedamage, rad,
+ cantbe, mustbe, false, forceintensity, 0, deathtype, weaponentity, directhitentity);
}
bool Heal(entity targ, entity inflictor, float amount, float limit)
void Damage (entity targ, entity inflictor, entity attacker, float damage, int deathtype, .entity weaponentity, vector hitloc, vector force);
float RadiusDamage_running;
-float RadiusDamageForSource (entity inflictor, vector inflictororigin, vector inflictorvelocity, entity attacker, float coredamage, float edgedamage, float rad, entity cantbe, entity mustbe, float inflictorselfdamage, float forceintensity, int deathtype, .entity weaponentity, entity directhitentity);
+float RadiusDamageForSource (entity inflictor, vector inflictororigin, vector inflictorvelocity, entity attacker, float coredamage, float edgedamage, float rad, entity cantbe, entity mustbe, float inflictorselfdamage, float forceintensity, float forcezscale, int deathtype, .entity weaponentity, entity directhitentity);
// Returns total damage applies to creatures
float RadiusDamage (entity inflictor, entity attacker, float coredamage, float edgedamage, float rad, entity cantbe, entity mustbe, float forceintensity, int deathtype, .entity weaponentity, entity directhitentity);