Update actions.py
parent
03fcd8203c
commit
6a6baeb460
|
|
@ -186,4 +186,37 @@ def set_missing_suit(player, game_state):
|
|||
f"玩家 {player} 手牌花色分布: {suit_counts}。缺门设置为: {missing_suit}"
|
||||
)
|
||||
|
||||
return missing_suit
|
||||
return missing_suit
|
||||
|
||||
|
||||
def check_other_players(self, tile):
|
||||
"""
|
||||
检查其他玩家是否可以对打出的牌进行操作(如碰、杠、胡牌)。
|
||||
"""
|
||||
current_player = self.state.current_player
|
||||
next_player = (current_player + 1) % 4
|
||||
|
||||
for player in range(4):
|
||||
if player == current_player:
|
||||
continue
|
||||
|
||||
# 检查是否可以碰
|
||||
if self.state.hands[player].tile_count[tile] >= 2:
|
||||
logger.info(f"玩家 {player} 可以碰玩家 {current_player} 的牌: {tile}")
|
||||
# 根据规则决定是否碰
|
||||
# 这里可以扩展为调用 AI 或玩家输入
|
||||
# self.peng(tile)
|
||||
|
||||
# 检查是否可以杠
|
||||
if self.state.hands[player].tile_count[tile] >= 3:
|
||||
logger.info(f"玩家 {player} 可以杠玩家 {current_player} 的牌: {tile}")
|
||||
# 根据规则决定是否杠
|
||||
# self.gang(tile, mode="ming")
|
||||
|
||||
# 检查是否可以胡牌
|
||||
if self.can_win(self.state.hands[player], self.state.melds[player], self.state.missing_suits[player]):
|
||||
logger.info(f"玩家 {player} 可以胡玩家 {current_player} 的牌: {tile}")
|
||||
# 根据规则决定是否胡牌
|
||||
# self.handle_win(player)
|
||||
|
||||
logger.info(f"玩家 {current_player} 打出的牌 {tile} 没有触发其他玩家的操作")
|
||||
Loading…
Reference in New Issue