using System.Collections; using Cute; using UnityEngine; using Wizard; public class MyPageCardPanel : MonoBehaviour { [SerializeField] private GameObject _effect; [SerializeField] private bool enableMaintenanceCheck; [SerializeField] protected NetworkDefine.MAINTENANCE_TYPE maintenanceType; [SerializeField] private NetworkDefine.MAINTENANCE_TYPE[] _maintenanceTypeList; private CardPanelMaintenancePlate _maintenancePlate; private Vector3? _savedPosition; public int Index { get; set; } public bool EffectActive { set { if (_effect != null) { _effect.SetActive(value); } } } public virtual void CheckMaintenanceType() { if (!enableMaintenanceCheck) { return; } bool flag = false; if (Data.MaintenanceCodeList.Contains(maintenanceType)) { flag = true; } if (_maintenanceTypeList != null && _maintenanceTypeList.Length != 0) { bool flag2 = true; NetworkDefine.MAINTENANCE_TYPE[] maintenanceTypeList = _maintenanceTypeList; foreach (NetworkDefine.MAINTENANCE_TYPE item in maintenanceTypeList) { if (!Data.MaintenanceCodeList.Contains(item)) { flag2 = false; break; } } if (flag2) { flag = true; } } if (flag) { ShowMaintenance(); } else { HideMaintenance(); } } private void ShowMaintenance() { if (_maintenancePlate == null) { GameObject prefab = null; // Pre-Phase-5b: no PrefabMgr headless _maintenancePlate = NGUITools.AddChild(base.gameObject, prefab).GetComponent(); } _maintenancePlate.gameObject.SetActive(value: true); UIManager.SetObjectToGrey(base.gameObject, b: true); UIManager.SetObjectToGrey(_maintenancePlate.gameObject, b: false); } private void HideMaintenance() { if (_maintenancePlate != null) { _maintenancePlate.gameObject.SetActive(value: false); } UIManager.SetObjectToGrey(base.gameObject, b: false); } public Vector3 SavePosition() { _savedPosition = base.transform.localPosition; return _savedPosition.Value; } public void RestoreSavedPosition() { base.transform.localPosition = _savedPosition.Value; } }