public MapObjectHandle GetHandle(GameObject obj)
        {
            MapObjectHandle handle = Instantiate(TaggedHandlers.FirstOrDefault(x => x.GetComponent <TaggedMapObjectHandle>().Tag == obj.tag) ?? DefaultHandler).GetComponent <MapObjectHandle>();

            handle.transform.SetParent(HandleParent);
            return(handle);
        }
        public bool Finish()
        {
            if (_handle)
            {
                _handle.OnDeselected();
                _handle = null;
            }

            OnFinished?.Invoke();
            return(true);
        }
 public void Select(MapObjectHandle handle)
 {
     _handle = handle;
     _handle.OnSelected();
 }