import sys, pygame
pygame.init()

window_size=max_width, max_height = 600, 240
balloffset = [1, 2]
white = 255,255,255

numballs = 5

class BouncyBall:
	def __init__ (self, image, init_x, init_y, speed):
		self.speed = speed
		self.image = image
		self.pos = image.get_rect().move(init_x, init_y)
	def move(self):
		self.pos = self.pos.move(self.speed)
		if self.pos.left < 0  or self.pos.right > max_width:
			self.speed[0] = -self.speed[0]
		if self.pos.top < 0 or self.pos.bottom > max_height:
			self.speed[1] = -self.speed[1]

screen = pygame.display.set_mode(window_size)

ball_img = pygame.image.load("ball.bmp").convert()

balls = []
for i in range(numballs):
	b = BouncyBall(ball_img, i*100, i+5, balloffset)
	balls.append(b)

while 1:
	for event in pygame.event.get():
		if event.type == pygame.QUIT: sys.exit()

	for b in balls:
		screen.fill(white)

	for b in balls:
		b.move()
		screen.blit(b.image, b.pos)

	pygame.display.update()
	pygame.time.delay(10)

