5个版本 (重大更新)
0.5.0 | 2021年7月30日 |
---|---|
0.4.0 | 2021年7月12日 |
0.3.0 | 2021年7月12日 |
0.2.0 | 2021年7月12日 |
0.1.0 | 2021年7月11日 |
#13 in #滚动
45KB
962 行
咕噜噜
咕噜噜是另一个使用类似TRPG语法的掷骰crate。
尝一尝
let attack = "3d6+2d4+1";
println!("roll your attack({}), result: {}", attack, gurgle::roll(attack).unwrap());
// output: roll your attack(3d6+2d4+1), result: 16
use gurgle::Gurgle;
let attack = "3d6+2d4+1>15";
let dice = Gurgle::compile(attack).unwrap();
let result = dice.roll();
println!("roll your attack({}), result: {}", attack, result);
// output: roll your attack(3d6+2d4+1>15), result: (4+3+1) + (1+3) + 1 = 15, target is >15, failed
注意:仅当启用功能detail
(默认启用)时,才实现了用于掷骰结果的Display
trait。
但是您始终可以使用result.value()
来获取掷骰结果值(i64),以及使用result.success()
来获取是否成功。
咕噜噜也支持乘法和括号,详见文档中的完整语法和示例。
许可
BSD 3-Clause Clear License,见LICENSE。
依赖
~2.2–3MB
~59K SLoC