首页 > 解决方案 > 在turtle python中,我如何制作一个hitbox?

问题描述

目前,乌龟和敌人需要有相同的坐标,并且仅限于一个坐标。

我想为乌龟和敌人制作一个圆形的碰撞箱,当他们接触时重新启动窗口。

我是python新手,所以没有真正尝试过很多不同的方法(因为我不知道它们)但是我有两个变量,一个是敌人的坐标,另一个是乌龟的坐标,它们改变为他们移动了,似乎坐标需要彼此完全相等,所以它实际上不起作用。

标签: pythonturtle-graphics

解决方案


海龟模块中没有正式的碰撞箱,但您可以检查海龟周围的区域:

if abs(turtle.xcor() - enemy.xcor()) < 5 and abs(turtle.ycor() - enemy.ycor()) < 5:
    take_damage()

会检查敌方海龟是否在玩家海龟周围边长为 10 的方格内,然后再造成伤害。

您还可以检查半径(请参阅turtle.distance)或任何其他让您满意的形状。

否则,turtle 模块没有内置的 hitbox。如果您浏览文档,我恳请您这样做,您将找不到 hitbox 类或类似的东西。


推荐阅读