Dice 解析器接口
这个模块仅仅提供了介于 @ 3d- dice/ dice- roller- parser 财务报告和审定财务报表 @ 3d- diice/ diice- box (简体中文)。自 dice-roller-parser 是另一个人模块的叉子, 我不想把这个接口包含在软件包中.
FDP (Fantastic Dice Parcer)已经更名为 Dice Parser Interface 为同义词. 这个 @3d-dice/fdp npm 模块已取消定价
它会做什么
此模块允许使用更高级的卷 dice-box。所有支持的卷被记录在 卷20 剂量规格
怎样用
使用 :
npm install @3d-dice/dice-parser-interface
然后创建一个新的内存 dice-parser-interface
import DiceParser from '@3d-dice/dice-parser-interface'
const DP = new DiceParser()
DP类现在有方法解析原始标记,处理再卷并计算最终结果来自 dice-box
<form id="dice-to-roll">
<input id="input--notation" class="input" placeholder="2d20" autocomplete="off" />
</form>
const form = document.getElementById("dice-to-roll")
const notationInput = document.getElementById("input--notation")
const submitForm = (e) => {
e.preventDefault();
const notation = DP.parseNotation(notationInput.value)
}
form.addEventListener("submit", submitForm)
方法
parseNotation(单位:千美元)string,默认值 : ''(中文(简体) )
接受骰子字符串输入,解析并返回解析输入的JSON表示.
示例 DP.parseNotation('4d6')
[
{
"qty": 4,
"sides": 6,
"mods": [],
"rolls": [
{
"sides": 6,
"groupId": 0,
"rollId": 0,
"id": 0,
"theme": "sunset",
"result": 1
},
{
"sides": 6,
"groupId": 0,
"rollId": 1,
"id": 1,
"theme": "sunset",
"result": 3
},
{
"sides": 6,
"groupId": 0,
"rollId": 2,
"id": 2,
"theme": "sunset",
"result": 6
},
{
"sides": 6,
"groupId": 0,
"rollId": 3,
"id": 3,
"theme": "sunset",
"result": 6
}
],
"value": 16
}
]
另见: 只要分析一下值
handleRerolls(单位:千美元)array,默认值 :[](中文(简体) )
这种方法接受一阵骰子卷(由 parseNotation,更新方式为 dice-box),并返回需要重新滚动的新骰子对象。 可以产生回滚的卷卷的例子包括:起爆,穿透和复合卷(例如: 6d6!) (中文(简体) ). 也支持回转和回回回回回回转注(如: 2d12r1) (中文(简体) ).
骰子对象 :
| 财产 | 类型 | 说明 |
|---|---|---|
| 组 | 单位 | 返回目标所属组 |
| 滚动 | 单位或字符串 | 卷之九·诸方(下)\诸方门目(下) 死活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活 这笔费用将按下列方式递增: .1 每次翻转 |
| 边 | 单位 | 倒转的倒数 |
| qty (英语) | 单位 | 掷骰子数. 倒数第一,但需要 dice-box |
示例
[
{
"groupId": 0,
"rollId": "2.1",
"sides": 6,
"qty": 1
},
{
"groupId": 0,
"rollId": "3.1",
"sides": 6,
"qty": 1
}
]
parseFinalResults(单位:千美元)array,默认值 : [](中文(简体) )
所有卷和回滚完成后,可以将结果对象传递给 parseFinalResults 以获得骰子卷的最终结果。 这通常发生在内部 dice-box是因为 onRollComplete 调用方法.
示例
const results = DP.parseFinalResults(results)
拼凑起来
示例 HTML
示例 Java 脚本
洞穴
这个模块不做的一件事是提供接口,为滚动标记字符串提供输入或显示最终结果. 预计开发者将创建自己的投入和产出,或使用来自 @ 3d- diice/ diice- ui (英语)