import pygame
import sys
import time
from pygame.locals import *
pygame.init()
# 设置一个长宽窗口
canvas = pygame.display.set_mode((419, 700))
# 设置窗口标题
pygame.display.set_caption("十秒挑战赛")
# 图片加载
bg = pygame.image.load('images/bg.png')
running = pygame.image.load('images/running.png')
lose = pygame.image.load('images/lose.png')
win = pygame.image.load('images/win.png')
# 存储状态
state = 'START'
t = 0
def show():
global t
canvas.blit(running, (0, 0))
end = time.time()
t = round((end - start), 2)
if t < 10:
fillText('0' + str(t), (165, 170), 30)
else:
fillText(str(t), (165, 170), 30)
# 创建over方法,实现绘制结束界面
def over():
if t == 10:
canvas.blit(win, (0, 0))
fillText(str(t), (165, 170), 30)
elif t < 10:
canvas.blit(lose, (0, 0))
fillText('0' + str(t), (165, 170), 30)
else:
canvas.blit(lose, (0, 0))
fillText(str(t), (165, 170), 30)
# 写文字方法
def fillText(text, position, size):
TextFont = pygame.font.Font('images/REDOCN.TTF', size)
newText = TextFont.render(str(text), True, (255, 0, 0))
canvas.blit(newText, position)
while True:
if state == 'START':
canvas.blit(bg, (0, 0))
fillText('00.00', (165, 170), 30)
elif state == 'RUNNING':
show()
# 判断游戏状态
elif state == 'OVER':
over()
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
if event.type == MOUSEBUTTONDOWN and event.button == 1:
x = event.pos[0]
y = event.pos[1]
if x >= 168 and x <= 247 and y >= 437 and y <= 507:
if state == 'START':
state = 'RUNNING'
start = time.time()
# 将游戏状态RUNNING切换为OVER
elif state == 'RUNNING':
state = 'OVER'
# 将游戏状态OVER切换为START
elif state == 'OVER':
state = 'START'
pygame.display.update()
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
10秒挑战赛.zip (6个子文件)
10秒挑战赛
03
index.py 2KB
images
running.png 145KB
lose.png 148KB
REDOCN.TTF 1.99MB
win.png 149KB
bg.png 145KB
共 6 条
- 1
资源评论
平平科技工作室
- 粉丝: 239
- 资源: 16
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功