You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.6 KiB
55 lines
1.6 KiB
3 years ago
|
using ET;
|
||
|
using UnityEngine;
|
||
|
using UnityEngine.UI;
|
||
|
|
||
|
public class RedDotMonoView: MonoBehaviour
|
||
|
{
|
||
|
[HideInInspector]
|
||
|
public bool isRedDotActive = false;
|
||
|
private GameObject redDotGameObject = null;
|
||
|
private Text redDotCountLabel = null;
|
||
|
|
||
|
public Vector3 RedDotScale = Vector3.one;
|
||
|
public Vector2 PositionOffset = Vector2.zero;
|
||
|
|
||
|
private void Awake()
|
||
|
{
|
||
|
this.isRedDotActive = false;
|
||
|
}
|
||
|
|
||
|
public void Show( GameObject redDotGameObject )
|
||
|
{
|
||
|
this.isRedDotActive = true;
|
||
|
this.redDotGameObject = redDotGameObject;
|
||
|
redDotGameObject.transform.SetParent(this.transform,false);
|
||
|
redDotGameObject.transform.localScale = RedDotScale;
|
||
|
redDotGameObject.transform.GetComponent<RectTransform>().anchoredPosition = this.PositionOffset;
|
||
|
this.redDotCountLabel = redDotGameObject.GetComponentInChildren<Text>();
|
||
|
redDotGameObject.SetActive(true);
|
||
|
}
|
||
|
|
||
|
public void RefreshRedDotCount(int count)
|
||
|
{
|
||
|
if ( null == this.redDotGameObject )
|
||
|
{
|
||
|
return;
|
||
|
}
|
||
|
this.redDotGameObject.transform.localScale = RedDotScale;
|
||
|
this.redDotCountLabel.text = count <= 0? string.Empty: count.ToString();
|
||
|
}
|
||
|
|
||
|
public GameObject Recovery()
|
||
|
{
|
||
|
if (this.redDotCountLabel != null)
|
||
|
{
|
||
|
this.redDotCountLabel.text = "";
|
||
|
}
|
||
|
|
||
|
this.isRedDotActive = false;
|
||
|
this.redDotCountLabel = null;
|
||
|
this.redDotGameObject?.SetActive(false);
|
||
|
GameObject go = this.redDotGameObject;
|
||
|
this.redDotGameObject = null;
|
||
|
return go;
|
||
|
}
|
||
|
}
|