using System;
using DefaultNamespace;
using DefaultNamespace.ProcessMode;
using HighlightPlus;
using MotionFramework;
using UnityEngine;
using UnityEngine.EventSystems;
namespace ToolsPack
{
///
/// 附着在工具模型上
///
[RequireComponent(typeof(BoxCollider))]
[RequireComponent(typeof(HighlightEffect))]
public class ToolsPackGameObjectComponent : MonoBehaviour
{
private HighlightEffect _highlight;
private int index;
[SerializeField] private ModelTypeEnum _modelTypeEnum;
[SerializeField] private ToolsPackScene _toolsPackScene;
[SerializeField] private bool IsClick = true;
private void Awake()
{
_highlight = this.GetComponent();
}
private void Start()
{
// _toolsPackScene = MotionEngine.GetModule().GetToolsPackScene();
}
private void OnEnable()
{
_highlight.highlighted = false;
}
private void OnMouseDown()
{
if (EventSystem.current.IsPointerOverGameObject())
{
return;
}
if ( MotionEngine.GetModule().GetToolsPackScene() == ToolsPackScene.工具间)
{
MotionEngine.GetModule().HandleClick(this.gameObject.name);
if (IsClick)
MotionEngine.GetModule().AddToolsPack(this.name, this.gameObject);
this.gameObject.SetActive(false);
}
}
private void OnMouseEnter()
{
if (EventSystem.current.IsPointerOverGameObject())
{
return;
}
_highlight.highlighted = true;
}
private void OnMouseExit()
{
if (EventSystem.current.IsPointerOverGameObject())
{
return;
}
_highlight.highlighted = false;
}
public void SetIndex(int inde)
{
index = inde;
}
public int GetIndex()
{
return index;
}
// public void SetModelTypeEnum(ModelTypeEnum mo)
// {
// _modelTypeEnum = mo;
// }
public ModelTypeEnum GetModelTypeEnum()
{
return _modelTypeEnum;
}
}
}