From 9b4779aeae331cb345255c46c8fca7f382951448 Mon Sep 17 00:00:00 2001 From: qsc Date: Sun, 25 Jan 2026 22:49:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=9F=E8=83=BD=E8=A1=A5=E5=85=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 8 +- core/jx3_commands.py | 15 ++++ core/jx3_data.py | 34 +++++++++ data/api_config.json | 8 ++ main.py | 1 + templates/helps.html | 12 +++ templates/qiwu.html | 178 +++++++++++++++++++++++++++++++++++++++++++ 7 files changed, 252 insertions(+), 4 deletions(-) create mode 100644 templates/qiwu.html diff --git a/README.md b/README.md index 9478466..cb2799f 100644 --- a/README.md +++ b/README.md @@ -16,10 +16,10 @@ 插件功能绝大部分都是用AI写的,又进行了调试。 -目前此插件能够完成绝大部分的功能查询,其他功能有空再说。 +目前此插件能够完成部分的功能查询,其他功能有空再说。 -此插件的所有数据几乎全部依赖jx3api提供的API接口,所以进阶功能需要向其购买token才可使用。 -部分进阶功能除了购买token以外还需要自己去抓包推栏app,获得推栏token才可使用。 +此插件的所有数据几乎全部依赖jx3api提供的API接口,所以进阶功能需要向其购买token才可使用。普通功能是免token的。 +部分进阶功能除了购买token以外还需要自己去抓包推栏app,获得推栏app的token才可正常使用。 ## 更新记录 @@ -35,7 +35,7 @@ version: 1.0.0:大部分重要功能已经实现 要想正常使用插件,需要正常配置token和推栏标识。 -下面两个推送功能可以手动开启或者关闭,配置询问的周期时间,以及消息要推送的对象,推送ID可在聊天中使用/std查看。 +下面两个推送功能可以手动开启或者关闭,配置询问的周期时间,以及消息要推送的对象,推送ID可在聊天中使用/std查看。要平台的完整ID。 ## 使用方式 diff --git a/core/jx3_commands.py b/core/jx3_commands.py index d100419..ca1d386 100644 --- a/core/jx3_commands.py +++ b/core/jx3_commands.py @@ -194,6 +194,21 @@ class JX3Commands(Star): yield event.plain_result("猪脑过载,请稍后再试") + async def jx3_qiwu(self, event: AstrMessageEvent, name: str): + """剑三 器物 地图名称""" + try: + data= await self.jx3fun.qiwu(name) + if data["code"] == 200: + url = await self.html_render(data["temp"], data["data"], options={}) + yield event.image_result(url) + else: + yield event.plain_result(data["msg"]) + return + except Exception as e: + logger.error(f"功能函数执行错误: {e}") + yield event.plain_result("猪脑过载,请稍后再试") + + async def jx3_shapan(self, event: AstrMessageEvent,server: str = ""): """剑三 沙盘 服务器""" try: diff --git a/core/jx3_data.py b/core/jx3_data.py index cc3efe2..6dbaefe 100644 --- a/core/jx3_data.py +++ b/core/jx3_data.py @@ -352,6 +352,40 @@ class JX3Service: return return_data + async def qiwu(self,name: str) -> Dict[str, Any]: + """器物""" + return_data = self._init_return_data() + + # 1. 构造请求参数 + params = { "name": name} + + # 2. 调用基础请求 + data: Optional[Dict[str, Any]] = await self._base_request( + "jx3_qiwu", "GET", params=params + ) + if not data: + return_data["msg"] = "未查询到相关内容" + return return_data + + # 3. 处理返回数据 + try: + return_data["data"]["data"] = data + return_data["data"]["name"] = name + return_data["code"] = 200 + except Exception as e: + logger.error(f"数据处理时出错: {e}") + return_data["msg"] = "处理接口返回信息时出错" + + # 加载模板 + try: + return_data["temp"] = await load_template("qiwu.html") + except FileNotFoundError as e: + logger.error(f"加载模板失败: {e}") + return_data["msg"] = "系统错误:模板文件不存在" + + return return_data + + async def shapan(self, server: str ) -> Dict[str, Any]: """区服沙盘""" return_data = self._init_return_data() diff --git a/data/api_config.json b/data/api_config.json index 094ccf7..935a897 100644 --- a/data/api_config.json +++ b/data/api_config.json @@ -267,6 +267,14 @@ "name": "" } }, + "jx3_qiwu":{ + "url":"https://www.jx3api.com/data/home/travel", + "method":"GET", + "description":"此接口用于查询指定地图的装饰物品产出信息,包括装饰的属性、来源和外观等内容。", + "params":{ + "name": "" + } + }, "jx3box_qiyugonglue":{ "url":"https://node.jx3box.com/serendipities", "method":"GET", diff --git a/main.py b/main.py index 753db09..5b1b2b4 100644 --- a/main.py +++ b/main.py @@ -234,6 +234,7 @@ class Jx3ApiPlugin(Star): "科举": self.jx3com.jx3_keju, "花价": self.jx3com.jx3_huajia, "装饰": self.jx3com.jx3_zhuangshi, + "器物": self.jx3com.jx3_qiwu, "沙盘": self.jx3com.jx3_shapan, "奇遇统计": self.jx3com.jx3_qufuqiyu, "奇遇攻略": self.jx3com.jx3_qiyugonglue, diff --git a/templates/helps.html b/templates/helps.html index 15f9046..cff26c5 100644 --- a/templates/helps.html +++ b/templates/helps.html @@ -216,6 +216,18 @@
查询各个地图的鲜花倍率
花价 名称 [服务器] [家园地图]
+ +
+
装饰
+
查询家园装饰的详细信息
+
装饰 名称
+
+ +
+
器物
+
查询某地图可以获得的家园装饰物品信息
+
器物 地图名称
+
diff --git a/templates/qiwu.html b/templates/qiwu.html new file mode 100644 index 0000000..7bb623e --- /dev/null +++ b/templates/qiwu.html @@ -0,0 +1,178 @@ + + + + +地图装饰器物 + + + + + +
+

地图装饰器物({{ name }})

+ + {% for item in data %} +
+ {{ item.name }} + +
+
+ {{ item.name }} +
+ +
+ 来源:{{ item.source }} + 数量限制:{{ item.limit }} + 品质值:{{ item.quality }} +
+ + {% if item.tip %} +
+ {{ item.tip }} +
+ {% endif %} + +
+
+
观赏
+
{{ item.view }}
+
+
+
实用
+
{{ item.practical }}
+
+
+
坚固
+
{{ item.hard }}
+
+
+
风水
+
{{ item.geomantic }}
+
+
+
趣味
+
{{ item.interesting }}
+
+
+ + +
+
+ {% endfor %} + +
+ + +