infini'水系核心

pypi hydro [![.github/workflows/python-publish.yml](https://github.com/HydroRoll-Team/infini/actions/workflows/python-publish.yml/badge.svg)](https://github.com/HydroRoll-Team/infini/actions/workflows/python-publish.yml) [![CodeQL](https://github.com/HydroRoll-Team/infini/actions/workflows/codeql.yml/badge.svg)](https://github.com/HydroRoll-Team/infini/actions/workflows/codeql.yml) [![Netlify Status](https://api.netlify.com/api/v1/badges/ecbe4af3-223f-4fa4-a182-a37a776fd05b/deploy-status)](https://app.netlify.com/sites/grps-v1/deploys)

## 🎁 Getting hydro > [!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 _(recommend)_ ~~~~ ## 📄 License [MIT](https://github.com/HydroRoll-Team/infini/blob/master/LICENSE) © 2023-PRESENT [简律纯](https://github.com/HsiangNianian)