from src.engine.chengdu_mahjong_engine import ChengduMahjongEngine def test_mahjong_engine(): """ 测试成都麻将引擎,包括初始化、发牌、轮次逻辑等。 """ # 初始化麻将引擎 engine = ChengduMahjongEngine() # 初始化游戏 engine.initialize_game() # 发牌 engine.deal_tiles() # 检查发牌后的状态 print(f"庄家: 玩家 {engine.state.current_player}") for player in range(4): hand = engine.state.hands[player] print(f"玩家 {player} 的手牌: {hand}") print(f"玩家 {player} 的缺门: {engine.state.missing_suits[player]}") # 模拟游戏主循环 try: engine.run() except Exception as e: print(f"运行时出错: {e}") # 打印游戏结束后的状态 print("\n游戏结束!") for player in range(4): print(f"玩家 {player} 的分数: {engine.state.scores[player]}") print(f"玩家 {player} 的明牌: {engine.state.melds[player]}") print(f"赢家: {engine.state.winners}") # 运行测试 if __name__ == "__main__": test_mahjong_engine()