今天学习了一下pygame的简单用法,想用pygame制作一个小游戏,但受制于能力尚不完善,只能从基础做起。编写了一个简单的“小游戏”,就叫它小游戏吧,只有一个操作,可以实现方块的移动
import sys,pygame
pygame.init() #窗口初始化
size=width,height=600,600
screen=pygame.display.set_mode(size) #设置窗口大小
WHITE=pygame.Color('white')
BLACK=pygame.Color('black')
#line=pygame.draw.line(screen,WHITE,(100,500),(200,500),25)
speed=10 #设置方块移动速度
x,y=150,500 #方块初始位置
width1,height1=100,50 #方块长宽
#run=True
while True:
pygame.time.delay(20)
for event in pygame.event.get():
if event.type==pygame.QUIT:
#run=False
sys.exit()
#将键盘操作与方块移动建立起联系
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT]:
x -= speed
if keys[pygame.K_RIGHT]:
x += speed
#接下来有另一种方法可以实现物体的移动,但其操作不如上面的灵敏
#if event.type==pygame.KEYDOWN:
#if event.key==pygame.K_RIGHT:
#x+=speed
#if event.key==pygame.K_LEFT:
#x-=speed
#控制方块不会超出屏幕
if x<0:
x=0
if x>500:
x=500
#窗口刷新
screen.fill(BLACK)
#注意,只能在填充背景之后才能引入方块,否则将无法显示
pygame.draw.rect(screen,WHITE,(x,y,width1,height1))
#screen.blit(line,linerect)
pygame.display.update()
之前在网上找了好久,直到后来才知道如何将物块与键盘之间建立起联系。pygame中响应键盘的操作可以有两种,一种
if event.type==pygame.KEYDOWN:
if event.key==pygame.K_RIGHT
还有一种
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT]:
两种方式我都试验了几次,发现还是第二种更流畅,第一种会出现卡顿
以上就是我的一个小游戏的代码,记录我第一个博客,希望以后更努力,会的更多吧!
第一次发博,如有纰漏还望指正!