- 首次进服务器: 弹出GUI界面 + 醒目的欢迎消息和提示
- 第二次及以后: 只显示ActionBar和简洁的聊天提示,不再弹出GUI
- 设置完生日后: 不再显示任何提醒
- 每个玩家每年只能庆祝一次生日
- 即使修改生日到当年已过的日期,也不会重复庆祝
- 跨年自动重置庆祝状态
- 玩家可以随时使用
/birthday set修改生日 - 不再需要管理员权限修改自己的生日
预期行为:
- 弹出生日设置GUI界面
- 显示醒目的欢迎消息和生日设置提示
- 播放提示音效
- 玩家数据中标记
has_seen_gui: true
预期行为:
- 不弹出GUI界面
- 显示ActionBar提示: "💡 提示:你还没有设置生日!使用 /birthday set 进行设置"
- 发送简洁的聊天提示
- 播放轻微的提示音
预期行为:
- 显示成功消息和生日信息
- 首次设置显示特殊的恭喜消息
- 播放成功音效
- 今后进服务器不再显示任何生日提醒
预期行为:
- 检查是否为玩家生日 (今天是8月1日)
- 如果是生日且当年未庆祝过,触发庆祝
- 记录庆祝年份为2025
- 即使玩家修改生日,当年不会再次庆祝
预期行为:
- 允许随时修改生日
- 显示修改成功提示
- 如果当年已庆祝过,修改生日不会触发新的庆祝
当前日期: 2025年8月1日
测试用例:
- 设置生日为8月1日 → 应该立即庆祝(如果当年未庆祝过)
- 设置生日为8月2日 → 明天才庆祝
- 已庆祝过的玩家修改为8月1日 → 不会重复庆祝
- 跨年到2026年 → 庆祝状态重置,可以再次庆祝
玩家数据文件新增字段:
name: "玩家名称"
birthday: "8-1" # 月-日格式
last_celebrated: "8-1" # 保留兼容性
last_celebrated_year: "2025" # 新增:上次庆祝的年份
has_seen_gui: true # 新增:是否已看过GUI提示