200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > python海龟画图模块制作的拦球小游戏 谁说小海龟只会画图

python海龟画图模块制作的拦球小游戏 谁说小海龟只会画图

时间:2019-12-09 20:51:57

相关推荐

python海龟画图模块制作的拦球小游戏 谁说小海龟只会画图

""" 拦球小游戏.py

海龟本身的图形有“arrow”, “turtle”, “circle”, “square”, “triangle”, “classic”. 这几种。

分别是:箭头,海龟,圆形,方形,三角形,经典形状。

本节课,我们把小海龟的形状改变为圆形,让它像一个弹弹球一样在屏幕里弹来弹去。

"""

from winsound import PlaySound,SND_ASYNC #从winsound模块,导入播放声音的命令和一个用于异步播放的常量。

from turtle import *

from random import randint

from time import sleep

碰撞声 = 'sound.wav'

w,h= 480,360

screen = Screen()

screen.delay(0) #屏幕延时为1豪秒

screen.bgcolor("black")

screen.setup(w,h)

screen.title("拦球小游戏_turtle海龟画图版_作者:李兴球")

#--------------------------------------------------------------

#封面设计

封面图 = "拦球小游戏封面设计.gif"

背景图 = "拦球小游戏背景.gif"

screen.bgpic(封面图)

screen.update()

sleep(2)

screen.bgpic(背景图)

#--------------------------------------------------------------

拦板 = Turtle(shape = 'square')

拦板.shapesize(0.5,5) #长方形的长度为100x10像素

拦板.penup()

拦板.speed(0)

拦板.color("white","white")

拦板.sety(50-h/2)

def 向右移():

拦板.setx(拦板.xcor() + 10)

def 向左移():

拦板.setx(拦板.xcor() - 10)

screen.onkeypress(向右移,"Right")

screen.onkeypress(向左移,"Left")

screen.listen()

#--------------------------------------------------------------

弹球=Turtle(shape='circle')#新建海龟,形状为圆形

弹球.speed(0) #速度为最快.

弹球.penup()

弹球.color("yellow","yellow")

x速度 = randint(2,3) #设置初始水平速度

y速度 = randint(2,3) #设置初始垂直速度

弹球丢失 = False

while not 弹球丢失:

x = 弹球.xcor() + x速度 #设置弹球在水平方向移动 x速度

y= 弹球.ycor() + y速度 #设置弹球在垂直方向移动 y速度

弹球.goto(x,y)

if x>w/2 or x <-w/2:

x速度 = - x速度

PlaySound(碰撞声, SND_ASYNC) #异步播放音效,这就不必等到声音播放结束后才能运行下面的代码。

if y>h/2 :

y速度 = - y速度

PlaySound(碰撞声, SND_ASYNC)

if y<-h/2:弹球丢失 = True

拦板左x = 拦板.xcor() - 50

拦板右x = 拦板.xcor() + 50

拦板上y = 拦板.ycor() + 5

拦板下y = 拦板.ycor() - 5

if x< 拦板右x and x >拦板左x:

if y < 拦板上y and y > 拦板下y :

y速度 = - y速度

PlaySound(碰撞声, SND_ASYNC)

sleep(0.01)

screen.bgpic("拦球小游戏弹球丢了.gif")

screen.mainloop()

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。