首页 > 解决方案 > 有没有办法让海龟运动更顺畅

问题描述

我正在制作一个游戏,你可以控制一艘太空船,目前,它的运动很难看,因为它很笨拙。有没有让动作更流畅自然的指令?我在 repl.it 上使用带有 turtle 的 python,而 onrelease 似乎不起作用。任何答案表示赞赏!

import turtle
you = turtle.Turtle()
keycoms = turtle.Screen()

you.penup()

def w():
  you.fd(5)
def s():
  you.bk(3)
def a():
  you.lt(5)
def d():
  you.rt(5)

keycoms.onkey(w,"w")
keycoms.onkey(s,"s")
keycoms.onkey(a,"a")
keycoms.onkey(d,"d")
keycoms.listen()

标签: pythonoptimizationturtle-graphics

解决方案


只需将您的更改onkey(...)onkeypress(...)

import turtle
you = turtle.Turtle()
keycoms = turtle.Screen()

you.penup()

def w():
  you.fd(5)
def s():
  you.bk(3)
def a():
  you.lt(5)
def d():
  you.rt(5)

keycoms.onkeypress(w,"w")
keycoms.onkeypress(s,"s")
keycoms.onkeypress(a,"a")
keycoms.onkeypress(d,"d")
keycoms.listen()

keycoms.mainloop()

Scrren.onkey()方法将允许用户按下特定键只要用户愿意,并且分配给操作的功能命令将只执行一次。

Screen.onkeypress()另一方面,将执行命令的次数与用户按住键的次数一样多。


推荐阅读