shiritori

Crates.ioshiritori
lib.rsshiritori
version0.1.1
sourcesrc
created_at2022-05-07 07:01:27.594534
updated_at2022-05-08 14:49:14.669429
descriptionJapanse shiritori game
homepage
repositoryhttps://github.com/tnantoka/shiritori-rs/
max_upload_size
id581994
size15,096,014
Tatsuya Tobioka (tnantoka)

documentation

README

Shiritori-rs

Shiritori is a famous word chain game in Japan.

Live demo (Wasm)

https://tnantoka.github.io/shiritori-wasm/

Usage

shiritori = { git = "https://github.com/tnantoka/shiritori-rs.git" }

# for Wasm
getrandom = { version = "0.2.6", features = ["js"] }
use shiritori::game::{Game};
use shiritori::word::{WordList, WordListType};

let word_list = WordList::load(WordListType::Pokemon);
let mut game = Game::new(word_list);

game.current_turn(); # Word { text: "ピカチュウ", reading: "ピカチユウ" }
let judgement = game.next_turn("ウーラオス");
game.current_turn(); # Word { text: "スイクン", reading: "スクイン" }

judgement.game_over # true
judgement.winner # Player::You
judgement.reason # Reason::LastLetterIsInvalid

Example

$ cargo run --example hello pokemon

bot> ピカチュウ(ピカチユウ)
next: ウ
you> ウーラオス
bot> スイクン(スイクン)
You win
(last letter is invalid)

Development

Update word list

$ cargo run --bin generate

# pretty
$ cargo run --bin generate -- -p

Acknowledgments

Commit count: 10

cargo fmt