プレイヤーのX座標とY座標と砲台のX座標とY座標取って、それぞれの値を引いて角度取ることできない?
なんとなくいけそうな気がするけど。

それと16方向の範囲指定なら、ローカル変数角度所得のほうが汎用性高そう。