まぁ初心者対応スレなんでざっとソース見てみた。
軽くみただけだし、単体テストしたわけじゃないが、
問題点が多いように見える。
・ローカル座標系に向きを適用前に逆行列を生成している。
・レーダー範囲に向きを適用している。
・レーダー範囲にも位置を適用している。
・レーダー範囲をBOXで判定している。
間違ってたらすまんね。

まずは、頭の中に3D空間をイメージして、
・どういう処理を行うべきか
・今どんな処理を行っているか
をジックリ考えて整理してみるといい。

ゲームなんて結果オーライなんで、正解はないのだが、
@位置と向きでシッカリ変換行列を作成。
A逆行列を生成。
B敵の位置をワールド座標からローカル座標に変換。
C上下成分を奥行き成分で割って、四角錐の内外判定。
自分の場合こんな判定でやってる。