如果乌龟遇到一条线,如何让程序关闭

时间:2016-05-26 12:00:08

标签: python-3.x turtle-graphics

有没有办法让乌龟程序在触摸屏幕上的一条线时关闭?我试图让游戏有点像特朗,但我需要让程序关闭,如果有人到目前为止我已完成主要部分:

from tkinter import *
from turtle import *
import turtle
import webbrowser
import time


tess = turtle.Turtle()
alex = turtle.Turtle()


tess.width(1)
tess.color("red")
alex.color("blue")
alex.width(1)
turtle.setup(500,600)
wn = turtle.Screen() 
wn.title("Draw whith lines!!") 
wn.bgcolor("black")

def h1():
    yes = ("yes")
    while yes in ("yes"):
      tess.forward(10)
      alex.forward(10)
      time.sleep(0.5)

def h2():

  tess.left(90)

def h3():
  tess.right(90)

def ha():
  alex.left(90)

def hd():
  alex.right(90)

wn.onkey(h1, "Up")
wn.onkey(h2, "Left")
wn.onkey(h3, "Right")
wn.onkey(ha, "a")
wn.onkey(hd, "d")
wn.listen()
wn.mainloop()

现在我只需要关闭并显示谁赢了但我无法弄明白!

1 个答案:

答案 0 :(得分:0)

你的海龟只能以10px的步幅移动并以直角转动,所以你有一个海龟可以去的网格。你只需要标记龟去的每个细胞,检查这个细胞是否已被标记。您还需要记住每只乌龟的方向。棘手的部分来自一个单元格(i,j),一个方向计算乌龟所在的新单元格(i',j')。

提示:[-1,0,1]中的方向为(dx,dy),dx,dy非常容易。