fix(dreamdoor): 修复星空默认开启导致变门穿帮

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-25 21:25:46 +08:00
co-authored by Cursor
parent 166b0ac4af
commit 0e1604d18b
2 changed files with 21 additions and 1 deletions
@@ -109,6 +109,7 @@ namespace AibisDream
return;
}
EnsureStarfieldActive();
director.Stop();
SetTimelineTime(0f);
}
@@ -120,6 +121,8 @@ namespace AibisDream
yield break;
}
EnsureStarfieldActive();
float startTime;
float endTime;
switch (attempt)
@@ -159,6 +162,7 @@ namespace AibisDream
yield break;
}
EnsureStarfieldActive();
director.Pause();
SetTimelineTime(blurFadeStart);
director.Play();
@@ -195,9 +199,23 @@ namespace AibisDream
return;
}
// Fiction 等路径可能只 play_timeline、不走 starfield_prepare
// Timeline 只 key 了「海浪」的 Active,不会打开「星空」。
if (director.state == PlayState.Playing)
EnsureStarfieldActive();
ApplyAtTime((float)director.time);
}
/// <summary>
/// 场景「星空」默认 inactive(与「海浪」一致)。演出开始时打开。
/// </summary>
private void EnsureStarfieldActive()
{
if (starfieldRenderer != null && !starfieldRenderer.gameObject.activeSelf)
starfieldRenderer.gameObject.SetActive(true);
}
private bool TryValidateReferences()
{
if (director == null)