Files
SVSimServer/SVSim.BattleEngine/Engine/MyPageCardPanel.cs

103 lines
2.1 KiB
C#

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<CardPanelMaintenancePlate>();
}
_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;
}
}