fix: 维修面板初始灯光状态可配置

This commit is contained in:
2026-03-28 21:45:00 +08:00
parent 1a5e3dbc59
commit fbfda00150
6 changed files with 952 additions and 932 deletions
@@ -56,9 +56,9 @@ namespace AibisDream.FixSystem
#region
[SerializeField] private bool isSystemOn = false;
private bool isSystemStarting = false;
private Coroutine smallLightsBlinkCoroutine;
private bool isLightOn;
#endregion
@@ -95,13 +95,14 @@ namespace AibisDream.FixSystem
/// <summary>
/// 初始化灯光系统
/// </summary>
public void Initialize()
public void Initialize(bool isLightOn)
{
this.isLightOn = isLightOn;
// 初始化SpriteRenderer引用
InitializeSpriteRenderers();
// 初始化系统状态
if (isSystemOn)
if (isLightOn)
{
InitializeSystemOn();
}
@@ -160,20 +161,11 @@ namespace AibisDream.FixSystem
#region -
/// <summary>
/// 检查系统是否开启
/// </summary>
public bool IsSystemOn()
{
return isSystemOn;
}
/// <summary>
/// 设置系统电源状态
/// </summary>
public void SetSystemPower(bool isOn)
{
isSystemOn = isOn;
if (!isOn)
{
TurnOffAllLights();
@@ -189,10 +181,10 @@ namespace AibisDream.FixSystem
/// </summary>
public IEnumerator StartSystem()
{
if (isSystemStarting || isSystemOn) yield break;
if (isSystemStarting || isLightOn) yield break;
isSystemStarting = true;
yield return StartCoroutine(SystemStartSequence());
yield return SystemStartSequence();
isSystemStarting = false;
}
@@ -446,7 +438,7 @@ namespace AibisDream.FixSystem
{
while (true)
{
if (!isSystemOn)
if (!isLightOn)
{
TurnOffAllSmallLights();
}