using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
public class BaseShow : MonoBehaviour
{
///
/// 数据信息
///
public Data info;
///
/// 是否可以单击
///
public bool CanClick = true;
///
/// 点击状态改变事件
///
public event UnityAction CanClickStatusChanged;
/////
///// 点击状态
/////
//bool canClickNewStatus;
//// 临时距离
//float distance;
///
/// 选中控制组件
///
public ShowBoxCollider sbc;
void Awake()
{
sbc = GetComponent();
}
public void OnStatusChange()
{
if (CanClickStatusChanged != null)
{
CanClickStatusChanged();
}
}
~BaseShow()
{
// ShowController.Instance.RemoveShow(this);
}
public virtual void OnClick()
{
}
bool IsMaskShow
{
get
{
sbc = GetComponent();
if (sbc == null)
return false;
else
return sbc.showMask;
}
}
public void OnMouseUp()
{
if (BaseController.CanControl && IsMaskShow)
{
OnClick();
TipPlayerEx.Instance.HideTip();
}
}
//void LateUpdate()
//{
// if (info != null)
// {
// // 获取摄像机与中心位置的距离
// distance = Vector3.Distance(CommonData.MainCamera.transform.position, transform.position);
// canClickNewStatus = (distance <= info.ClickDistance);
// // 可单击状态发生改变(靠近或远离)
// if (CanClick != canClickNewStatus)
// {
// CanClick = canClickNewStatus;
// if (CanClick)
// {
// gameObject.AddComponent();
// }
// else
// {
// Destroy(gameObject.GetComponent());
// }
// if (CanClickStatusChanged != null)
// {
// CanClickStatusChanged();
// }
// // 启用或禁用选中控制组件
// if (sbc != null)
// {
// if (CanClick)
// {
// sbc.enabled = true;
// }
// else
// {
// sbc.enabled = false;
// }
// }
// }
// }
//}
}