1 Star 0 Fork 0

0_0请用洛必达/tic-tac-toe

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
move.py 1.95 KB
一键复制 编辑 原始数据 按行查看 历史
0_0请用洛必达 提交于 2024-07-31 09:55 . 2024/7/31
import serial
import time
import globals
def get_position(bestMove):
"""
根据bestMove值返回对应的(x, y, z)坐标
"""
return globals.best_move_to_position.get(bestMove, None)
def init_pos():
send_message(0, 0, False)
def send_message(x, y, air):
# """
# 发送格式化信息到串口
# """
# # 初始化串口
# ser = serial.Serial('/dev/ttyS0', 115200)
#
# if ser.isOpen(): # 判断串口是否成功打开
# print("打开串口成功。")
# print(ser.name) # 输出串口号
# else:
# print("打开串口失败")
#
# ser.flush()
#
# y_sign = '+' if y >= 0 else '-'
# y_abs = abs(y)
#
# # 构建消息字符串
# message = f"{int(x):03d}{y_sign}{int(y_abs):03d}-007{int(air):01d}"
# print(f"Sending message: {message}")
#
# # 发送消息到串口
# result = ser.write(message.encode("utf-8"))
# print(f"Bytes written: {result}")
#
# # 等待接收响应
# time.sleep(3)
# com_input = ser.read(400)
# if com_input: # 如果读取结果非空,则输出
# print(com_input)
print("hello")
def choose():
"""
挑选棋子并获取x最小的棋子的位置,然后调用send_message(x, y, air)
"""
# 根据 dobot_color 挑选对应颜色的棋子列表
if globals.dobot_color == 'white':
selected_ca = globals.white_ca
else:
selected_ca = globals.black_ca
if not selected_ca:
print("No pieces available to pick.")
return
# 按 x 坐标排序,获取 x 最小的棋子
selected_ca.sort(key=lambda item: item[1][0])
piece_to_pick = selected_ca[0]
# 获取棋子的坐标
x, y = piece_to_pick[1]
return x, y
def bestmove(bestmove):
print("Success3")
x_1, y_1 = choose()
x_2, y_2 = get_position(bestmove)
send_message(x_1, y_1, True)
send_message(x_2, y_2, True)
send_message(x_2, y_2, False)
init_pos()
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/zhangzherui666/tic-tac-toe.git
git@gitee.com:zhangzherui666/tic-tac-toe.git
zhangzherui666
tic-tac-toe
tic-tac-toe
master

搜索帮助