我试图找出一个实体被击中的那一方
46-135 - 右侧
136-225 - 背面
226-315 - 左侧
316-360和0-45 - 正面
https://i.ibb.co/hKz5n9z/Help.png(不能发布图片,但这是我想要的)
我知道实体面对的角度以及撞击实体时射弹的角度
我尝试过这样的事情:
Math.abs(entityRotation - attackRotation)%360;
Math.abs(180 - entityRotation - attackRotation)%360;等等
但我似乎无法找到一个适用于所有角度的方程式。
如果那是不可能的话,当一个角度大于另一个角度时,我可以使用两个不同的方程式。
谢谢 :)
如果射弹始终指向圆心,请尝试下一个方法
(Python代码,使用整数除法//
)
result here
print("targdir", " attackdir", "side")
sides = ["front", "right", "back", "left"]
for target in range(0, 361, 45):
for attack in range(0, 361, 45):
side = ((attack - target + 585) % 360) // 90
print(target, attack, sides[side])