4个版本 (2个破坏性更新)
0.3.0 | 2024年1月8日 |
---|---|
0.2.2 | 2023年3月13日 |
0.1.1 | 2023年3月9日 |
0.1.0 | 2023年3月8日 |
#444 in 游戏开发
27次每月下载
36KB
389 行
DiceForge
DiceForge是一个Rust库,用于模拟骰子滚动。它提供了一个简单且易于使用的API来生成随机骰子滚动并计算不同结果的概率。
功能
支持标准骰子表示法(例如1d6,2d10等)。可以为滚动添加、减去或乘以修饰符
安装
要在Rust项目中使用DiceForge,请在Cargo.toml文件中添加以下内容
[dependencies]
dice_forge = "0.2.2"
用法
要滚动一个标准的六面骰子,您可以使用编译好的Equation
对象上的roll函数
use dice_forge::Equation;
let die = Equation::new("1d6").unwrap();
let roll = die.roll().unwrap();
println!("You Rolled a {}", roll);
您还可以为您的滚动添加修饰符
use dice_forge::Equation;
let die = Equation::new("1d6+5").unwrap();
let roll = die.roll().unwrap();
println!("You Rolled a {} with a +5 modifier", roll);
它甚至考虑了运算顺序,因此您可以编写像这样的复杂方程
use dice_forge::Equation;
let die = Equation::new("3+1d6(4+3^2)-6/2").unwrap();
let roll = die.roll().unwrap();
println!("You Rolled a {}", roll);
如果您不想创建一个Equation
对象,您可以直接滚动方程
use dice_forge::roll;
let damage = roll::roll("1d6").unwrap();
println!("You do {} damage", damage);
您还可以使用优势或劣势进行滚动
use dice_forge::Equation;
let die = Equation::new("d20").unwrap();
let mut roll = die.advantage().unwrap();
println!("You rolled {} with advantage", roll);
roll = die.disadvantage().unwrap();
println!("You rolled {} with disadvantage", roll);
您可以在docs.rs上查看其余的文档
贡献
欢迎贡献!如果您发现错误或想添加新功能,请在GitHub上提交拉取请求。
或者,如果您愿意,您可以支持我
依赖关系
~310KB