内容目录
main
void #音效存放
picture #图片存放
need #各种计算相关的函数
play.py #运行
db.db #数据库
loadding.py #对图片进行加载
下面展示的是play部分逻辑
游戏顺序为
打开Play 之后显示 tk界面 连接数据库 点击关卡之后进行游戏
# 屏幕大小650 550 素材大小38x38
import pygame
import tkinter as Tk
from pygame.locals import *
from need.extend import fake_copy,init_pos,get_pos,get_total,is_same,show_pic,wash,get_tip
import sqlite3
import time
from need.tools import tool
from loading import pic,bg,button,top,good,nogood,order,success,over,sorry,false,restart,bg_sound,\
level__,level___,one,two,three,time_,tick_,score_sep_
import time
sep=38
FPS=30
width=650;height=550
row=12;col=10
click_list=[]
def MainGame(name,level,init_score=0):
global row,col
global click_list,total
if level==1:
row=one[0]
col=one[1]
if level==2:
row=two[0]
col=two[1]
if level==3:
row=three[0]
col=three[1]
total=get_total(row,col,12)
total_=fake_copy(total) #一个膨胀的total
start_pos,start,end=init_pos(row,col,width,height) #可以填入get_pos的第二个参数
index=[]
tip_pos=[]
click=False #点击事件失效
score=init_score
score_sep=score_sep_ #每一秒增加x分
timer=0
time_sep=1150
choice=[]
tick=tick_ #提示次数
time=time_
time_default=-time_sep*time # 此处时时间的计算公式
time_count=time_default
stop=False
fall_b=False
default=True
real_pos=(0,0)
size=18
pos__=(18,518)
checkable=True
text=pygame.font.SysFont('Kaiti',size, True)
text_tick=pygame.font.SysFont('Kaiti',14, True)
start__=text.render('开始',True,(255,255,255))
end__=text.render('暂停',True,(255,255,255))
while True:
for event in pygame.event.get():
if event.type==QUIT:
pygame.display.quit()
elif event.type==MOUSEBUTTONDOWN:
if suc_b:
init_score=score + (abs(time_