2 弹跳的小球

图书简介可以看这里:

童晶:《Python游戏趣味编程》新书上架了

Python之所以功能强大,一个原因就是有大量功能强大的库,安装好后即可使用这些库的功能。打开海龟编辑器,点击图2-2中所示的“库管理”菜单。

 

弹出图2-3的库管理对话框,选择游戏选项卡,依次点击安装Pygame、Pygame Zero两个游戏开发库,直到提示已安装。

 

如果读者使用的是Mu集成开发环境,可以选择模式为Pygame Zero,即可以进行Python游戏趣味编程的学习了

 

本章我们将编写一个弹跳小球的程序,小球在窗口中四处反弹,。首先我们学习游戏开发库的安装,显示一个静止小球;然后学习字符串的概念,并设定小球和背景的颜色;接着学习变量的定义和使用,从而方便修改小球半径、位置等参数;最后学习if语句,实现小球的重复反弹。

本章案例最终代码一共24行,代码参看:配套资源\第2章\2-10-3.py,视频效果参看:配套资源\第2章\弹跳的小球.mp4。

import pgzrun # 导入游戏库

WIDTH = 800   # 设置窗口的宽度
HEIGHT = 600  # 设置窗口的高度
x = WIDTH/2   # 小球的x坐标,初始化在窗口中间
y = HEIGHT/2  # 小球的y坐标,初始化在窗口中间
speed_x = 3   # 小球x方向的速度
speed_y = 5   # 小球y方向的速度
r = 30        # 小球的半径

def draw():   # 绘制模块,每帧重复执行
    screen.fill('white')  # 白色背景
    # 绘制一个填充圆,坐标(x,y),半径r,红色
    screen.draw.filled_circle((x, y), r, 'red')

def update(): # 更新模块,每帧重复操作
    global x,y,speed_x,speed_y # 要修改的变量在这里说明下
    x = x+speed_x   # 利用x方向速度更新x坐标
    y = y+speed_y   # 利用y方向速度更新y坐标
    if x >= WIDTH-r or x <= r:  # 当小球碰到左右边界时
        speed_x = -speed_x       # x方向速度反转
    if y >= HEIGHT-r or y <= r: # 当小球碰到上下边界时
        speed_y = -speed_y       # y方向速度反转

pgzrun.go()   # 开始执行游戏

分步骤代码、讲解视频可以从异步社区下载:

https://www.epubit/bookDetails?id=UB72096d97d6149

分步骤代码也可以直接从这里下载:

联想Filez

 

这一章主要讲解了Python游戏开发库的基本用法,学习了颜色字符串、变量的定义与使用、if语句等知识点。利用这些最少的知识点,开发了一个弹跳小球的趣味程序。在今后的学习中,读者也可以尝试利用本章所学知识,进一步开发台球、泡泡龙、祖玛等复杂的游戏效果。

 

更多推荐

《Python游戏趣味编程》 第2章 弹跳的小球