1 个不稳定版本
0.1.0 | 2022年11月11日 |
---|
#384 在 游戏
65KB
1.5K SLoC
桃太郎伝説 (FC) 密码库
执行密码和游戏状态的相互转换。
示例
//! パスワード「ふ」をロードする。
use momoden_password::*;
fn main() {
let password = Password::parse("ふ").unwrap();
let bytes = SerializedBytes::from_password(&password);
if let Some(savedata) = bytes.to_savedata() {
// 生のセーブデータ(装備インデックスが不正なまま)を出力する。
println!("raw: {savedata:?}");
// 実際にロードされるセーブデータ(装備が変化した後)を出力する。
let savedata_norm = savedata.normalize();
println!("normalized: {savedata_norm:?}");
} else {
// チェックサムが一致しない場合、to_savedata() は失敗する。
println!("checksum mismatch");
}
}
//! パスワード「ふ」をロードした直後の状態をパスワード化する。
use momoden_password::*;
fn main() {
// パスワード「ふ」をロードし、実際にロードされるセーブデータを得る。
let password = Password::parse("ふ").unwrap();
let bytes = SerializedBytes::from_password(&password);
let savedata = bytes.to_savedata().unwrap();
let savedata = savedata.normalize();
// このセーブデータに対応するパスワードを得る。
// (パスワード「ふ」で始めてすぐ神主に話しかけたときのパスワードと一致するはず)
let bytes = SerializedBytes::from_savedata(&savedata);
let password = bytes.to_password();
println!("{}", password.display_pretty());
}
许可证
GPLv3
依赖关系
~1.3–1.8MB
~42K SLoC