added constructor for quiet moves in chessmove.rs

This commit is contained in:
Varga Dávid Lajos
2025-11-16 19:00:00 +01:00
parent d1932762f9
commit bb74a486d8
2 changed files with 23 additions and 1 deletions

View File

@@ -1,3 +1,5 @@
use crate::piecetype;
use super::boardsquare::BoardSquare;
use super::piecetype::PieceType;
use super::movetype::MoveType;
@@ -11,4 +13,24 @@ pub struct ChessMove {
pub rook_from: BoardSquare,
pub rook_to: BoardSquare,
pub promotion_piece: Option<PieceType>
}
impl ChessMove {
pub fn quiet(
piece_type: PieceType,
from_square: BoardSquare,
to_square: BoardSquare,
promotion_piece: Option<PieceType>
) -> Self {
return Self {
move_type: MoveType::Quiet,
piece_type: piece_type,
from_square: from_square,
to_square: to_square,
rook_from: BoardSquare::new(),
rook_to: BoardSquare::new(),
promotion_piece: promotion_piece
}
}
}

View File

@@ -1,6 +1,6 @@
pub enum MoveType {
Move,
Quiet,
Capture,
Castle,
EnPassant