为了账号安全,请及时绑定邮箱和手机立即绑定

Python乌龟鼠标不直接跟随

Python乌龟鼠标不直接跟随

翻阅古今 2021-10-26 15:41:12
你如何在不使用turtle.goto(x,y)但是turtle.speed(speed)和的情况下让乌龟移动turtle.heading(angle)?我正在制作的游戏需要这个。鼠标在哪里,我想让它朝那个方向移动。但是当我改变它时,它会去那个地方然后去我的鼠标:import turtlescreen = turtle.Screen()screen.title("Test")screen.bgcolor("white")screen.setup(width=600, height=600)ship = turtle.Turtle()ship.speed(1)ship.shape("triangle")ship.penup()ship.goto(0,0)ship.direction = "stop"ship.turtlesize(3)turtle.hideturtle()def onmove(self, fun, add=None):        if fun is None:            self.cv.unbind('<Motion>')        else:            def eventfun(event):                fun(self.cv.canvasx(event.x) / self.xscale, -self.cv.canvasy(event.y) / self.yscale)            self.cv.bind('<Motion>', eventfun, add)def goto_handler(x, y):    onmove(turtle.Screen(), None)    ship.setheading(ship.towards(x, y)) #this is where you use the x,y cordinates and I have seat them to got to x,y and set heading    ship.goto(x,y)    onmove(turtle.Screen(), goto_handler)onmove(screen, goto_handler)如果你只setheading和speed它只是变成这样并不会移动。如果您尝试使用此代码,它会起作用 - 正是我使用ship.goto(x, y)它使它转到(x, y). 但是当您在移动时更换鼠标时,它首先会移动(x, y)到您的新鼠标位置。我几乎只想让它跟随鼠标,但我不能那样做。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 216 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信