Exemplo n.º 1
0
    public void RunNetObjTick(string name, float repeatTime, MyAction <object[]> action, object[] param)
    {
        if (repeatTime <= 0)
        {
            return;
        }
        NetObjTick netObjTick = null;

        if (m_NetObjTicks.TryGetValue(name, out netObjTick))
        {
            //Debug.Log("tick " + name + " already running!");
            netObjTick.SetTickActionAndParam(action, param);
            return;
        }

        if (m_NetObjTickMangerObj == null)
        {
            m_NetObjTickMangerObj = new GameObject("NetObjTickManger");
            GameObject.DontDestroyOnLoad(m_NetObjTickMangerObj);
        }

        netObjTick = m_NetObjTickMangerObj.AddComponent <NetObjTick>();
        m_NetObjTicks.Add(name, netObjTick);
        netObjTick.RunTick(repeatTime, action, param);
    }
Exemplo n.º 2
0
    public void StopNetObjTick(string name)
    {
        NetObjTick netObjTick = null;

        if (!m_NetObjTicks.TryGetValue(name, out netObjTick))
        {
            //Debug.Log("Did not have tick " + name);
            return;
        }

        m_NetObjTicks.Remove(name);
        if (netObjTick == null)
        {
            return;
        }
        netObjTick.StopAllCoroutines();
        GameObject.Destroy(netObjTick);
        //GameObject.DestroyImmediate(netObjTick);
    }