From: Rudolf Polzer Date: Wed, 26 May 2010 22:17:40 +0000 (+0200) Subject: Merge branch 'master' of ssh://git.xonotic.org/xonotic-data.pk3dir X-Git-Tag: xonotic-v0.1.0preview~570^2~2 X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=commitdiff_plain;h=c045b87696a4fb7c1537b058cafaef23213c35bc;hp=ec26b985c6cee2bde97ecaacb98a37323272baf2 Merge branch 'master' of ssh://git.xonotic.org/xonotic-data.pk3dir --- diff --git a/physicsNoQWBunny.cfg b/physicsNoQWBunny.cfg index d20a12a3b1..6920d764a8 100644 --- a/physicsNoQWBunny.cfg +++ b/physicsNoQWBunny.cfg @@ -14,8 +14,8 @@ sv_waterfriction -1 sv_airaccel_sideways_friction -0.2 sv_airaccel_qw -0.9475 sv_airstopaccelerate 2.5 -sv_airstrafeaccelerate 21 -sv_maxairstrafespeed 200 +sv_airstrafeaccelerate 42 +sv_maxairstrafespeed 100 sv_airstrafeaccel_qw -0.99 sv_aircontrol 125 sv_aircontrol_power 2.5 diff --git a/qcsrc/server/miscfunctions.qc b/qcsrc/server/miscfunctions.qc index c54235d2cb..ac0bc8f633 100644 --- a/qcsrc/server/miscfunctions.qc +++ b/qcsrc/server/miscfunctions.qc @@ -1916,6 +1916,13 @@ void adaptor_think2use() activator = a; } +void adaptor_think2use_hittype_splash() // for timed projectile detonation +{ + if not(self.flags & FL_ONGROUND) // if onground, we ARE touching something, but HITTYPE_SPLASH is to be networked if the damage causing projectile is not touching ANYTHING + self.projectiledeathtype |= HITTYPE_SPLASH; + adaptor_think2use(); +} + // deferred dropping void DropToFloor_Handler() { diff --git a/qcsrc/server/w_common.qc b/qcsrc/server/w_common.qc index 36552e9304..8f2de4e8ce 100644 --- a/qcsrc/server/w_common.qc +++ b/qcsrc/server/w_common.qc @@ -1,3 +1,4 @@ + void W_GiveWeapon (entity e, float wep, string name) { entity oldself; diff --git a/qcsrc/server/w_electro.qc b/qcsrc/server/w_electro.qc index c1cb49d0eb..c9e7d23c31 100644 --- a/qcsrc/server/w_electro.qc +++ b/qcsrc/server/w_electro.qc @@ -51,7 +51,6 @@ void W_Plasma_Explode (void) void W_Plasma_Explode_Combo (void) { - W_Plasma_TriggerCombo(self.origin, cvar("g_balance_electro_combo_comboradius"), self.owner); self.event_damage = SUB_Null; @@ -98,7 +97,7 @@ void W_Plasma_Damage (entity inflictor, entity attacker, float damage, float dea else { self.use = W_Plasma_Explode; - self.think = adaptor_think2use; + self.think = adaptor_think2use; // not _hittype_splash, as this runs "immediately" } } } @@ -117,7 +116,7 @@ void W_Electro_Attack() proj.bot_dodge = TRUE; proj.bot_dodgerating = cvar("g_balance_electro_primary_damage"); proj.use = W_Plasma_Explode; - proj.think = adaptor_think2use; + proj.think = adaptor_think2use_hittype_splash; proj.nextthink = time + cvar("g_balance_electro_primary_lifetime"); PROJECTILE_MAKETRIGGER(proj); proj.projectiledeathtype = WEP_ELECTRO; @@ -151,7 +150,7 @@ void W_Electro_Attack2() proj.classname = "plasma"; proj.owner = self; proj.use = W_Plasma_Explode; - proj.think = adaptor_think2use; + proj.think = adaptor_think2use_hittype_splash; proj.bot_dodge = TRUE; proj.bot_dodgerating = cvar("g_balance_electro_secondary_damage"); proj.nextthink = time + cvar("g_balance_electro_secondary_lifetime"); diff --git a/qcsrc/server/w_fireball.qc b/qcsrc/server/w_fireball.qc index c1d30ba021..0462cd9018 100644 --- a/qcsrc/server/w_fireball.qc +++ b/qcsrc/server/w_fireball.qc @@ -98,6 +98,7 @@ void W_Fireball_Think() if(time > self.pushltime) { self.cnt = 1; + self.projectiledeathtype |= HITTYPE_SPLASH; W_Fireball_Explode(); return; } diff --git a/qcsrc/server/w_grenadelauncher.qc b/qcsrc/server/w_grenadelauncher.qc index 380e849fe3..251137401c 100644 --- a/qcsrc/server/w_grenadelauncher.qc +++ b/qcsrc/server/w_grenadelauncher.qc @@ -99,7 +99,7 @@ void W_Grenade_Attack (void) setsize(gren, '0 0 -3', '0 0 -3'); gren.nextthink = time + cvar("g_balance_grenadelauncher_primary_lifetime"); - gren.think = adaptor_think2use; + gren.think = adaptor_think2use_hittype_splash; gren.use = W_Grenade_Explode; gren.touch = W_Grenade_Touch1; W_SETUPPROJECTILEVELOCITY_UP(gren, g_balance_grenadelauncher_primary); @@ -135,7 +135,7 @@ void W_Grenade_Attack2 (void) setorigin(gren, w_shotorg); gren.nextthink = time + cvar("g_balance_grenadelauncher_secondary_lifetime"); - gren.think = adaptor_think2use; + gren.think = adaptor_think2use_hittype_splash; gren.use = W_Grenade_Explode2; gren.touch = W_Grenade_Touch2; gren.takedamage = DAMAGE_YES;