3 个版本
0.1.2 | 2022 年 4 月 8 日 |
---|---|
0.1.1 | 2022 年 4 月 8 日 |
0.1.0 | 2022 年 4 月 8 日 |
#495 in 游戏
42KB
349 行
L19_Terminal_TicTacToe
目的:教育
测试 Cargo.io 提交、版本和文档。
测试将围绕井字棋游戏编写。见 TODO。
说明
环境
Linux, x86_64。
安装 rust
见:Rustup
安装 L19_Terminal_TicTacToe
git clone https://github.com/L19579/L19_Terminal_TicTacToe.git # Download repo
cd #insert_repo_directory
cargo build --release
启动
./target/release/l19_terminal_tictactoe
控制
- 游戏输入绑定在 main.rs 中设置。系统将根据 UTF-8 绑定输入 2 个字符的长度按时间顺序适应。
use l19_terminal_tictactoe as l19;
//-- snip
let input_bindings: Hashmap::<&str, usize> = HashMap::from([
("a1", 0),
("a2", 1),
("a3", 2),
("b1", 3),
("b2", 4),
("b3", 5),
("c1", 6),
("c2", 7),
("c3", 8),
]);
let mut gm = l19::GameMaster::new(&input_bindings);
//-- snip
- 输入提示时输入。这个 "机器人" 只是一个伪随机数生成器。要想输掉游戏需要花点力气。
外部链接和文档
包 (0.1.2):Crates.io
发布的文档:Docs.rs
TODO - 完成
- 随机化器决定哪个玩家先开始。
- X 分配给玩家 1,O 分配给玩家 2。
- 基于回合制的,更新的棋盘显示在下方。出于简洁性,终端不会被清除。
- 玩家被展示单元格 ID 并输入以选择位置时被提示。
- 当玩家/人工智能移动时,X/O 被绘制。
- 每次移动都会保存状态表。
- 提交位置后,系统检查是否有获胜者。
- 完整的代码文档在 Docs.rs 上
- 顶级描述在 Github 上;列在发行版中。
- 顶级描述在 Crates.io 上;列在发行版中。
依赖项
~315KB