"""
微重力小球闯关,本程序展示了一个基本的多关卡微重力游戏。
"""
from sprites import * # 从精灵模块导入所有命令
width,height = 600,600 # 定义屏幕宽高
screen = Screen() # 新建屏幕对象
#screen.bgcolor('black') # 设定屏幕颜色
screen.setup(width,height) # 设宽屏幕宽高
ball = Sprite(1) # 新建小球对象
ball.dx = 0 # 小球水平速度
ball.dy = 0 # 小球垂直速度
ball.saycolor('blue') # 说话泡泡字体颜色
ball.say("请按上下左右键练习手感,\n然后一直往右。",8,False)
upkey = Key('Up') # 实例化向上方向箭头
downkey = Key('Down') # 实例化向下方向箭头
rightkey = Key('Right') # 实例化向右方向箭头
leftkey = Key('Left') # 实例化向左方向箭头
# 定义关卡中每个方块的坐标
level1 = [(200,200),(-200,200),(0,0),(-220,-230),(220,-230)]
level2 = [(-100,0),(100,0),(0,-90),(0,90),(0,200),(0,-200),(260,0),(230,-230)]
level3 = [(-130,0),(-190,-100),(-120,120),(0,0),(150,100),(140,-130),(-100,230),(100,230),(-100,-230),(100,-230)]
levels = [level1,level2,level3]
level_index = 0
level_amounts = len(levels) # 关卡数量
squares = Group('square') # 新建方块组,代表障碍物
def nextlevel(cors):
"""下一关布局"""
for x,y in cors:
sq = Sprite(shape='square',pos=(x,y),visible=False,tag='square')
sq.scale(4)
sq.randomcolor()
sq.show()
screen.listen() # 监听按键
clock = Clock() # 时钟对象
running = True
while running:
# 按键检测
if upkey.down():ball.dy += 0.1 # 如果按了上方向箭头
if downkey.down():ball.dy -= 0.1 # 如果按了下方向箭头
if rightkey.down():ball.dx += 0.1 # 如果按了右方向箭头
if leftkey.down():ball.dx -= 0.1 # 如果按了左方向箭头
以下代码省略......
下载完整源代码与素材,请
需要浏览更多吗?
成为会员后,登陆才能继续浏览!联系微信scratch8即可办理会员。
(会员专属:能浏览所有文章,下载所有带链接的Python资源。)

