4 个版本
0.2.2 | 2021 年 4 月 4 日 |
---|---|
0.2.1 | 2019 年 4 月 16 日 |
0.2.0 | 2019 年 4 月 16 日 |
0.1.0 | 2019 年 4 月 11 日 |
#335 in 游戏
每月 25 次下载
23KB
516 行
deck_codes
一个用于编码和解码炉石传说牌组代码或牌组字符串的 Rust 库。
牌组代码的示例可以在 这里 找到。
此库返回的任何牌组字符串或牌组定义都将是最规范的。这意味着卡牌和英雄将按照 dbf id 的升序排序。
dbf id 和卡牌之间的映射可以在 HearthstoneJSON 中找到。
用法
extern deck_codes;
use deck_codes::{decode_deck_code, encode_deck_code, format::Format};
fn main() {
let code = "AAECAf0EBMABobcC3s0Cps4CDXHDAbsClQOrBJYF7AWjtgLXtgLpugKHvQLBwQKYxAIA";
let deck = decode_deck_code(code).expect("Decoded safely");
assert_eq!(deck.format, Format::Standard);
assert_eq!(deck.heroes, vec![637]); // dbfid for Jaina
assert_eq!(deck.total_cards(), 30);
let expected_cards = vec![
// Singles
(1, 192), (1, 39841), (1, 42718), (1, 42790),
// Doubles
(2, 113), (2, 195), (2, 315), (2, 405), (2, 555), (2, 662), (2, 748),
(2, 39715), (2, 39767), (2, 40297), (2, 40583), (2, 41153), (2, 41496)
];
assert_eq!(deck.cards(), expected_cards);
let reverse_code = encode_deck_code(deck);
assert_eq!(code, reverse_code);
}
依赖关系
~0.5–1MB
~23K SLoC