Skip to content

Commit

Permalink
⬆️ update
Browse files Browse the repository at this point in the history
  • Loading branch information
RF-Tar-Railt committed Jan 7, 2024
1 parent 006e31f commit a131500
Show file tree
Hide file tree
Showing 8 changed files with 233 additions and 176 deletions.
1 change: 1 addition & 0 deletions library/dice/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
"""
from .cards import Cards as Cards
from .deck import draw as draw
from .deck import deck_list as deck_list
from .investigator import Investigator as Investigator
from .pc import coc6 as coc6
from .pc import coc6d as coc6d
Expand Down
2 changes: 2 additions & 0 deletions library/dice/deck.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ def find_deck(name: str) -> int:
return 1
return 2 if (name[0].isdigit() and len(name) < 3) or name == "100" else 0

def deck_list() -> list[str]:
return list(p_deck.keys())

def draw(key: str, cnt: int = 1) -> str:
if not key:
Expand Down
12 changes: 9 additions & 3 deletions main.py
Original file line number Diff line number Diff line change
Expand Up @@ -81,8 +81,11 @@

@avilla.listen(AlconnaOutputMessage)
async def send_handler(output: str, otype: str, ctx: Context):
bcc.listeners[1].oplog.clear()
# length = (output.count("\n") + 5) * 16
if otype in ("shortcut", "error"):
if ctx.scene.follows("::group"):
output = f"\n{output}"
return await ctx.scene.send_message(output)
if otype == "completion":
output = (
Expand All @@ -92,6 +95,8 @@ async def send_handler(output: str, otype: str, ctx: Context):
.replace("&#123;", "{")
.replace("&#125;", "}")
)
if ctx.scene.follows("::group"):
output = f"\n{output}"
return await ctx.scene.send_message(output)
if not output.startswith("#"):
output = f"# {output}"
Expand All @@ -111,13 +116,14 @@ async def send_handler(output: str, otype: str, ctx: Context):
return await ctx.scene.send_message(picture(url, ctx))
except ActionFailed:
output = (
output.replace("&lt;", "(")
.replace("&gt;", ")")
.replace(">", ")")
output.replace("&lt;", "<")
.replace("&gt;", ">")
.replace("\n\n", "\n")
.replace("##", "#")
.replace("**", "")
)
if ctx.scene.follows("::group"):
output = f"\n{output}"
return await ctx.scene.send_message(output)


Expand Down
49 changes: 39 additions & 10 deletions migrate.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,11 @@
from plugins.draw.model import DrawRecord
from plugins.gacha.model import ArkgachaRecord
from plugins.sign.model import SignRecord
from plugins.sk_autosign.model import SKAutoSignRecord
from plugins.weibo.model import WeiboFollower

from sqlalchemy import select

config_dir_root = Path(input("输入当前配置根目录: >>>"))
if not config_dir_root.exists():
logger.warning("未知的目录")
Expand Down Expand Up @@ -57,14 +60,19 @@ async def main():
users = ujson.load(f)["data"]

for group_id, data in groups.items():
group = Group(
id=group_id,
platform="qq",
accounts=[f"land(qq).account({dr.name})"],
in_blacklist=data["in_blacklist"],
disabled=data["disabled"],
)
await session.merge(group)
group = (await session.scalars(select(Group).where(Group.id == group_id))).one_or_none()
if not group:
group = Group(
id=group_id,
platform="qq",
accounts=[f"land(qq).account({dr.name})"],
in_blacklist=data["in_blacklist"],
disabled=data["disabled"],
)
await session.merge(group)
else:
group.accounts.append(f"land(qq).account({dr.name})")
await session.merge(group)
logger.debug(f"migrating group {group_id} ...")
if "weibo_followers" in data["additional"]:
for wid in data["additional"]["weibo_followers"][0]:
Expand All @@ -76,8 +84,13 @@ async def main():
await session.commit()

for user_id, data in users.items():
user = User(id=user_id, trust=data["trust"])
await session.merge(user)
user = (await session.scalars(select(User).where(User.id == user_id))).one_or_none()
if not user:
user = User(id=user_id, trust=data["trust"])
await session.merge(user)
else:
user.trust = data["trust"]
await session.merge(user)
logger.debug(f"migrating user {user_id} ...")
now = datetime.now()
now = now.replace(day=now.day - 1, month=10)
Expand All @@ -99,6 +112,22 @@ async def main():
await session.merge(gacha)
await session.commit()

plugins = cache_dir_root / "plugins"

if (plugins / "skautosign.json").exists():
with (plugins / "skautosign.json").open(encoding="utf-8") as f:
table = ujson.load(f)
for user_id, data in table.items():
if "origin" not in data:
continue
user = (await session.scalars(select(User).where(User.id == user_id))).one_or_none()
if not user:
user = User(id=user_id, trust=0)
await session.merge(user)
logger.debug(f"migrating sk_auto_sign data of user {user_id} ...")
record = SKAutoSignRecord(id=user.id, token=data["origin"])
await session.merge(record)
await session.commit()
await db.stop()


Expand Down
Loading

0 comments on commit a131500

Please sign in to comment.