if 20 < self.rect.x < 80:
self.x_zone = 1
elif 180 < self.rect.x < 260:
self.x_zone = 2
elif 360 < self.rect.x < 440:
self.x_zone = 3
elif 540 < self.rect.x < 620:
self.x_zone = 4
elif 720 < self.rect.x < 780:
self.x_zone = 5
else:
self.x_zone = 0
# y_axis
if 20 < self.rect.y < 100:
self.y_zone = 1
elif 200 < self.rect.y < 400:
self.y_zone = 2
elif 500 < self.rect.y < 580:
self.y_zone = 3
else:
self.y_zone = 0
当我引用机器人或玩家的x_zone或y_zone时,它完全正常,但由于某种原因,当我在这样的if语句中比较它时,它不起作用。< / p>
if self.y_zone == player.y_zone:
self.standard = False
elif self.x_zone == player.x_zone:
self.standard = False
else:
self.standard = True
我也把机器人的x_zone和y_zone的其他地方与玩家的其他地方不同,所以如果他们在不同的区域,它就不会改变任何东西。我希望我解释得很好,因为我无法自己解决这个问题。