online multiplayer chess game (note server currently down)
Diffstat (limited to 'SanParse/SanParse.gd')
| -rw-r--r-- | SanParse/SanParse.gd | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/SanParse/SanParse.gd b/SanParse/SanParse.gd index a93b430..cd7d889 100644 --- a/SanParse/SanParse.gd +++ b/SanParse/SanParse.gd @@ -30,7 +30,7 @@ const UNKNOWN_POS = Vector2(-1, -1) enum { PAWN, KNIGHT, BISHOP, ROOK, QUEEN, KING } -func from_str(string: String) -> int: +static func from_str(string: String) -> int: var find = " NBRQK".find(string) if find != -1: return find @@ -54,15 +54,13 @@ func regexmatch(san: String) -> Move: var re: RegExMatch = regexs.pawn_move.search(san) if re: var cap = re.strings - var mov = Move.new(PAWN, [UNKNOWN_POS, pos(cap[1], cap[2])]) - mov.set_check_type(cap[3]) + var mov = Move.new(PAWN, [UNKNOWN_POS, pos(cap[1], cap[2])]).set_check_type(cap[3]) return mov re = regexs.long_pawn_move.search(san) if re: var cap = re.strings - var mov = Move.new(PAWN, [pos(cap[1], cap[2]), pos(cap[3], cap[4])]) - mov.set_check_type(cap[5]) + var mov = Move.new(PAWN, [pos(cap[1], cap[2]), pos(cap[3], cap[4])]).set_check_type(cap[5]) return mov re = regexs.piece_movement.search(san) @@ -75,14 +73,18 @@ func regexmatch(san: String) -> Move: re = regexs.specific_row_piece_movement.search(san) if re: var cap = re.strings - var mov = Move.new(from_str(cap[1]), [Vector2(-1, Utils.row_pos(cap[2])), pos(cap[3], cap[4])]) + var mov = Move.new( + from_str(cap[1]), [Vector2(-1, Utils.row_pos(cap[2])), pos(cap[3], cap[4])] + ) mov.set_check_type(cap[5]) return mov re = regexs.specific_column_piece_movement.search(san) if re: var cap = re.strings - var mov = Move.new(from_str(cap[1]), [Vector2(Utils.col_pos(cap[2]), -1), pos(cap[3], cap[4])]) + var mov = Move.new( + from_str(cap[1]), [Vector2(Utils.col_pos(cap[2]), -1), pos(cap[3], cap[4])] + ) mov.set_check_type(cap[5]) return mov @@ -119,14 +121,18 @@ func regexmatch(san: String) -> Move: re = regexs.specific_column_piece_capture.search(san) if re: var cap = re.strings - var mov = Move.new(from_str(cap[1]), [Vector2(Utils.col_pos(cap[2]), -1), pos(cap[3], cap[4])], true) + var mov = Move.new( + from_str(cap[1]), [Vector2(Utils.col_pos(cap[2]), -1), pos(cap[3], cap[4])], true + ) mov.set_check_type(cap[5]) return mov re = regexs.specific_row_piece_capture.search(san) if re: var cap = re.strings - var mov = Move.new(from_str(cap[1]), [Vector2(-1, Utils.row_pos(cap[2])), pos(cap[3], cap[4])], true) + var mov = Move.new( + from_str(cap[1]), [Vector2(-1, Utils.row_pos(cap[2])), pos(cap[3], cap[4])], true + ) mov.set_check_type(cap[5]) return mov |