aboutsummaryrefslogtreecommitdiffstatshomepage

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

https://grps.hydroroll.team (recommend)
https://grps-v1.netlify.app
~~https://hydroroll-team.github.io/infini/~~

📄 License

MIT © 2023-PRESENT 简律纯