All pastes #618173 Raw Edit

Someone

public text v1 · immutable
·published 2007-07-13 19:56 UTC
rendered paste body
import sys, pygame

pygame.init()

size = width, height = 800, 600
speed = [2, 2]
black = 0, 0, 0

screen = pygame.display.set_mode(size)

ball = pygame.image.load("ball.bmp")
ballrect = ball.get_rect()

upKeyHeld = False
rightKeyHeld = False
downKeyHeld = False
leftKeyHeld = False

clock = pygame.time.Clock()
clockFont = pygame.font.Font(None, 24)

while 1:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            sys.exit()
        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_LEFT:
                leftKeyHeld = True
                speed[0] = speed[0] + 1
            if event.key == pygame.K_RIGHT:
                rightKeyHeld = True
                speed[0] = speed[0] - 1
            if event.key == pygame.K_UP:
                upKeyHeld = True
                speed[1] = speed[1] - 1
            if event.key == pygame.K_DOWN:
                downKeyHeld = True
                speed[1] = speed[1] + 1
            if event.key == pygame.K_RETURN:
                upKeyHeld = False
                rightKeyHeld = False
                downKeyHeld = False
                leftKeyHeld = False
                speed = [0, 0]
        if event.type == pygame.KEYUP:
            if event.key == pygame.K_LEFT: leftKeyHeld = False
            if event.key == pygame.K_RIGHT: rightKeyHeld = False
            if event.key == pygame.K_UP: upKeyHeld = False
            if event.key == pygame.K_DOWN: downKeyHeld = False

    if upKeyHeld == True:
        speed[1] -= 1
    if downKeyHeld == True:
        speed[1] += 1
    if rightKeyHeld == True:
        speed[0] += 1
    if leftKeyHeld == True:
        speed[0] -= 1

    ballrect = ballrect.move(speed)
    if ballrect.left < 0 or ballrect.right > width:
        speed[0] = -speed[0]
    if ballrect.top < 0 or ballrect.bottom > height:
        speed[1] = -speed[1]

    fpsInfo = clockFont.render(str(clock.get_fps()), True, (255, 255, 255))

    screen.fill(black)
    screen.blit(ball, ballrect)
    screen.blit(fpsInfo, (5, 5))
    pygame.display.flip()

    clock.tick(60)