Ejemplo n.º 1
0
    void selectNext(bool right)
    {
        float           x     = right ? float.MaxValue : float.MinValue;
        float           start = m_selected != null ? m_selected.transform.position.x : right ? float.MinValue : float.MaxValue;
        SelectableLogic best  = m_selected;

        foreach (var selectable in m_selectables)
        {
            var sX = selectable.transform.position.x;
            if (right && sX > start && sX < x)
            {
                x    = sX;
                best = selectable;
            }
            if (!right && sX < start && sX > x)
            {
                x    = sX;
                best = selectable;
            }
        }

        if (m_selected != null)
        {
            m_selected.deselect();
        }
        m_selected = best;
        if (m_selected != null)
        {
            m_selected.select();
        }
    }
Ejemplo n.º 2
0
 public static void exit(SelectableLogic selectable)
 {
     if (m_selected == selectable)
     {
         m_selected = null;
     }
 }
Ejemplo n.º 3
0
 public static void enter(SelectableLogic selectable)
 {
     if (m_selected != null)
     {
         m_selected.deselect();
     }
     m_selected = selectable;
 }
Ejemplo n.º 4
0
 public static void remove(SelectableLogic selectable)
 {
     m_selectables.Remove(selectable);
 }
Ejemplo n.º 5
0
 public static void add(SelectableLogic selectable)
 {
     m_selectables.Add(selectable);
 }