From 6c031612ceba92a79eb33bd12b4fb523b3d0a183 Mon Sep 17 00:00:00 2001 From: ineedbots Date: Tue, 13 Jul 2021 18:52:39 -0600 Subject: [PATCH] target through glass --- userraw/maps/mp/bots/_bot_internal.gsc | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/userraw/maps/mp/bots/_bot_internal.gsc b/userraw/maps/mp/bots/_bot_internal.gsc index 1047c18..45ff828 100644 --- a/userraw/maps/mp/bots/_bot_internal.gsc +++ b/userraw/maps/mp/bots/_bot_internal.gsc @@ -1085,13 +1085,17 @@ target_loop() targetAnkleLeft = player getTagOrigin( "j_ankle_le" ); targetAnkleRight = player getTagOrigin( "j_ankle_ri" ); - canTargetPlayer = ( ( bulletTracePassed( myEye, targetHead, false, undefined ) || - bulletTracePassed( myEye, targetAnkleLeft, false, undefined ) || - bulletTracePassed( myEye, targetAnkleRight, false, undefined ) ) + traceHead = bulletTrace( myEye, targetHead, false ); + traceAnkleLeft = bulletTrace( myEye, targetAnkleLeft, false ); + traceAnkleRight = bulletTrace( myEye, targetAnkleRight, false ); - && ( sightTracePassed( myEye, targetHead, false, undefined ) || - sightTracePassed( myEye, targetAnkleLeft, false, undefined ) || - sightTracePassed( myEye, targetAnkleRight, false, undefined ) ) + canTargetPlayer = ( ( sightTracePassed( myEye, targetHead, false ) || + sightTracePassed( myEye, targetAnkleLeft, false ) || + sightTracePassed( myEye, targetAnkleRight, false ) ) + + && ( ( traceHead["fraction"] >= 1.0 || traceHead["surfacetype"] == "glass" ) || + ( traceAnkleLeft["fraction"] >= 1.0 || traceAnkleLeft["surfacetype"] == "glass" ) || + ( traceAnkleRight["fraction"] >= 1.0 || traceAnkleRight["surfacetype"] == "glass" ) ) && ( ignoreSmoke || SmokeTrace( myEye, player.origin, level.smokeRadius ) ||