57 lines
1.1 KiB
C#
57 lines
1.1 KiB
C#
using UnityEngine;
|
|
using AibisDream.SaveSystem;
|
|
|
|
public class ChipModule : MonoBehaviour
|
|
{
|
|
private GameObject _chipModule;
|
|
private bool _isChipRemoved;
|
|
|
|
private void Awake()
|
|
{
|
|
_chipModule = transform.Find("Chip").gameObject;
|
|
}
|
|
|
|
public void RemoveChipModule()
|
|
{
|
|
if (_chipModule.activeInHierarchy)
|
|
{
|
|
_chipModule.SetActive(false);
|
|
}
|
|
|
|
_isChipRemoved = true;
|
|
}
|
|
|
|
public void InstallChipModule()
|
|
{
|
|
if (!_chipModule.activeInHierarchy)
|
|
{
|
|
_chipModule.SetActive(true);
|
|
}
|
|
|
|
_isChipRemoved = false;
|
|
}
|
|
|
|
public void CaptureState(BodyModuleSnapshotDto dto)
|
|
{
|
|
if (dto == null) return;
|
|
dto.isChipRemoved = _isChipRemoved;
|
|
}
|
|
|
|
public void ApplyState(BodyModuleSnapshotDto dto)
|
|
{
|
|
if (dto == null) return;
|
|
_isChipRemoved = dto.isChipRemoved;
|
|
Chipinit();
|
|
}
|
|
|
|
public void Chipinit()
|
|
{
|
|
_chipModule.SetActive(!_isChipRemoved);
|
|
}
|
|
|
|
private void Start()
|
|
{
|
|
Chipinit();
|
|
}
|
|
}
|