public string ToUsiString() { if (this == Resign) { return("resign"); } else if (this == Win) { return("win"); } string usiString = ""; if (Drop) { usiString += char.ToUpper(PieceFrom.ToUsiChar()); usiString += "*"; } else { usiString += (char)(FileFrom + '1'); usiString += (char)(RankFrom + 'a'); } usiString += (char)(FileTo + '1'); usiString += (char)(RankTo + 'a'); if (Promotion) { usiString += "+"; } return(usiString); }
public override string ToString() { return($"{SideToMove.ToHumanReadableString()}{(char)('1' + FileTo)}{RankToKanjiLetters[RankTo]}{PieceFrom.ToHumanReadableString().Trim()[0]}{(Promotion ? "成" : "")}"); }