84 lines
2.6 KiB
Markdown
84 lines
2.6 KiB
Markdown
# 更新日志 (CHANGELOG)
|
||
|
||
> 项目:在线点名抽奖 (PROJ-20260523012)
|
||
> 格式遵循 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.0.0/)
|
||
|
||
---
|
||
|
||
## [v1.1.0] - 2026-05-24
|
||
|
||
### ✨ 新增
|
||
|
||
- **名单编辑功能(M001)**
|
||
- 导入名单后,每个名字标签旁显示 × 删除按钮
|
||
- 点击 × 可删除对应人员,删除后自动同步后门配置(必中名单、排除名单、概率设置)
|
||
- 抽奖进行中时删除按钮自动禁用,防止误操作
|
||
|
||
- **概率后门(M002)**
|
||
- 后门面板新增概率设置区域
|
||
- 可为每个人设置概率权重(0-100),权重越高中奖概率越大
|
||
- 概率为 0 的人不参与抽奖
|
||
- 优先级:必中名单 > 概率权重 > 排除名单
|
||
- 加权随机算法:按权重比例分配,不强制归一化
|
||
|
||
### 🎨 优化
|
||
|
||
- **滚动动画改进(M003)**
|
||
- 从中心切换改为从左到右水平滚动(老虎机效果)
|
||
- 初始速度快,逐渐减速
|
||
- 总时长约 3.5 秒
|
||
|
||
- **弹窗显示中奖结果(M004)**
|
||
- 抽奖结束后弹出模态弹窗
|
||
- 包含大尺寸头像、名字、"恭喜"字样
|
||
- 点击 × 或遮罩层可关闭
|
||
|
||
- **烟花效果改进(M005)**
|
||
- 烟花直接在目标位置爆炸(移除底部上升阶段)
|
||
- 爆炸点围绕弹窗位置分布
|
||
- 持续时间延长至 5 秒
|
||
- 粒子数量增加,效果更密集
|
||
|
||
### 🔧 技术变更
|
||
|
||
- 状态结构扩展:`state.backdoor.probabilities` 新增权重字段
|
||
- 抽奖引擎改造:`LotteryEngine.pickOne()` 从等概率随机改为加权随机
|
||
- 动画模块重构:`AnimationEngine` 滚动方式从中心切换改为水平滚动
|
||
- Canvas 烟花系统优化:移除上升状态,改为直接爆炸模式
|
||
|
||
---
|
||
|
||
## [v1.0.0] - 2026-05-23
|
||
|
||
### ✨ 初始版本
|
||
|
||
- **名单管理**
|
||
- 手动输入(支持多种分隔符)
|
||
- TXT 文件导入
|
||
- CSV/TSV 文件导入
|
||
- 自动去重
|
||
|
||
- **抽奖引擎**
|
||
- 单次模式(抽中移除)
|
||
- 重复模式(抽中保留)
|
||
|
||
- **动画展示**
|
||
- 名字快速切换滚动(3 秒减速停止)
|
||
- 圆形头像展示(取名字后两字)
|
||
- 个性配色(名字哈希生成)
|
||
- Canvas 粒子烟花动画(约 4 秒)
|
||
- 结果公告文字
|
||
|
||
- **历史记录**
|
||
- 轮次编号、中奖人、中奖时间
|
||
- 页面底部表格展示
|
||
|
||
- **后门设置**(长按「开始抽奖」3 秒)
|
||
- 必中名单(文本输入 / 复选框选择)
|
||
- 排除名单(文本输入 / 复选框选择)
|
||
|
||
---
|
||
|
||
[v1.1.0]: https://github.com/online-attendance-lottery/compare/v1.0.0...v1.1.0
|
||
[v1.0.0]: https://github.com/online-attendance-lottery/releases/tag/v1.0.0
|