用户:
LEGEND523查看:0 回复:0 评论:0 创建时间:2023-06-16T21:09:19
【作品展示】

【作品介绍】
上下左右/WASD键控制小球移动
【作品源代码】
import pygame as p # 导入pygame模块
class Ball(p.sprite.Sprite):
def __init__(self, image_file, location,speed):
p.sprite.Sprite.__init__(self)
self.image = p.image.load(image_file)
self.rect = self.image.get_rect()
self.rect.left, self.rect.top = location
self.speed = speed
def move(self):
self.rect = self.rect.move(self.speed)
if self.rect.left < 0 or self.rect.right > width:
self.speed[0] = -self.speed[0]
if self.rect.top < 0 or self.rect.bottom > height:
self.speed[1] = -self.speed[1]
p.init() # pygame模块初始化
# 创建一个[喵0,480]大小的窗口
p.key.set_repeat(500,10)
p.key.set_repeat(100,50)
clock =p.time.Clock()
size=width,height=800,600
screen = p.display.set_mode(size)
screen.fill([255, 255, 255])
ball = Ball("ball.png", [320, 240], [2, -2])
p.display.update()
running = True
while running:
for event in p.event.get():
if event.type == p.QUIT:
running = False
elif event.type == p.KEYDOWN:
if event.key == p.K_UP or event.key == p.K_w:
ball.rect.top -= 5
elif event.key == p.K_DOWN or event.key == p.K_s:
ball.rect.top += 5
if event.key == p.K_RIGHT or event.key == p.K_d:
ball.rect.left += 5
elif event.key == p.K_LEFT or event.key == p.K_a:
ball.rect.left -= 5
screen.blit(ball.image, ball.rect)
p.display.update()
clock.tick(30)
screen.fill([255, 255, 255])
p.quit()
【提示】
部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:
https://python.codemao.cn