Commit Graph

10 Commits

Author SHA1 Message Date
aca33820fc fix(群赛马): 将比赛开始消息发送方式从finish改为send
避免使用finish导致命令执行提前结束,确保后续异步比赛任务能正常执行
2026-04-06 23:14:20 +08:00
e773a7a1ef feat: 赛马游戏调整 - 允许自马下注 & 取消非冠军参赛奖励
- 移除下注时不能给自己马匹下注的限制
- 非冠军马主不再获得参赛奖励积分(PARTICIPANT_REWARD=0)
- 同步更新帮助文本、README文档和config默认值
2026-04-05 21:25:10 +08:00
ff8cf611af feat(赛马): 完善帮助命令信息 2026-04-04 22:51:05 +08:00
64020cb0e6 feat(赛马): 为马匹添加序号并优化积分结算展示
- 为 Horse 模型添加 index 字段,用于唯一标识马匹序号
- 在报名时自动分配递增序号,并在所有展示中使用固定序号排序
- 新增积分变化计算功能,在比赛结果中展示每位用户的积分变化和总结描述
- 支持通过序号或马匹名下注,优化用户交互体验
- 添加用户上次马名记忆功能,允许重复使用马名报名
- 更新测试用例以验证序号展示和积分变化功能
2026-04-04 22:43:46 +08:00
ab1329042a feat(group_horse_racing): 增加赛马消息图片渲染功能
- 在配置中新增图片渲染相关参数:RACE_RENDER_AS_IMAGE、RACE_IMAGE_WIDTH 等
- 复用 danding_qqpush 的 ImageRenderer,使其支持自定义标题
- 在比赛开始、结束和进度播报时,将文本消息转换为带标题的图片发送
- 修复测试用例中的消息发送函数调用
2026-04-04 22:09:53 +08:00
adccbfebb5 添加赛马实时进度播报
将比赛循环从race_engine移到commands中,每回合发送进度条:
  马匹名  |████████░░░░░░| 45.2m
race_engine改为提供tick/determine_champion/format_progress方法

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 01:32:42 +08:00
1dd247ab4b 修复:参赛奖励改为结算时发放
报名时不再立即发放积分,改为比赛结算时统一发放参与奖励,
防止通过反复报名/取消刷积分

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 01:23:06 +08:00
e341fc085c 补全赛马插件完整游戏逻辑
实现所有帮助文本中声明的命令和比赛结算流程:
- 赛马报名:解析马匹名、创建Horse对象、防重复报名、发放参赛奖励
- 赛马取消报名:移除马匹、退还相关下注
- 赛马下注:扣积分、记录下注、不能给自己的马下注
- 赛马赔率:基于下注分布动态计算赔率
- 赛马开赛:异步执行比赛、自动结算冠军奖励和下注赔付、保存结果

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 01:18:49 +08:00
387dd3a0bb 修复:group_horse_racing 环境变量加载问题
- 修改 __init__.py 在插件初始化时加载 Config
- 修改 commands.py 和 test_commands.py 从 __init__.py 导入 plugin_config
- 确保配置通过 NoneBot 的 driver 正确加载环境变量
- 这样可以正确解析 .env 中的 JSON 格式环境变量

这解决了权限检查中 TESTERS 集合为空的问题。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-03 22:50:20 +08:00
ab1b25e239 功能:实现 Group_Horse_Racing 群赛马插件
- 新增群赛马游戏插件,支持多人参与赛马竞猜

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-03 00:24:25 +08:00