【Python开发实践】AI人机对战五子棋——棋型变量设置&多人游戏类

棋型变量设置

之前的内容里,有写到棋型的设置,但在整个程序中,为了让计算机对棋型的数量、类型进行识别,需要设置一些棋型变量:

python 复制代码
class SITUATION(IntEnum):  # 棋型
    NONE = 0,  # 无
    SLEEP_TWO = 1,  # 眠二
    LIVE_TWO = 2,  # 活二
    SLEEP_THREE = 3,  # 眠三
    LIVE_THREE = 4,  # 活三
    CHONG_FOUR = 5,  # 冲四
    LIVE_FOUR = 6,  # 活四
    LIVE_FIVE = 7,  # 活五


SITUATION_NUM = 8  # 长度

# 方便后续调用枚举内容
FIVE = SITUATION.LIVE_FIVE.value
L4, L3, L2 = SITUATION.LIVE_FOUR.value, SITUATION.LIVE_THREE.value, SITUATION.LIVE_TWO.value
S4, S3, S2 = SITUATION.CHONG_FOUR.value, SITUATION.SLEEP_THREE.value, SITUATION.SLEEP_TWO.value

多人游戏类设置

python 复制代码
class MultiStartButton(Button):  # 开始按钮(多人游戏)
    def __init__(self, screen, text, x, y):  # 构造函数
        super().__init__(screen, text, x, y, [(153, 51, 250), (221, 160, 221)], True)  # 紫色

    def click(self, game):  # 点击,pygame内置方法
        if self.enable:  # 启动游戏并初始化,变换按钮颜色
            game.start()
            game.winner = None
            game.multiple=True
            self.msg_image = self.font.render(self.text, True, self.text_color, self.button_color[1])
            self.enable = False
            return True
        return False

    def unclick(self):  # 取消点击
        if not self.enable:
            self.msg_image = self.font.render(self.text, True, self.text_color, self.button_color[0])
            self.enable = True
相关推荐
27669582921 小时前
美团优选小程序 mtgsig 分析 mtgsig1.2
java·python·小程序·美团·mtgsig·mtgsig1.2·美团优选
el psy congroo1 小时前
Kotlin-高阶函数,Lambda表达式,内联函数
开发语言·kotlin
安全系统学习1 小时前
网络安全之浅析Java反序列化题目
运维·开发语言·网络·算法·安全·web安全·php
小咕聊编程1 小时前
【含文档+PPT+源码】基于大数据的交通流量预测系统
大数据·python·django
mqiqe1 小时前
java 加入本地lib jar处理方案
java·python·jar
意.远1 小时前
PyTorch线性代数操作详解:点积、矩阵乘法、范数与轴求和
人工智能·pytorch·python·深度学习·线性代数·矩阵
带娃的IT创业者1 小时前
《Python实战进阶》No45:性能分析工具 cProfile 与 line_profiler
开发语言·python
码力码力我爱你2 小时前
QT Quick 3D 渲染之场景构建(一)
开发语言·qt·3d
专注于大数据技术栈2 小时前
pyspark将hive数据写入Excel文件中
hive·hadoop·python·excel
纪元A梦2 小时前
华为OD机试真题——斗地主之顺子(2025A卷:100分)Java/python/JavaScript/C/C++/GO最佳实现
java·c语言·javascript·c++·python·华为od