using System; using DefaultNamespace; using DefaultNamespace.ProcessMode; using HighlightPlus; using MotionFramework; using UnityEngine; using UnityEngine.EventSystems; //public enum ToolProperties //{ // 默认, // 穿戴, // 工具 //} 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; //public ToolProperties _ToolProperties = ToolProperties.默认; 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.工具间) { bool b = MotionEngine.GetModule().HandleClick(this.gameObject.name); if (b) { 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; } } }