Skip to content

Commit 37c7ebd

Browse files
committed
fix: 修复配置相关问题
1 parent 110efa8 commit 37c7ebd

3 files changed

Lines changed: 34 additions & 33 deletions

File tree

telegram_chat/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ async def on_load(server: PluginServerInterface, old):
3535
"""
3636
global bindings, ban_list, bot, logger
3737

38-
tools.load_data(server)
38+
load_data(server)
3939

4040
online_player_api = server.get_plugin_instance("online_player_api")
4141
if online_player_api is None: raise Exception("Unable to load dependency \"online_player_api\"")

telegram_chat/config.py

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
from typing import Any, Dict, List
33
import logging
44
from .telegram_manager import TelegramBot
5+
from mcdreforged.api.types import PluginServerInterface
56

67
class Config(Serializable):
78
admins: List[str] = []
@@ -27,4 +28,35 @@ class Config(Serializable):
2728
ban_list: List[int] = []
2829
online_player_api: Any = None # type: ignore
2930
bot: TelegramBot = None # type: ignore
30-
logger: logging.Logger = None # type: ignore
31+
logger: logging.Logger = None # type: ignore
32+
33+
def load_data(server: PluginServerInterface):
34+
global config, bindings, ban_list
35+
config = server.load_config_simple(target_class=Config) # type: ignore
36+
bindings = server.load_config_simple(
37+
"bindings.json",
38+
default_config={"data": {}},
39+
echo_in_console=False
40+
)["data"]
41+
ban_list = server.load_config_simple(
42+
"ban_list.json",
43+
default_config={"data": []},
44+
echo_in_console=False
45+
)["data"]
46+
47+
def save_data(server: PluginServerInterface):
48+
"""
49+
保存数据
50+
"""
51+
server.save_config_simple(
52+
{
53+
"data": bindings,
54+
},
55+
"bindings.json"
56+
)
57+
server.save_config_simple(
58+
{
59+
"data": ban_list,
60+
},
61+
"ban_list.json"
62+
)

telegram_chat/tools.py

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -34,37 +34,6 @@ async def execute(server: PluginServerInterface, event: Update, context: Context
3434
await send_to(event, context, result)
3535
else: await send_to(event, context, "请开启 RCON 再执行此操作!")
3636

37-
def load_data(server: PluginServerInterface):
38-
global config, bindings, ban_list
39-
config = server.load_config_simple(target_class=Config)
40-
bindings = server.load_config_simple(
41-
"bindings.json",
42-
default_config={"data": {}},
43-
echo_in_console=False
44-
)["data"]
45-
ban_list = server.load_config_simple(
46-
"ban_list.json",
47-
default_config={"data": []},
48-
echo_in_console=False
49-
)["data"]
50-
51-
def save_data(server: PluginServerInterface):
52-
"""
53-
保存数据
54-
"""
55-
server.save_config_simple(
56-
{
57-
"data": bindings,
58-
},
59-
"bindings.json"
60-
)
61-
server.save_config_simple(
62-
{
63-
"data": ban_list,
64-
},
65-
"ban_list.json"
66-
)
67-
6837
async def send_to_group(msg: str, **kwargs):
6938
"""
7039
向所有群聊广播

0 commit comments

Comments
 (0)