From a0edfd7e58647597c3990227cc03feeecb352329 Mon Sep 17 00:00:00 2001 From: Alex Hartsell Date: Sun, 26 Jan 2014 12:33:14 -0500 Subject: [PATCH 1/2] Fix eb through walls and make instagun hit buttons --- source/game/g_weapon.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/source/game/g_weapon.c b/source/game/g_weapon.c index f56166ae..ade4d413 100644 --- a/source/game/g_weapon.c +++ b/source/game/g_weapon.c @@ -1200,6 +1200,8 @@ void W_Fire_Electrobolt_Combined( edict_t *self, vec3_t start, vec3_t angles, fl // some entity was touched hit = &game.edicts[tr.ent]; + if( hit == world ) // stop dead if hit the world + return; //racesow: do hit check later to activate shootable buttons // allow trail to go through BBOX entities (players, gibs, etc) @@ -1218,8 +1220,6 @@ void W_Fire_Electrobolt_Combined( edict_t *self, vec3_t start, vec3_t angles, fl G_Damage( hit, self, self, dir, dir, tr.endpos, damage, knockback, stun, dmgflags, mod ); //racesow make shootable buttons work - if( hit == world ) // stop dead if hit the world - return; if( hit->movetype == MOVETYPE_NONE || hit->movetype == MOVETYPE_PUSH ) return; //!racesow @@ -1302,6 +1302,8 @@ void W_Fire_Electrobolt_FullInstant( edict_t *self, vec3_t start, vec3_t angles, // some entity was touched hit = &game.edicts[tr.ent]; + if( hit == world ) // stop dead if hit the world + return; //racesow: do hit check later to activate shootable buttons // allow trail to go through BBOX entities (players, gibs, etc) @@ -1328,8 +1330,6 @@ void W_Fire_Electrobolt_FullInstant( edict_t *self, vec3_t start, vec3_t angles, G_Damage( hit, self, self, dir, dir, tr.endpos, damage, knockback, stun, dmgflags, mod ); //racesow make shottable buttons work - if( hit == world ) // stop dead if hit the world - return; if( hit->movetype == MOVETYPE_NONE || hit->movetype == MOVETYPE_PUSH ) return; //!racesow @@ -1437,6 +1437,12 @@ void W_Fire_Instagun( edict_t *self, vec3_t start, vec3_t angles, float damage, G_FreeEdict( inflictor ); } + //racesow: shottable buttons + if( game.edicts[tr.ent].movetype == MOVETYPE_NONE + || game.edicts[tr.ent].movetype == MOVETYPE_PUSH ) + { + G_Damage( &game.edicts[tr.ent], self, self, dir, dir, tr.endpos, damage, knockback, stun, dmgflags, mod ); + } break; } From 830e753ade088559cf2a0fe9395507e20a79e2e2 Mon Sep 17 00:00:00 2001 From: Alex Hartsell Date: Sun, 26 Jan 2014 12:54:36 -0500 Subject: [PATCH 2/2] revert instagun behavior --- source/game/g_weapon.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/source/game/g_weapon.c b/source/game/g_weapon.c index ade4d413..9275e108 100644 --- a/source/game/g_weapon.c +++ b/source/game/g_weapon.c @@ -1437,12 +1437,6 @@ void W_Fire_Instagun( edict_t *self, vec3_t start, vec3_t angles, float damage, G_FreeEdict( inflictor ); } - //racesow: shottable buttons - if( game.edicts[tr.ent].movetype == MOVETYPE_NONE - || game.edicts[tr.ent].movetype == MOVETYPE_PUSH ) - { - G_Damage( &game.edicts[tr.ent], self, self, dir, dir, tr.endpos, damage, knockback, stun, dmgflags, mod ); - } break; }