[](https://github.com/HydroRoll-Team/infini/actions/workflows/python-publish.yml)
[](https://github.com/HydroRoll-Team/infini/actions/workflows/codeql.yml)
[](https://app.netlify.com/sites/grps-v1/deploys)
> [!IMPORTANT]
>
> 强烈推荐使用 `pdm` 等能创建虚拟环境的包管理工具管理你的 `HydroRollBot` 项目。
1. 安装库
在终端中执行:
```bash
git clone https://github.com/HydroRoll-Team/infini.git
cd infini
pdm install
```
你可以使用`pip`进行安装:
```bash
pip install infini
```
2. 创建规则包实例
创建`cli.py`并写入以下内容:
```python
import infini
client = infini.Cli()
client.parse_args()
```
打开终端并执行:
``` shell
python cli.py --new --path MyRule
```
你可以在生成的 `MyRule\rule.py` 创建一个或者多个 `rule` 实例并继承 `Rule` 基类, 通过编写合适的相关方法与类注册规则包实现规则的自定义。
``` python
from infini import Rule, Result, Dice
class MyRule(Rule):
"""自设规则包"""
name = "MyRule"
priority: int = 0
def __init__(self) -> None:
"""初始化你的规则包"""
def check(self, dice: Dice) -> Result:
"""声明规则包检定方式"""
return Result("event1", True)
```
`check`函数应当返回一个`Result`对象,它应当包含一个消息事件名(例如示例中的`event1`),该消息事件名应当在 `MyRule\event.py` 中被注册。消息事件的动态内容通过`{name}`的方式声明并通过`name="内容"`的方式实现。
3. 合理修改你的 `config.toml` 配置文件,完成注册!
### 🎍Sites