feat(fix-system): 重构BlockPuzzle系统,完善石头维修流程

This commit is contained in:
2026-03-06 18:31:41 +08:00
parent 9745c8d054
commit b05e59f564
5 changed files with 40 additions and 23 deletions
@@ -1,5 +1,4 @@
using UnityEngine;
using Cinemachine;
using AibisDream.Kit;
using AibisDream.Utility;
using System.Linq;
@@ -9,7 +8,7 @@ using UnityEngine.EventSystems;
namespace AibisDream
{
public class BlockPuzzleSystem : Singleton<BlockPuzzleSystem>
public class BlockPuzzleSystem : MonoBehaviour
{
[Header("物体索引")]
// 物体索引
@@ -41,14 +40,23 @@ namespace AibisDream
{
Initialize();
}
CameraKit.Instance?.RegisterCamera(CameraEnum.BlockPuzzle, GetComponentInChildren<ICinemachineCamera>());
}
public override void OnSingletonDestroy()
private void OnDestroy()
{
FixSystemCenter.SystemDic.Unregister<BlockPuzzleSystem>();
CameraKit.Instance?.UnRegisterCamera(CameraEnum.BlockPuzzle);
}
public void Initialize(string puzzleName)
{
if (BlockPuzzleKit.TryLoadBlockPuzzleData(puzzleName, out var blockPuzzleData))
{
Initialize(blockPuzzleData);
}
else
{
Debug.LogError($"加载 BlockPuzzleData 失败: {puzzleName}");
}
}
public void Initialize(BlockPuzzleData puzzleData)