本文整理汇总了Python中pychess.Utils.Board.Board.setColor方法的典型用法代码示例。如果您正苦于以下问题:Python Board.setColor方法的具体用法?Python Board.setColor怎么用?Python Board.setColor使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pychess.Utils.Board.Board
的用法示例。
在下文中一共展示了Board.setColor方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: CECPEngine
# 需要导入模块: from pychess.Utils.Board import Board [as 别名]
# 或者: from pychess.Utils.Board.Board import setColor [as 别名]
#.........这里部分代码省略.........
# Internal
#===========================================================================
def __usermove (self, board, move):
if self.features["usermove"]:
self.engine.write("usermove ")
if self.features["san"]:
print >> self.engine, toSAN(board, move)
else:
cn = CASTLE_KK
if board.variant == FISCHERRANDOMCHESS:
cn = CASTLE_SAN
print >> self.engine, toAN(board, move, short=True, castleNotation=cn)
def __tellEngineToMoveNow (self):
if self.features["sigint"]:
self.engine.sigint()
print >> self.engine, "?"
def __tellEngineToStopPlayingCurrentColor (self):
print >> self.engine, "force"
self.engineIsInNotPlaying = True
def __tellEngineToPlayCurrentColorAndMakeMove (self):
self.__printColor()
print >> self.engine, "go"
self.engineIsInNotPlaying = False
def __sendAnalyze (self, inverse=False):
self.__tellEngineToStopPlayingCurrentColor()
if inverse:
self.board = self.board.setColor(1-self.color)
self.__printColor()
if self.engineIsInNotPlaying: print >> self.engine, "force"
self.mode = INVERSE_ANALYZING
else:
self.mode = ANALYZING
print >> self.engine, "post"
print >> self.engine, "analyze"
# workaround for crafty not sending analysis after it has found a mating line
# http://code.google.com/p/pychess/issues/detail?id=515
if "crafty" in self.features["myname"].lower():
print >> self.engine, "noise 0"
def __printColor (self):
if self.features["colors"] or self.mode == INVERSE_ANALYZING:
if self.board.color == WHITE:
print >> self.engine, "white"
else: print >> self.engine, "black"
def __setBoard (self, board):
if self.features["setboard"]:
self.__tellEngineToStopPlayingCurrentColor()
fen = board.asFen()
if self.mode == INVERSE_ANALYZING:
# Some engine doesn't support feature "colors" (f.e: TJchess)
# so "black" and "white" command doesn't change the side to move
fen_arr = fen.split()
if self.board.color == WHITE:
if fen_arr[1] == "b":
fen_arr[1] = "w"
fen = " ".join(fen_arr)
示例2: CECPEngine
# 需要导入模块: from pychess.Utils.Board import Board [as 别名]
# 或者: from pychess.Utils.Board.Board import setColor [as 别名]
#.........这里部分代码省略.........
if offer.type == DRAW_OFFER and error == ACTION_ERROR_NONE_TO_ACCEPT:
self.emit("offer", Offer(DRAW_OFFER))
#===========================================================================
# Internal
#===========================================================================
def __usermove (self, board, move):
if self.features["usermove"]:
self.engine.write("usermove ")
if self.features["san"]:
print >> self.engine, toSAN(board, move)
else: print >> self.engine, toAN(board, move, short=True)
def __tellEngineToMoveNow (self):
if self.features["sigint"]:
self.engine.sigint()
print >> self.engine, "?"
def __tellEngineToStopPlayingCurrentColor (self):
print >> self.engine, "force"
self.engineIsInNotPlaying = True
def __tellEngineToPlayCurrentColorAndMakeMove (self):
self.__printColor()
print >> self.engine, "go"
self.engineIsInNotPlaying = False
def __sendAnalyze (self, inverse=False):
self.__tellEngineToStopPlayingCurrentColor()
if inverse:
self.board = self.board.setColor(1-self.color)
self.__printColor()
if self.engineIsInNotPlaying: print >> self.engine, "force"
self.mode = INVERSE_ANALYZING
else:
self.mode = ANALYZING
print >> self.engine, "post"
print >> self.engine, "analyze"
# workaround for crafty not sending analysis after it has found a mating line
# http://code.google.com/p/pychess/issues/detail?id=515
if "crafty" in self.features["myname"].lower():
print >> self.engine, "noise 0"
def __printColor (self):
if self.features["colors"] or self.mode == INVERSE_ANALYZING:
if self.board.color == WHITE:
print >> self.engine, "white"
else: print >> self.engine, "black"
def __setBoard (self, board):
if self.features["setboard"]:
self.__tellEngineToStopPlayingCurrentColor()
print >> self.engine, "setboard", board.asFen()
else:
# Kludge to set black to move, avoiding the troublesome and now
# deprecated "black" command. - Equal to the one xboard uses
self.__tellEngineToStopPlayingCurrentColor()
if board.color == BLACK:
print >> self.engine, "a2a3"
print >> self.engine, "edit"
print >> self.engine, "#"