For some reason my code is printing 1 even though it has not collided with any other ball or with the floor. I am using sys, pygame.locals
and pygame as my main libraries and no error is appearing anywhere.
code:
pygame.init()
screen = pygame.display.set_mode((1000, 500))
green = (0, 255, 0)
circles = []
gravity = 1
def mainPhysics():
for circle_pos in circles:
circle_pos[1] += gravity
if circle_pos[1] > 495:
boundaries = circle_pos[1] - 495
circle_pos[1] -= boundaries
if circle_pos[0] < 0:
boundaries2 = circle_pos[0]
circle_pos[0] += boundaries2
if circle_pos[0] > 995:
boundaries3 = circle_pos[0] - 995
circle_pos[0] - boundaries3
circle_rect = pygame.draw.circle(screen, green, circle_pos, 5)
collide = circle_rect.collidepoint(circle_pos)
print('1') if collide else print('0')
def input():
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
if event.type == pygame.MOUSEBUTTONDOWN:
circles.append(list(event.pos))
if event.type == pygame.MOUSEBUTTONDOWN and pygame.MOUSEMOTION:
circles.append(list(event.pos))
clock = pygame.time.Clock()
while True:
screen.fill((15, 15, 15))
input()
mouse_pos = pygame.mouse.get_pos()
mainPhysics()
pygame.display.update()
clock.tick(120)