用户:专业的业余编程师查看:0 回复:0 评论:0 创建时间:2022-04-17T10:30:40
【作品展示】

【作品介绍】
如何限制移动范围?打开这个作品,你就知道。
【作品源代码】
import turtle as p#导入海龟并创建画笔
s = p.Screen()#取出窗口工具
size = s.window_height()#获取初始窗口高度
s.setup(size + 100,size + 100)#加大窗口
s.tracer(0)#省略画笔绘画过程,使画面不卡顿
s.title('画地为牢')
p.penup()
pos = [0,0]#将位置使用列表的形式保存,方便使用
def f():#画地来制作牢
p.goto(-size / 2,-size / 2)
p.pendown()
for i in range(4):#正方形‘牢’
p.forward(size)
p.left(90)
p.penup()
def w():
p.clear()#先清除画布
f()#再重新画
if pos[1] + 6 <= size / 2:#检测是否超出了‘牢’
pos[1] += 6
p.goto(pos)
p.dot(30, 'red')#表示‘人’的位置
def a():#这部分同上
p.clear()
f()
if pos[0] - 6 >= -size / 2:
pos[0] -= 6
p.goto(pos)
p.dot(30, 'red')
def s():
p.clear()
f()
if pos[1] - 6 >= -size / 2:
pos[1] -= 6
p.goto(pos)
p.dot(30, 'red')
def d():
p.clear()
f()
if pos[0] + 6 <= size / 2:
pos[0] += 6
p.goto(pos)
p.dot(30,'red')
#初始化
f()
p.goto(pos)
p.dot(30,'red')
#onkey方法是当某个键按下时执行函数(不会返回参数)
p.listen()#onkey方法使用之前要使用listen方法进入监听状态
p.onkey(w,'w')
p.onkey(a,'a')
p.onkey(s,'s')
p.onkey(d,'d')
p.done()#固定画布
【提示】
部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:
https://python.codemao.cn