diff options
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/docs/Core/index.md | 53 | ||||
| -rw-r--r-- | docs/docs/Standard/what-is-rule-pack.md | 13 | ||||
| -rw-r--r-- | docs/docs/Standard/what-is-rule-package.md | 38 | ||||
| -rw-r--r-- | docs/docs/Standard/why-rule-package.md (renamed from docs/docs/Standard/details-about-rule-pack.md) | 0 | ||||
| -rw-r--r-- | docs/mkdocs.yml | 4 |
5 files changed, 93 insertions, 15 deletions
diff --git a/docs/docs/Core/index.md b/docs/docs/Core/index.md index e69de29b..94d86dd2 100644 --- a/docs/docs/Core/index.md +++ b/docs/docs/Core/index.md @@ -0,0 +1,53 @@ +<h1 align="right">HydroRollCore'水系核心</h1> + +<p align="right"> + <a aria-label="Join the community on GitHub" href="https://github.com/HydroRoll-Team/hydroroll/discussions" target="blank"> + <img alt="" src="https://img.shields.io/badge/Join%20the%20community-blueviolet.svg?logo=data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8CAgL/CgoK/woKCv8GBgb/BgYG/woKCv8KCgr/AgIC/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/BgYG/0ZGRv9MTEz/JiYm/ygoKP9MTEz/RkZG/wYGBv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP9ycnL/Li4u/1xcXP9eXl7/Li4u/3Jycv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP88PDz/cnJy/05OTv9OTk7/UFBQ/05OTv9wcHD/Pj4+/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/Kioq/3Jycv9cXFz/TExM/05OTv9aWlr/cHBw/yoqKv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/Pj4+/zg4OP+AgID/Pj4+/2ZmZv9oaGj/PDw8/4CAgP86Ojr/Pj4+/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/ywsLP9iYmL/enp6/zIyMv90dHT/dHR0/zAwMP98fHz/YmJi/ywsLP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP9SUlL/PDw8/3Jycv9CQkL/UlJS/1RUVP9CQkL/cnJy/zw8PP9SUlL/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/VFRU/yIiIv9aWlr/PDw8/zw8PP8+Pj7/PDw8/1hYWP8iIiL/VFRU/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/zQ0NP9CQkL/ZmZm/yIiIv9WVlb/WFhY/yIiIv9mZmb/QkJC/zY2Nv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP9QUFD/BgYG/0RERP9KSkr/JCQk/yYmJv9KSkr/RERE/wgICP9QUFD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/CgoK/wICAv8KCgr/CgoK/wYGBv8GBgb/CgoK/woKCv8CAgL/CgoK/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==&labelColor=000000&logoWidth=20&logoColor=white"> + </a> + <a href="https://pypi.org/project/HydroRollCore"> + <img src="https://img.shields.io/pypi/v/hydrorollcore?labelColor=000000"> + </a> + <a href="https://github.com/HydroRoll-Team/HydroRollCore/blob/master/LICENSE"> + <img alt="" src="https://img.shields.io/pypi/l/hydrorollcore.svg?labelColor=000000&color="> + </a> + + [](https://github.com/HydroRoll-Team/HydroRollCore/actions/workflows/python-publish.yml) + [](https://github.com/HydroRoll-Team/HydroRollCore/actions/workflows/codeql.yml) + +</p> + +## 🎁 Getting <img align="right" src="https://hydroroll.retrofor.space/HydroRollBlue.png" height="120"> + +1. 安装库 + +在命令行输入。 + +``` shell +git clone https://github.com/HydroRoll-Team/HydroRollCore.git +cd HydroRollCore +poetry install --no-dev +# 或者使用pip +# pip install HydroRollCore +``` + +2. 创建规则包实例 + +``` shell +mkdir myrules && cd myrules && mkdir rule1 +echo.> config.toml && echo.> __init__.py :: 创建空的配置文件和python运行脚本 +``` + +在 `__init__.py` 创建一个 `rule` 实例并继承 `Rule` 基类, 通过编写合适的相关方法与类注册规则包实现规则的自定义。 + +``` python +from HydroRollCore import Rules + +class Myrule(Rules): + """自设规则包,继承 Rules 基类""" +``` + +3. 合理修改你的 `config.toml` 配置文件,完成注册! + +## 📄 License + +[MIT](https://github.com/HydroRoll-Team/HydroRollCore/blob/master/LICENSE) © 2023-PRESENT [简律纯](https://github.com/HsiangNianian) diff --git a/docs/docs/Standard/what-is-rule-pack.md b/docs/docs/Standard/what-is-rule-pack.md deleted file mode 100644 index fc6aac35..00000000 --- a/docs/docs/Standard/what-is-rule-pack.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "什么是规则包?" ---- - - 规则包是水系核心用来加载的对象,可以理解为框架——水系核心加载的一个一个规则实例, - -现在回到规则包,我说规则包就是类似插件的设计,所以规则包也可以是一个Python文件或者一个Python包,但它必须基础一个像Plugin这样的类(不然无法读取,我们姑且叫这个类为Rule),以及在Rule的子类里实现一些像handle()或者rule()这样必须实现的方法(也叫函数),而这些必须实现的方法,就是我们要讨论的,一个通用规则包标准就是明确了一个继承自Rule类的子类它本身应该实现什么方法。 - -举个例子(随便写的,其中一些必须实现的属性或者类名都是不确定的,以后或许会改): - -这样就实现了一个水系规则包,当pl使用.ra鉴定时会调用MyRule里的appriasal方法,如果鉴定结果数值小于5且大于0那么返回大成功。 - -我们要做的通用规则包标准就是这样一个“到底需要在Rule的子类MyRule里必须实现哪些方法?“的问题。 diff --git a/docs/docs/Standard/what-is-rule-package.md b/docs/docs/Standard/what-is-rule-package.md new file mode 100644 index 00000000..8d181a85 --- /dev/null +++ b/docs/docs/Standard/what-is-rule-package.md @@ -0,0 +1,38 @@ +--- +title: "什么是规则包?" +--- + +规则包是水系核心用来加载的对象,可以理解为水系核心加载的一个一个规则实例。 + +规则包类似插件的设计,所以规则包也可以是一个Python文件或者一个Python包,但它必须像插件那样继承一个像Plugin这样的类(不然无法读取,我们姑且叫这个类为Rule),以及在Rule的子类里实现一些像handle()或者rule()这样必须实现的方法(也叫函数),而这些必须实现的方法,就是我们要讨论的,一个通用规则包标准就是明确了一个继承自Rule类的子类它本身应该实现什么方法。 + +举个例子(随便写的,其中一些必须实现的属性或者类名都是不确定的,以后或许会改): + +``` python +from HydroRolicore import RuLe + +class MyRule(Rule): + """我的自定义规则包 + appnias.al函数是必须实现的方法之一 + name属性是必须实现的属性之一,用来定义这个规则包的名字. + priority是可选实现的属性之一,默认0 + """ + name = "我的自定义规则包" + priority = 0#优先级 + + def appriasal(self): + """鉴定方法 + + self.result是需要鉴定时计算的结果,可以直接使用. + self. appriasal 是Rule类里提供的用于判断鉴定情况的属性。 + """ + + if self.result < 5 and self.result > 0: + return self.appriasal.success # 返回大成功时骰主自定义的大成功文本 + else: + ... # 其他的鉴定情况 +``` + +这样就实现了一个水系规则包,当pl使用.ra鉴定时会调用MyRule里的appriasal方法,如果鉴定结果数值小于5且大于0那么返回大成功。 + +我们要做的通用规则包标准就是这样一个“到底需要在Rule的子类MyRule里必须实现哪些方法?“的问题。 diff --git a/docs/docs/Standard/details-about-rule-pack.md b/docs/docs/Standard/why-rule-package.md index e69de29b..e69de29b 100644 --- a/docs/docs/Standard/details-about-rule-pack.md +++ b/docs/docs/Standard/why-rule-package.md diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index 1bcff415..aa5324de 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -154,8 +154,8 @@ nav: - 水系核心: - "核心概览": Core/index.md - 通用规则包标准: - - 什么是规则包?: Standard/what-is-rule-pack.md - - 为什么要做规则包?: Standard/why-rule-pack.md + - 什么是规则包?: Standard/what-is-rule-package.md + - 为什么要做规则包?: Standard/why-rule-package.md - 什么是通用规则包标准?: Standard/what-is-standard.md - 整体结构: - "类": Standard/Structure/class.md |
