#tic-tac-toe #game #logic #engine

超级-ttt

超级井字棋的实现

4次发布

0.2.0 2023年9月16日
0.1.2 2023年9月2日
0.1.1 2023年9月1日
0.1.0 2023年9月1日

#486游戏

MIT/Apache

14KB
183

超级井字棋

Crates.io docs.rs

这个Rust库提供了超级井字棋逻辑的核心实现。超级井字棋是传统井字棋的扩展版本,在一个9x9的网格上玩,每个网格都是一个更小的井字棋板。游戏的规则在维基百科条目中有详细说明。

文档在此可以找到

安装

要使用此库,请通过以下方式将其添加到您的Cargo.toml

$ cargo add super-ttt

示例

以下是一个示例,演示如何使用此库玩游戏

use super_ttt::{Game, Player};

fn main() {
    // Make moves and check for a winner
    let mut game = Game::new();
    game.make_move(0, 0, 1, 1).unwrap();
    game.make_move(1, 1, 0, 0).unwrap();
    game.make_move(0, 1, 2, 2).unwrap();
    game.make_move(2, 2, 0, 2).unwrap();
    game.make_move(0, 2, 1, 0).unwrap();

    match game.get_winner() {
        super_ttt::GameState::Winner(player) => {
            println!("Player {:?} wins!", player);
        }
        super_ttt::GameState::Tie => {
            println!("It's a tie!");
        }
        super_ttt::GameState::InProgress => {
            println!("The game is still in progress.");
        }
    }
}

贡献

欢迎对此项目做出贡献!如果您遇到任何问题或对改进有建议,请在GitHub仓库中打开问题或提交拉取请求。

许可证

此库根据MIT许可证许可。有关更多信息,请参阅LICENSE文件。

无运行时依赖项