Пример #1
0
            c = str(msvcrt.getch())  # 输入读取  无需回车
            if c == "b'q'":
                running = False
            elif c == "b'w'":
                snake.set_toward("UP")
            elif c == "b's'":
                snake.set_toward("DOWN")
            elif c == "b'a'":
                snake.set_toward("LEFT")
            elif c == "b'd'":
                snake.set_toward("RIGHT")


input_thread = InputThread()
input_thread.start()  # 启动子线程,负责输入读取

while running:
    death = snake.action(bug, wall.points)
    if death:
        print("小蛇死了,\n按Q键退出")
        break

    displayer.extend_point(wall.points)
    displayer.extend_point(snake.points)
    displayer.extend_point(bug.point)

    # 绘制图像
    displayer.draw_graphics(snake.score)
    displayer.clear()  # 清空这一帧的数据
    time.sleep(snake.sleep_time)