Commit Graph

47 Commits

Author SHA1 Message Date
7fb86bfe21 Feat: 商店功能完整实现(单次特效卡888/周卡8888/改名卡5000,含购买、周卡覆盖、改名黑名单) 2026-02-27 15:57:12 +08:00
094181b826 Fix: 防止Enter重复发送(IME输入法防穿透+_isSending防重入锁) 2026-02-27 14:53:45 +08:00
a3d0d6cec5 Feat: 输入栏增加字号选择器,自动应用到聊天窗口并持久化到localStorage 2026-02-27 14:46:49 +08:00
4668c163aa Feat: 管理员进入聊天室自动触发烟花+公屏欢迎公告 2026-02-27 14:34:04 +08:00
709e0d4975 Feat: 实现全屏特效系统(烟花/下雨/雷电),管理员一键触发全房间广播 2026-02-27 14:14:35 +08:00
adab033afc Feat: 系统播报用户头像改为像素军号图标(钓鱼播报/星海小博士/送花播报等) 2026-02-27 13:48:18 +08:00
4b231c19f7 Fix: 升级播报改为金色左边框轻量样式,与站长公告红框区分开 2026-02-27 13:44:24 +08:00
5d1e7e26e2 Feat: 鱼上钩通知中的[拉竿]文字支持点击触发拉竿操作 2026-02-27 13:03:05 +08:00
f9a1c7f6bc Feat: 优化动作语句语法,情绪型加着/地,动作型加了,使聊天发言更自然流畅 2026-02-27 12:58:31 +08:00
caecceba1b Fix: 系统存点通知改回悄悄话私信,避免多人刷屏;前端单独渲染为绿色通知条无头像 2026-02-27 12:53:30 +08:00
638bc9deda Feat: 优化自动存点通知样式,系统消息不显示头像,改为绿色左边框简洁条形 2026-02-27 12:51:29 +08:00
954ffada0a UI: 恢复公告时间戳内联显示,附在内容正后方 2026-02-27 11:11:33 +08:00
5b3378389b UI: 优化全屏公告样式,将发送时间移动至右下角并防止时间文本重复显示 2026-02-27 11:09:36 +08:00
0aed0827de UI: 将 mix-blend-mode 应用到所有用户的头像,解决白底问题 2026-02-27 11:05:42 +08:00
53e357418e UI: 修复AI小班长头像的白色背景,使用 mix-blend-mode 使其透明化 2026-02-27 11:04:46 +08:00
d7b52f8419 Fix: 隔离AI头像,防止普通用户使用,并修复聊天公屏图像的调用 2026-02-27 10:57:46 +08:00
74217896d1 Feature: 调整AI聊天机器人的形象为“AI小班长”并更新了军人卡通风格头像 2026-02-27 10:54:41 +08:00
0f1c336d06 UI调整: 管理员徽章样式改为更节省宽度的将官军功章 (🎖️) 2026-02-27 10:22:20 +08:00
9f0270be12 UI改进: 为具有军人背景的聊天室更换管理员徽章风格为“★最高统帅★”红底金字金属铭牌 2026-02-27 10:20:04 +08:00
df57258aff UI调整: 聊天室右侧在线名单图标显示逻辑调整为互斥展示,管理员具有最高展示优先级 2026-02-27 10:14:56 +08:00
b72e2a5936 优化:送花消息改为普通通知样式 + 在收花人私聊屏显示
- from_user 从'系统传音'改为'送花播报',不再使用红色公告样式
- to_user 从'大家'改为收花人用户名,消息在收花人 say2 显示
- 礼物图片渲染逻辑移到普通系统用户分支
2026-02-27 01:09:26 +08:00
c5cc55fc84 功能:送花/礼物系统完整开发
- 新增 Gift 模型和 gifts 数据表(7种默认花卉,各有图片/金币/魅力配置)
- 7张花卉图片生成并存放于 public/images/gifts/
- 名片弹窗新增送礼物 UI:图片选择列表、金币/魅力标注、数量选择
- sendFlower 控制器方法:按 gift_id 查找礼物、扣金币、加魅力、广播消息
- 聊天消息渲染支持显示礼物图片(含弹跳动画效果)
- 后台可在 gifts 表中管理花卉类型(名称、图标、图片、金币、魅力、排序、启禁用)
2026-02-27 01:01:56 +08:00
a2190f7b88 优化:存点称号改为后端动态返回
- 后端根据 VIP 等级/管理员身份返回 title 字段
- 前端移除硬编码的等级-称号映射,直接使用返回值
- 管理员显示'管理员',VIP 显示会员名称,其他显示'普通会员'
2026-02-27 00:49:35 +08:00
28e938a462 清理:移除已废弃的 executeAdminAction 函数(约90行)
管理操作已迁移到名片弹窗(user-actions.blade.php),输入栏下拉也已移除
2026-02-27 00:47:31 +08:00
4cc2982d9f 功能:自动存点增加金币奖励 + VIP 加成
- heartbeat 增加金币奖励逻辑,读取 jjb_per_heartbeat 配置
- 支持固定值('5')和范围('1-10')两种奖励配置格式
- VIP 会员自动应用经验和金币加成倍率
- 前端手动存点显示金币余额和本次获得的奖励增量
- 新增迁移文件插入 jjb_per_heartbeat 配置项(默认 1-3)
- 更新 exp_per_heartbeat 描述说明支持范围格式
2026-02-27 00:44:45 +08:00
dc40d866ab 修复:移除 scripts.blade.php 中遗留的多余花括号导致的 JS 语法错误 2026-02-27 00:25:08 +08:00
bf6f378613 重构:抽取 switchTarget/openUserCard 到独立文件 user-actions.blade.php
- 新增 chat/partials/user-actions.blade.php 作为用户交互全局函数
- 从 scripts.blade.php 中移除 switchTarget、openUserCard、showUserInfoInSay2
- frame.blade.php 在 scripts 之前引入 user-actions
- 代码职责更清晰,方便维护
2026-02-27 00:17:32 +08:00
ad8315f4a6 重构:双击用户名统一走 openUserCard 全局函数
- 新增全局 openUserCard() 函数,所有双击用户名入口统一调用
- 聊天消息区 clickableUser 的 ondblclick 改为 openUserCard
- 右侧用户列表双击简化为调用 openUserCard
- 移除输入栏底部的管理操作下拉框和执行按钮
- 管理操作统一通过双击用户名 → 名片弹窗执行
2026-02-27 00:16:07 +08:00
14d70556aa 修复:双击用户名打开名片弹窗
- 用户列表项双击触发 Alpine.js fetchUser 方法
- 打开用户名片弹窗,可查看资料和执行管理操作
- 单击仍为选中聊天目标
2026-02-27 00:03:19 +08:00
ec76d39350 修复:管理操作下拉框添加警告和查看私聊选项
- input-bar 下拉新增 '⚠️ 警告' 和 '🔍 查看私聊' 选项
- executeAdminAction 增加 warn/whispers 的交互逻辑
- 修正 warn 参数名匹配后端(username/reason)
- 所有操作项添加 emoji 图标提升辨识度
2026-02-26 23:56:25 +08:00
772edf65ab 修复:全员清屏 DOM 选择器 ID 错误
- getElementById('say') → getElementById('chat-messages-container')
- getElementById('say2') → getElementById('chat-messages-container2')
- 这是清屏事件收到但页面无反应的根本原因
2026-02-26 23:45:24 +08:00
62b963fb9b 修复:全员清屏广播不生效
- ScreenCleared 改用 ShouldBroadcastNow 绕过队列,避免 Horizon 未重启问题
- Echo 监听移入 DOMContentLoaded + 500ms 重试,确保 window.Echo 就绪后再注册
- 添加 console.log 便于调试
2026-02-26 23:43:09 +08:00
f92fae599e 修复:前端 headface 引用统一 toLowerCase() 防止大写和 undefined
- 用户列表和发言头像引用加 .toLowerCase()
- 兼容 Redis 缓存中的旧 .GIF 大写数据
2026-02-26 23:39:32 +08:00
a19ff20988 优化:表情图片懒加载 + 统一剩余 .GIF 引用为 .gif
- 贴图面板使用 data-src 懒加载,切换到贴图 Tab 时才加载图片
- 避免页面刷新时发起 50 个表情图片请求
- 统一 frame.blade.php 和 scripts.blade.php 中残余的 .GIF 大写引用
2026-02-26 23:37:51 +08:00
bfd90ca882 统一:所有图片后缀从 .GIF 改为 .gif
- headface 目录 371 个文件重命名为小写后缀
- 代码中所有 .GIF 引用改为 .gif(User.php/AuthController/channels.php/frame.blade/scripts.blade)
- 新增迁移:将 users 表 usersf 列中的 .GIF 批量替换为 .gif
- 解决 Linux 大小写敏感导致图片加载失败的问题
2026-02-26 23:27:35 +08:00
0e82c3fff0 修复:全员清屏改用 Echo 直接监听(不依赖编译产物)
- 从 CustomEvent 中转改为 window.Echo.join().listen() 直接监听
- Blade 模板同步即生效,无需 npm run build
2026-02-26 23:20:02 +08:00
065e82f8b7 优化:禁言/解禁通知路由到被禁言者的包厢窗口(say2)
- 被禁言者在 say2 看到禁言/解禁提示
- 其他人在 say1(公聊)看到禁言通知
2026-02-26 23:15:27 +08:00
2d45e52591 优化:禁言提示显示操作者 + 被禁言发言改用持久提示
- UserMuted 事件增加 operator 字段,禁言通知显示管理员名字
- 输入框 placeholder 显示操作者名字
- 被禁言用户发言时改为在包厢窗口显示红色持久提示(替代 alert 弹窗)
2026-02-26 23:12:55 +08:00
66f68bab85 功能:管理员全员清屏 + 离开提示趣味风格
- 新增 ScreenCleared 广播事件
- AdminCommandController 添加 clearScreen 方法(站长权限)
- ChatStateService 添加 clearMessages 方法
- chat.js 添加 ScreenCleared Echo 监听
- 前端:全员清屏按钮(红色🧹)+ 清屏处理逻辑(保留悄悄话)
- 离开提示改为与进入一致的趣味随机语风格(橙色【离开】标签)
2026-02-26 23:05:56 +08:00
b80a74655c 样式:女生用户名显示为玫粉色(#e91e8c) + 修复 sex 整数比较
- 用户列表中女性(sex=2)名字颜色设为玫粉色
- 修复 scripts.blade.php 中 sex 从字符串比较改为整数比较
2026-02-26 22:59:41 +08:00
5722d5be25 优化:系统公告/传音消息以大字醒目样式显示
- 红色渐变边框背景、14px大字、阴影效果
- 钓鱼播报/AI小助手等保持普通样式
2026-02-26 22:34:00 +08:00
14c4effefa 新增:管理员命令系统(警告/踢出/禁言/冻结/查看私信/站长公屏)
- 新建 AdminCommandController 处理6个管理操作命令
- 注册管理员命令路由 /command/*
- 更新 UserKicked 事件增加原因字段
- 更新 UserMuted 事件支持自定义提示消息
- 重构用户名片弹窗管理面板:警告/踢出/禁言/冻结按钮
- 站长专属:查看私信记录、📢公屏讲话按钮
- 被踢出时显示踢出原因
2026-02-26 22:27:49 +08:00
f5d8a593c9 优化:AI对话改为公开广播,所有人可见
- ChatBotController 将用户提问和AI回复都广播到聊天室
- 前端不再本地渲染AI消息,由WebSocket广播统一处理
- AI小助手加入系统用户列表(公告样式展示)
- 思考中提示延迟500ms显示在包厢窗口,避免排序混乱
2026-02-26 22:11:11 +08:00
8c55c24a07 优化:系统消息改为公告样式、不可点击;新增清屏按钮
- 系统用户(钓鱼播报、星海小博士、系统传音)消息不再显示「对大家说:」,直接公告
- 系统用户名不可点击设为聊天对象
- 钓鱼按钮旁新增「🔄 清屏」按钮
- 头像修改后同步更新 Redis 在线用户列表
- headface 访问器增加 set mutator
2026-02-26 21:57:54 +08:00
5d722bbb0b 优化:AI小助手在线列表样式改为与普通用户一致 2026-02-26 21:46:25 +08:00
fd3214eaff 功能:VIP 赞助会员系统
- 新建 vip_levels 表(名称、图标、颜色、经验/金币倍率、专属进入/离开模板)
- 默认4个等级种子:白银🥈(×1.5)、黄金🥇(×2.0)、钻石💎(×3.0)、至尊👑(×5.0)
- 后台 VIP 等级 CRUD 管理(新增/编辑/删除,配置模板和倍率)
- 后台用户编辑弹窗支持设置 VIP 等级和到期时间
- ChatController 心跳经验按 VIP 倍率加成
- FishingController 正向奖励按 VIP 倍率加成(负面惩罚不变)
- 在线名单显示 VIP 图标和管理员🛡️标识
- VIP 用户进入/离开使用专属颜色和标题
- 后台侧栏新增「👑 VIP 会员等级」入口
2026-02-26 21:30:07 +08:00
ea06328885 功能:字体颜色持久化、等级体系升级至99级、钓鱼小游戏、补充系统参数
- 字体颜色:s_color 改为 varchar,发消息时保存颜色,进入聊天室自动恢复
- 等级体系:maxlevel 15→99,superlevel 16→100,99级经验阶梯(幂次曲线)
- 管理权限等级按比例调整:禁言50、踢人60、设公告60、封号80、封IP90
- 钓鱼小游戏:FishingController(抛竿扣金币+收竿随机结果+广播)
- 补充6个缺失的 sysparam 参数 + 4个钓鱼参数
- 用户列表点击用户名后自动聚焦输入框
- Pint 格式化
2026-02-26 21:10:34 +08:00