diff options
Diffstat (limited to 'src/game/g_buildable.c')
-rw-r--r-- | src/game/g_buildable.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/game/g_buildable.c b/src/game/g_buildable.c index c4b1f120..46630229 100644 --- a/src/game/g_buildable.c +++ b/src/game/g_buildable.c @@ -1224,7 +1224,11 @@ qboolean AHovel_Blocked( gentity_t *hovel, gentity_t *player, qboolean provideEx //compute a place up in the air to start the real trace trap_Trace( &tr, origin, mins, maxs, start, player->s.number, MASK_PLAYERSOLID ); - VectorMA( origin, HOVEL_TRACE_DEPTH, normal, start ); + + if( tr.startsolid ) + return qtrue; + + VectorMA( origin, ( HOVEL_TRACE_DEPTH * tr.fraction ) - 1.0f, normal, start ); VectorMA( origin, -HOVEL_TRACE_DEPTH, normal, end ); trap_Trace( &tr, start, mins, maxs, end, player->s.number, MASK_PLAYERSOLID ); |