我正在构建一个游戏,在这个游戏中,一个球应该从屏幕的边缘反弹,但是显示表面的rect似乎是颠倒的,因为当球碰到边缘时,代码会打印出另一面(例如,当球碰到底部边缘时,它会打印“top”)
代码如下:import pygame
def coll_side(obj1, obj2, is_obj1_rect, is_obj2_rect):
if is_obj1_rect:
rect1 = obj1
else:
rect1 = obj1.rect
if is_obj2_rect:
rect2 = obj2
else:
rect2 = obj2.rect
tl = rect1.collidepoint(rect2.topleft)
bl = rect1.collidepoint(rect2.bottomleft)
tr = rect1.collidepoint(rect2.topright)
br = rect1.collidepoint(rect2.bottomright)
if tl and bl:
side = 'left'
elif tl and tr:
side = 'top'
elif br and tr:
side = 'right'
elif br and bl:
side = 'bottom'
elif tl:
side = 'topleft'
elif tr