【发布时间】:2020-10-31 18:40:39
【问题描述】:
如果玩家撞到前面的东西(z 轴),这个脚本应该结束游戏。但是相反,即使玩家在 x 甚至 y 轴(地面)上撞到任何东西,玩家也会死亡,所以游戏会在玩家触地的那一刻结束。请求帮助。我是 Unity 和 c# 的新手。所以如果解决方案太明显,请不要滥用我。
【问题讨论】:
-
您好,请您将所有代码添加到问题中,而不是链接图像。
标签: collider
如果玩家撞到前面的东西(z 轴),这个脚本应该结束游戏。但是相反,即使玩家在 x 甚至 y 轴(地面)上撞到任何东西,玩家也会死亡,所以游戏会在玩家触地的那一刻结束。请求帮助。我是 Unity 和 c# 的新手。所以如果解决方案太明显,请不要滥用我。
【问题讨论】:
标签: collider
我认为玩家会立即死亡,因为地面也有玩家接触的对撞机。尝试为玩家面前的对象添加标签,并在您的代码中在调用结束游戏函数之前检查标签。
if(hit.gameobject.tag == "tag" && hit.point.z > transform.position.z + controller.radius)
Death();
【讨论】: