Commit Graph

88 Commits

Author SHA1 Message Date
yangbear 07256e9e70 fix: 删除ActivateExperimentObjects中残留的ping.004激活代码-根因
日志显示强制隐藏后又被旧代码SetActive(true)覆盖, Python替换未匹配实际文本
2026-07-05 02:26:21 +08:00
yangbear 065be5a982 fix: ActivateExperimentObjects加第三层强制隐藏ping/chanrao+日志 2026-07-05 02:23:53 +08:00
yangbear bde6db88ef fix: _enableOpeningFlow=false时也要DeactivateManInjuryChildren+移入RunOpeningFlow
- skip分支加DeactivateManInjuryChildren调用
- 正常流程把清理从PlayOpeningFlow移到RunOpeningFlow(manInjury激活后)
- 确保无论是否播开场动画ping都不会残留
2026-07-04 16:54:46 +08:00
yangbear 77f6e2f00d fix: PlayOpeningFlow/ReturnToHome重置所有ping/chanrao为隐藏
- OpeningFlowController新增DeactivateManInjuryChildren遍历隐藏
- PageController.ReturnToHome同样遍历隐藏ping/chanrao
- 解决上一轮实验残留导致ping自动出现的bug
2026-07-04 16:48:30 +08:00
yangbear dee680a458 fix: GetComponentsInChildren(true)确保深层子模型隐藏+SphereCollider防点击无效 2026-07-03 14:44:28 +08:00
yangbear 0e35ff22c8 fix: 去掉ChanraoTuibuHandler中残留的f变量 2026-07-03 14:40:18 +08:00
yangbear 9c99cbee78 fix: f→name修复编译错误 2026-07-03 14:38:02 +08:00
yangbear 1ee3a9a48c fix: 边框扩展20%贴合模型+隐藏所有子级Renderer
- ChanraoTuibuHandler/PingClickHandler: bounds.extents*1.2扩展边框
- OnEnable: 遍历所有子级Renderer全部enabled=false
- OnMouseDown: 遍历所有子级Renderer全部enabled=true
- 使用GetComponentInChildren<Renderer>()兜底
- 新增Debug.Log打印bounds信息
2026-07-03 14:37:00 +08:00
yangbear 643084682a feat: chanraotuibu交互+摄像机直切+顺序调整+高度修正
- 新增ChanraoTuibuHandler: 蓝色矩形闪烁描边, 点击显示模型+激活ping.004
- AudioManager.SwitchToCamera3: 移除淡入淡出改为直接切换
- TouchPositionHandler: point1→激活chanraotuibu(非ping.004)
- PingClickHandler高度offset改为0.05f
2026-07-03 14:30:10 +08:00
yangbear e978f3beb8 fix: var声明不能用嵌入语句,改为完整if块 2026-07-03 14:21:48 +08:00
yangbear bf683d77b3 fix: 摄像机切换移到AudioManager+ping高度用bounds.max.y
- 摄像机协程从TouchPositionHandler移到AudioManager上(避免point隐藏后被杀)
- TouchPositionHandler改成调用AudioManager.SwitchToCamera3Smooth
- ping边框Y用_meshRenderer.bounds.max.y+0.02
2026-07-03 14:19:37 +08:00
yangbear dd3eb605b5 fix: ping边框高度改用transform.position.y匹配模型实际Y位置 2026-07-03 14:15:11 +08:00
yangbear c8f23df5a4 feat: 语音流程重排+ping延后+边框变细
- 实验启动时自动播放第1段woman语音(周围环境安全)
- point1点击播放第2段(伤员左大腿), 同时激活ping.004
- ping边框从0.04改为0.015变细
- ActivateExperimentObjects不再即时激活ping
2026-07-03 14:08:08 +08:00
yangbear 4ce5ab0578 fix: TouchPositionHandler.OnEnable补collider防止点击失效 2026-07-03 01:08:14 +08:00
yangbear d48651678a fix: touchArray描边去实心填充+ping矩形描边基于模型Bounds
- TouchPositionHandler.OnEnable: 设_MainColor.a=0只留描边
- PingClickHandler.CreateBlueOutline: 根据模型meshRenderer.bounds画矩形环
- 去掉圆环硬编码
2026-07-03 01:06:54 +08:00
yangbear 6650540dde fix: PingClickHandler重建+touchArray优先级+确认无缓入代码
- PingClickHandler.OnMouseDown开头Physics.RaycastAll检查touchArray优先
- 删除重建避免多次替换导致的括号不平衡
- AudioManager确认无fade/缓入代码,音频直接播放
2026-07-03 00:59:20 +08:00
yangbear 9deb4a68e1 fix: ping两阶段点击—全部4个首次点击后才允许第二击显示chanrao
阶段0(_firstClickCount<4): 依次首次点击显示ping模型,激活下个ping
阶段1(_firstClickCount==4): 第二击显示chanrao并隐藏ping
UndoSecondClick同步恢复_firstClickCount
2026-07-02 16:42:43 +08:00
yangbear 9bb15b9959 fix: ping描边改为世界空间水平环,移除X旋转避免视角不可见 2026-07-02 16:33:02 +08:00
yangbear 915898cb24 fix: 删除重复的public修饰符 2026-07-02 16:29:52 +08:00
yangbear db5006264f feat: ping两步点击+蓝色描边+StepManager步骤追踪
PingClickHandler:
- 蓝色圆环闪烁描边
- 第一点击: 停止闪烁显示模型
- 第二点击: 显示chanrao隐藏自己激活下个ping
- UndoSecondClick/UndoShow 支持撤销

StepManager:
- 新增PingStepPrevious/PingStepNext/RecordPingStep
- PreviousStep/NextStep ping步优先于woman步
- InitPingSteps初始化ping/chanrao引用
2026-07-02 16:22:17 +08:00
yangbear 393e3da16f feat: ping/chanrao交互系统 + camera3平滑切换
- PingClickHandler: 蓝色闪烁描边, 点击显示chanrao并隐藏自己, 链式激活下个ping
- ping链: 004→003→002→001 (从4开始)
- TouchPositionHandler: point1点击时黑幕渐入→切camera3→渐出
- PageController: 实验启动时激活ping.004
2026-07-02 16:07:02 +08:00
yangbear 2538eecb6b fix: 恢复丢失的AudioManager调用(PlayHomeBg/StopBgMusic/PlayExperimentBg)
多次替换导致ShowPage/OnFixationSelected/ActivateExperimentObjects中的调用丢失
2026-07-01 22:42:39 +08:00
yangbear 8f05587473 fix: AudioManager.I→FindObjectOfType避免Awake执行顺序导致I为null
PageController可能在AudioManager.Awake前Start, 导致I为null
改用FindObjectOfType在调用时查找
2026-07-01 22:39:36 +08:00
yangbear b4415dea4c feat: 音频系统统一重写—AudioManager管理全部音频
新增 AudioManager.cs 挂在 [Managers] 上:
- _bgSource: 背景音乐(首页/实验), spatialBlend=0, BgVolume可调
- _sfxSource: 音效(篮球/manCall), Stop()可打断
- _voiceSource: 语音中断播放

替换:
- PageController: BGMController→AudioManager.I
- OpeningFlowController: PlayClipAtPoint→AudioManager.I.PlayBasketball/ManCallSfx
- 删除 BGMController.cs
- 删除旧 AudioManager.cs(Assets/Scripts/Audio/旧版)
2026-07-01 22:35:36 +08:00
yangbear c3d1efbe2c fix: 删除Start()中_bgAudioSource初始化+修复PlayExperimentBg调用 2026-07-01 22:12:31 +08:00
yangbear d52a7e86aa fix: 清理PageController中残留的音频代码片段 2026-07-01 22:11:21 +08:00
yangbear efce2422b8 fix: 删除PageController中所有旧音频死代码—只留BGMController
旧PlayHomeBg/PlayExperimentBg/StopBgMusic/FadeInBg/PlayWomanAudioSequence
和对应字段全部删除,避免与BGMController静态方法共存
2026-07-01 22:10:30 +08:00
yangbear e1a9f90d3f feat: BGMController独立音频脚本—彻底脱离PageController复杂编辑历史
新增BGMController.cs挂在[Managers]上:
- Awake()中创建AudioSource(spatialBlend=0,vol=0.5)
- AssetDatabase兜底加载_homeBgClip/_experimentBgClip
- 静态方法PlayHomeBg/PlayExperimentBg/StopBgMusic
PageController调用改为BGMController.xxx
2026-07-01 22:00:41 +08:00
yangbear fa380b2ea5 fix: AudioSource搬到[Managers]+关多余AudioListener+跳过FadeInBg直设音量0.5
- [Managers]是始终活跃的非UI/非摄像机物体,切换摄像机不影响
- 禁用camera2/camera3的AudioListener消除多Listener冲突
- 暂时跳过FadeInBg直接设vol=0.5排除淡入干扰
2026-07-01 21:56:12 +08:00
yangbear 01ca708a43 fix: AudioSource从Canvas移到Main Camera—UI Canvas AudioSource无法正常播放
根因: Canvas上的AudioSource因UI Canvas系统限制无法正常输出声音
解决: 将AudioSource组件挂在Main Camera上(spatialBlend=0 2D模式)
Start/PlayHomeBg/PlayExperimentBg全部使用Main Camera的AudioSource
2026-07-01 21:52:39 +08:00
yangbear d1430d7b64 fix: AudioSource设为2D(spatialBlend=0)+FadeInBg加日志
Canvas处于3D空间远端位置(586,330,0),默认3D AudioSource音量衰减到0
spatialBlend=0改为2D全域模式
2026-07-01 21:50:12 +08:00
yangbear 511ef8a61a fix: PlayHomeBg/PlayExperimentBg用AssetDatabase.LoadAssetAtPath兜底加载clip
SerializerField引用因脚本重编译频繁丢失,改为代码中硬加载音频文件路径
不再依赖Inspector赋值
2026-07-01 21:47:46 +08:00
yangbear 8187f871e5 fix: 删除旧AudioManager组件+重设PageController音频引用(save scene) 2026-07-01 21:43:25 +08:00
yangbear fc63a9bbb3 fix: StopBgMusic加enabled=false彻底禁用AudioSource防止后续恢复
- StopBgMusic: Stop后加s.enabled=false, 日志打印clip名
- PlayHomeBg/PlayExperimentBg: 播放前设enabled=true, 先停旧fade再开新
- FadeInBg从volume=0渐入
2026-07-01 21:38:26 +08:00
yangbear 9cce193381 fix: 删除重复的_fadeCoroutine字段声明 2026-07-01 21:34:19 +08:00
yangbear c9eda6a9f7 fix: StopBgMusic停止Canvas上所有AudioSource,消除潜藏旧组件
之前的PlayHomeBg/PlayExperimentBg每次run可能残留重复AddComponent
现在GetComponents<AudioSource>()遍历停止全部,不依赖单引用
2026-07-01 21:32:22 +08:00
yangbear 798393edee fix: StopBgMusic强制Stop+中断FadeInBg协程,彻底解决bg不退
- StopBgMusic去掉isPlaying检查,AudioSource存在就强制Stop
- 保存FadeInBg协程引用到_fadeCoroutine
- StopBgMusic时先StopCoroutine(_fadeCoroutine)再Stop音频
2026-07-01 21:29:54 +08:00
yangbear f68e675022 fix: bg音乐缓入+语音打断+代码碎片清理
- PlayHomeBg/PlayExperimentBg 增加 FadeInBg 缓入协程(1.5s)
- TouchPositionHandler 使用静态共享 AudioSource 避免语音重叠
- 清理 PageController 中因多次编辑产生的代码碎片和括号混乱
2026-07-01 21:18:34 +08:00
yangbear 3a83140801 fix: 重建TouchPositionHandler.cs修复括号混乱编译错误 2026-07-01 21:07:01 +08:00
yangbear d0e4d5d8c5 fix: 音频系统全面修复 - 引用设置+PlayHomeBg重启+音效位置
1. 通过MCP设置所有AudioClip引用到Inspector字段
2. PlayHomeBg去掉clip比较检查,Stop后回来能重新播放
3. basketball/manCall PlayClipAtPoint改用transform.position
4. TouchPositionHandler voiceClip通过SerializedObject赋值
2026-07-01 21:04:38 +08:00
yangbear 34287ca203 fix: 音频系统代码清理 - 修复TouchPositionHandler多余} + 清理死代码
- TouchPositionHandler: 修复sed残留多余},改用PlayClipAtPoint
- PageController: StopBgMusic/HideAllPages分行,删除未调用的PlayWomanAudioSequence
2026-07-01 20:19:17 +08:00
yangbear b26a6e0fc7 fix: 移除重复的PlayHomeBg/StopBgMusic/PlayExperimentBg定义 2026-07-01 20:03:45 +08:00
yangbear 97b793e8f4 fix: 修复bg音乐方法被加到类外面的编译错误 2026-07-01 20:01:21 +08:00
yangbear 8dadc6a58d feat: 音频系统重构 - bg音乐流程修复 + woman语音按点位播放
改动:
1. TouchPositionHandler新增voiceClip字段, 点击时播放对应语音
2. PageController.ShowPage: 首页播放homeBg
3. OnFixationSelected: StopBgMusic()(开场动画开始时停bg)
4. ActivateExperimentObjects: 移除PlayWomanAudioSequence, 保留PlayExperimentBg
5. 新增PlayHomeBg/StopBgMusic/PlayExperimentBg方法
6. 删除_audioManager冗余引用

流程:
首页→homeBg播 → 选固定方式→bg停 → 开场动画→实验bg播
woman语音1→点击point1播, 语音2→point2, 语音3→point3
2026-07-01 19:51:41 +08:00
yangbear 9548492391 feat: 完整音频系统 - 首页/实验背景音乐+woman语音序列
- PageController新增_homeBgClip/_experimentBgClip/_womanClips数组
- Start()创建AudioSource循环播放背景音乐
- ShowPage控制: Home播首页bg, 离开首页停止bg
- ActivateExperimentObjects: 停止首页bg→播实验bg→顺序播放3段woman语音
- PlayWomanAudioSequence()协程: 每段播完后等0.5s再播下一段
2026-06-30 23:42:26 +08:00
yangbear 89037cb9dc feat: 开场音频系统 - 篮球音效+manCall
- OpeningFlowController新增_basketballClip/_manCallClip SerializeField
- Step2 Shoot开始时播放篮球音效
- Step3 manfull摔倒后播放manCall
- AudioSource.PlayClipAtPoint播放
2026-06-30 23:40:37 +08:00
yangbear 9ce2bccbeb fix: 实验启动时恢复显示TipPanel和DialogueBubble
HideAllPages()隐藏了这两个面板,ActivateExperimentObjects()中补上显示
2026-06-30 23:12:24 +08:00
yangbear b2714eb7a2 feat: 开场动画开关 _enableOpeningFlow (Inspector可调)
- 新增 [SerializeField] _enableOpeningFlow,默认true
- 设为false时直接跳过动画,切场景状态后回调
- 方便调试验证后续功能
2026-06-30 23:10:08 +08:00
yangbear 5778de59ab fix: 保存woman初始位置,上一步回到step0时能回到起点
- InitWomanSteps()保存_womanInitPos/_womanInitRot
- MoveWomanToStep(0)不再跳过,改为恢复到初始位置
- step=0时显示point1(通过UpdateTouchVisibility)
2026-06-30 23:07:19 +08:00
yangbear 4540ff4942 fix: 移除UIManager重复按钮绑定+InteractionSystem误触发——根因修复
根因: UIManager._btnLimbFixation/_btnSplintFixation调用SwitchFixation
与PageController的OnFixationSelected双重触发,StepManager._mode被设为Learn
导致OnStepInteractionComplete→NextStep→WomanStepNext自动跳过步骤。

修复:
1. UIManager.BindButtons移除_btnLimbFixation/_btnSplintFixation的SwitchFixation绑定
2. ExperimentFlowCoordinator.OnAnywhereClicked增加无Config步骤时忽略的注释守卫
2026-06-30 21:59:47 +08:00