124 lines
2.7 KiB
C#
124 lines
2.7 KiB
C#
|
|
using System.Collections;
|
|||
|
|
using System.Collections.Generic;
|
|||
|
|
using UnityEngine;
|
|||
|
|
using UnityEngine.Events;
|
|||
|
|
|
|||
|
|
public class BaseShow : MonoBehaviour
|
|||
|
|
{
|
|||
|
|
/// <summary>
|
|||
|
|
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|||
|
|
/// </summary>
|
|||
|
|
public Data info;
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>Ե<EFBFBD><D4B5><EFBFBD>
|
|||
|
|
/// </summary>
|
|||
|
|
public bool CanClick = true;
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// <20><><EFBFBD><EFBFBD>״̬<D7B4>ı<EFBFBD><C4B1>¼<EFBFBD>
|
|||
|
|
/// </summary>
|
|||
|
|
public event UnityAction CanClickStatusChanged;
|
|||
|
|
|
|||
|
|
///// <summary>
|
|||
|
|
///// <20><><EFBFBD><EFBFBD>״̬
|
|||
|
|
///// </summary>
|
|||
|
|
//bool canClickNewStatus;
|
|||
|
|
|
|||
|
|
//// <20><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
|
|||
|
|
//float distance;
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// ѡ<>п<EFBFBD><D0BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
/// </summary>
|
|||
|
|
public ShowBoxCollider sbc;
|
|||
|
|
|
|||
|
|
void Awake()
|
|||
|
|
{
|
|||
|
|
sbc = GetComponent<ShowBoxCollider>();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public void OnStatusChange()
|
|||
|
|
{
|
|||
|
|
if (CanClickStatusChanged != null)
|
|||
|
|
{
|
|||
|
|
CanClickStatusChanged();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
~BaseShow()
|
|||
|
|
{
|
|||
|
|
// ShowController.Instance.RemoveShow(this);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public virtual void OnClick()
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
bool IsMaskShow
|
|||
|
|
{
|
|||
|
|
get
|
|||
|
|
{
|
|||
|
|
sbc = GetComponent<ShowBoxCollider>();
|
|||
|
|
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)
|
|||
|
|
// {
|
|||
|
|
// // <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>õľ<C3B5><C4BE><EFBFBD>
|
|||
|
|
// distance = Vector3.Distance(CommonData.MainCamera.transform.position, transform.position);
|
|||
|
|
// canClickNewStatus = (distance <= info.ClickDistance);
|
|||
|
|
|
|||
|
|
// // <20>ɵ<EFBFBD><C9B5><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD>ı䣨<C4B1><E4A3A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD>룩
|
|||
|
|
// if (CanClick != canClickNewStatus)
|
|||
|
|
// {
|
|||
|
|
// CanClick = canClickNewStatus;
|
|||
|
|
|
|||
|
|
// if (CanClick)
|
|||
|
|
// {
|
|||
|
|
// gameObject.AddComponent<ShowBoxCollider>();
|
|||
|
|
// }
|
|||
|
|
// else
|
|||
|
|
// {
|
|||
|
|
// Destroy(gameObject.GetComponent<ShowBoxCollider>());
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
// if (CanClickStatusChanged != null)
|
|||
|
|
// {
|
|||
|
|
// CanClickStatusChanged();
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
// // <20><><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD>п<EFBFBD><D0BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
// if (sbc != null)
|
|||
|
|
// {
|
|||
|
|
// if (CanClick)
|
|||
|
|
// {
|
|||
|
|
// sbc.enabled = true;
|
|||
|
|
// }
|
|||
|
|
// else
|
|||
|
|
// {
|
|||
|
|
// sbc.enabled = false;
|
|||
|
|
// }
|
|||
|
|
// }
|
|||
|
|
// }
|
|||
|
|
// }
|
|||
|
|
//}
|
|||
|
|
}
|