示例#1
0
    protected bool Select(GameObject target)
    {
        if (!target)
        {
            return(false);
        }

        Deselect();

        var selectable = target.GetComponent <IPlayerSelectable> ();

        if (selectable == null)
        {
            return(false);
        }

        m_selectedGameObject = target;
        m_selectable         = selectable;
        m_selectable.OnSelect();

        m_draggable = m_selectedGameObject.GetComponent <IPlayerDraggable> ();

        if (m_draggable != null)
        {
            m_draggable.OnDragStart();
        }

        return(true);
    }
示例#2
0
    protected void Deselect()
    {
        if (m_selectedGameObject)
        {
            if (m_draggable != null)
            {
                m_draggable.OnDragEnd();
                m_draggable = null;
            }

            m_selectable.OnDeselect();
            m_selectable         = null;
            m_selectedGameObject = null;
        }
    }