Commit ba8bdab4 by BellCodeEditor

auto save

parent cae5c529
Showing with 31 additions and 37 deletions
import pygame import pygame
from pygame import locals from pygame import locals
import random
pygame.init() # 初始化 pygame.init() # 初始化
score = 0 score = 0
grid_size = 20 # 格子大小 grid_size = 20 # 格子大小
grid_num_width = 15 # 横向格子数量
grid_num_width = 20 # 横向格子数量 grid_num_height = 25 # 纵向格子数量
grid_num_height = 30 # 纵向格子数量
FPS = 30 FPS = 30
liebiao = [2,8]
food = pygame.image.load('bg.png')
# 创建窗口 # 创建窗口
screen = pygame.display.set_mode((460, 500)) screen = pygame.display.set_mode((460, 500))
pygame.display.set_caption("俄罗斯方块") pygame.display.set_caption("俄罗斯方块")
...@@ -17,43 +16,37 @@ clock = pygame.time.Clock() # pygame时钟,控制游戏速度(帧数) ...@@ -17,43 +16,37 @@ clock = pygame.time.Clock() # pygame时钟,控制游戏速度(帧数)
# 载入素材 # 载入素材
background = pygame.image.load('bg.png') background = pygame.image.load('bg.png')
font = pygame.font.Font('STKAITI.TTF', 60) # 字体 font = pygame.font.Font('STKAITI.TTF', 60) # 字体
center=[2,8] h=[(0,0),(0,1),(0,-1),(-1,0)]
curr_shape=[(0,-1),(0,0),(0,1),(0,2)] body=[]
while True: while True:
for event in pygame.event.get(): for event in pygame.event.get():
if event.type == locals.QUIT: if event.type == locals.QUIT:
exit() exit()
if event.type == locals.KEYDOWN: if event.type == locals.KEYDOWN: # 有键盘被按下
if event.key == locals.K_RIGHT: if event.key == locals.K_RIGHT:
if center[1]<15: if liebiao[1] < 15:
center[1]+=1 liebiao[1] +=1
elif event.key==locals.K_LEFT: if event.key == locals.K_LEFT:
if center[1]>1: if liebiao[1] > 1:
center[1]-=1 liebiao[1] -= 1
elif event.key==locals.K_DOWN: if event.key == locals.K_DOWN:
if center[0]<25: if liebiao[0] < 25:
center[0]+=1 liebiao[0] += 1
curr_pos = [] if event.key == locals.K_UP:
for cube in curr_shape: if liebiao[0] > 1:
aa = (cube[0] + center[0],cube[1] + center[1]) liebiao[0] -= 1
curr_pos.append(aa) screen.blit(food, (0, 0)) # 将背景图画上去
for cube in curr_pos: ds=font.render(str(score),True,(random.randint(0,255), random.randint(0,255), random.randint(0,255)))
pygame.draw.rect(screen,(153,0,102), screen.blit(ds,(350,70))
(cube[1]*20-20,cube[0]*20-20, apple=[]
grid_size,grid_size), for ap in h:
0) a=(ap[0]+liebiao[0],ap[1]+liebiao[1])
pygame.draw.rect(screen,(255,255,255), apple.append(a)
(cube[1]*20-20,cube[0]*20-20, for ap in apple:
grid_size,grid_size), pygame.draw.rect(screen, (255, 0, 0), (ap[1] * 20 - 20, ap[0] * 20 - 20, 20, 20), 0)
1) pygame.draw.rect(screen, (255, 255, 255), (ap[1] * 20 - 20, ap[0] * 20 - 20, 20, 20), 1)
# 将背景图画上去
screen.blit(background,(0,0))
score_text=font.render(str(score),True,(0,0,0))
screen.blit(score_text,(350,70))
# 刷新画面 # 刷新画面
pygame.display.update() pygame.display.update()
clock.tick(FPS) clock.tick(FPS)
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment