D20

需要在 Swift 中评估 骰子表示法 吗?这个软件包适合你。

示例

let roll = Roll("1d20")!.roll()
roll.result
// $R0: Int = 18

let roll = Roll("3d8+1d6")!.roll()
roll.result
// $R0: Int = 19
roll.expression
// $R1: String = "1+6+7+5"

// Percentage die shorthand is also supported.
let roll = Roll("d%")

D(20).average
// $R0: Double = 10.5

API 的其余部分非常直观。Dice 和 Rolls 具有用于访问其 roll 的最大值、半值和平均值的属性。使用 roll() 函数可以在这两种类型上实际掷骰子并获得一些随机值。

CLI

这个软件包还包括一个小型 CLI,用于直接在你的终端中掷骰子。

$ d20 2d6+4
# 14 (6+4)+4

$ alias dagger='d20 1d4+2'
$ dagger
# 6 (4)+2
# CRIT!

# Invoke it without an argument to enter REPL mode.
$ d20
> d4
3 (3)
> 2d4
6 (2+4)

安装它非常简单。只需在克隆 repo 后运行以下命令即可。

$ swift build -c release
$ cp .build/release/d20 /usr/local/bin/d20

Logo 鸣谢

D20 作者:Lonnie Tapscott,来自 Noun Project