コード例 #1
0
    //////////////////////////////////////////////////////////////////////////
    public void PropagateEvent(EventSystemManagerBase.Event e)
    {
        if (m_Lock)
        {
            return;
        }

        m_Lock = true;
        {
            foreach (var n in m_Filters)
            {
                if (n.Check(e) == false)
                {
                    return;
                }
            }

            foreach (var n in m_Recivers)
            {
                n.iProcess(e);
            }

            foreach (var n in m_PropagationNodes)
            {
                n.PropagateEvent(e);
            }
        }
        m_Lock = false;
    }
コード例 #2
0
    //////////////////////////////////////////////////////////////////////////
    public override void Send(EventSystemManagerBase.Event e)
    {
        if (e == null)
        {
            return;
        }

        foreach (var n in m_Listners)
        {
            n.iProcess(e);
        }
    }
コード例 #3
0
    public override void Send(EventSystemManagerBase.Event e)
    {
        if (e == null)
        {
            return;
        }

        foreach (var n in m_PropagationNodes)
        {
            n?.PropagateEvent(e);
        }

        base.Send(e);
    }
コード例 #4
0
 public override void iProcess(EventSystemManagerBase.Event e)
 {
     Debug.Log(gameObject.name);
 }
コード例 #5
0
 public override bool Check(EventSystemManagerBase.Event e)
 {
     return(m_Open);
 }
コード例 #6
0
 public abstract void iProcess(EventSystemManagerBase.Event e);
コード例 #7
0
 public abstract bool Check(EventSystemManagerBase.Event e);