一个简单的小球弹跳。。
import pgzrun
y = 100
x = 100
speed_y = 20
speed_x = 14 #通过调节这里的数值改变弹跳地点
def draw():#不停地更新
screen.fill('white')
screen.draw.filled_circle((x, y), 30, 'red')#python的中心点在screen的左上角, python窗口默认800*600,30是半径
def update():
global x, y,speed_y,speed_x#global的意思是把y和speed_y强制成为全局变量
y = y + speed_y
x = x + speed_x
if x>=770 or x<=30:#因为求的半径是30
speed_x = - speed_x
if y <= 30 or y>=570:
speed_y = - speed_y
pgzrun.go()
来个标准模版:
import pgzrun #导入游戏库
WIDTH = 800 #设置窗口宽度
HEIGHT = 600 #设置窗口高度
x = WIDTH/2 #小球x坐标,初始化在窗口中间
y = HEIGHT/2 #小球x坐标,初始化在窗口中间
speed_x = 3 #小球x方向的速度
speed_y = 3 #小球y方向的速度
r = 30 #小球的半径
def draw(): #绘制模块,每帧重复执行
screen.fill('white') #白色背景
screen.draw.filled_circle((x,y),r,'red')#绘制一个填充圆,坐标(x,y),半径r,红色
def update(): #更新模块,每帧重复操作
global x,y,speed_x,speed_y
x = x+speed_x
y = y+speed_y
if x >= WIDTH-r or x<=r:
speed_x = -speed_x
if y >= HEIGHT - r or y <= r:
speed_y = -speed_y
pgzrun.go()
网友评论