using UnityEngine;
|
using UnityEngine.UI;
|
|
public class PhantasmPavilionFacePicItem : MonoBehaviour
|
{
|
[SerializeField] ImageEx imgFace;
|
[SerializeField] UIFrame uiFrame;
|
[SerializeField] UIEffectPlayer spine;
|
[SerializeField] Button btnChoose;
|
|
[SerializeField] ImageEx imgLimit;
|
[SerializeField] ImageEx imgLock;
|
[SerializeField] ImageEx imgChoose;
|
[SerializeField] ImageEx imgCanUnlock;
|
[SerializeField] TextEx txtUsing;
|
[SerializeField] Image imgRed;
|
|
readonly PhantasmPavilionType type = PhantasmPavilionType.FacePic;
|
int id;
|
PhantasmPavilionManager manager { get { return PhantasmPavilionManager.Instance; } }
|
public void Display(int id)
|
{
|
this.id = id;
|
btnChoose.SetListener(() =>
|
{
|
manager.selectId = id;
|
});
|
|
PhantasmPavilionState state = manager.GetUnLockState(type, id);
|
bool isLimitedTime = manager.IsLimitTime(type, id);
|
bool isUsing = manager.IsUsing(type, id);
|
imgChoose.SetActive(manager.selectId == id);
|
imgLimit.SetActive(state == PhantasmPavilionState.Activated && isLimitedTime);
|
imgLock.SetActive(state != PhantasmPavilionState.Activated);
|
imgCanUnlock.SetActive(state == PhantasmPavilionState.CanActivate);
|
txtUsing.SetActive(state == PhantasmPavilionState.Activated && isUsing);
|
|
int resourceType = manager.GetResourceType(type, id);
|
string resourceValue = manager.GetResourceValue(type, id);
|
manager.Show(imgFace, spine, uiFrame, resourceType, resourceValue);
|
|
manager.UpdateItemRedPoint(imgRed, type, id);
|
}
|
|
}
|