예제 #1
0
    //-------------------------------------------------------------------------
    // 获取_tNodeInfo
    internal _tNodeInfo _getNodeInfo()
    {
        _tNodeInfo node_info = new _tNodeInfo();

        node_info.id         = mNodeId;
        node_info.state      = (byte)mNodeState;
        node_info.list_param = new List <_tNodeParamPair>();
        foreach (var k in mMapParam)
        {
            _tNodeParamPair pp;
            pp.k = k.Key;
            pp.v = k.Value;
            node_info.list_param.Add(pp);
        }

        if (mMapAllChild.Count > 0)
        {
            node_info.list_child = new List <_tNodeInfo>();

            foreach (var i in mMapAllChild)
            {
                node_info.list_child.Add(i.Value._getNodeInfo());
            }
        }
        else
        {
            node_info.list_child = null;
        }

        return(node_info);
    }
예제 #2
0
    //-------------------------------------------------------------------------
    internal void _opCreateNode(_tNodeInfo node_info, bool can_client_run = false)
    {
        if (!can_client_run)
        {
            if (mIsClient)
            {
                return;
            }
        }

        _tNodeOp node_op;

        node_op.op         = (byte)_eNodeOp.CreateNode;
        node_op.id         = node_info.id;
        node_op.state      = node_info.state;
        node_op.list_param = new List <_tNodeParamPair>();
        if (node_info.list_param != null)
        {
            foreach (var i in node_info.list_param)
            {
                node_op.list_param.Add(i);
            }
        }

        mQueNodeOp.Enqueue(node_op);
    }
예제 #3
0
파일: NodeMgr.cs 프로젝트: xubingyue/def
    //-------------------------------------------------------------------------
    internal void _opCreateNode(_tNodeInfo node_info)
    {
        _tNodeOp node_op;
        node_op.op = _eNodeOp.CreateNode;
        node_op.id = node_info.id;
        node_op.state = node_info.state;
        node_op.list_param = new List<_tNodeParamPair>();
        if (node_info.list_param != null)
        {
            foreach (var i in node_info.list_param)
            {
                node_op.list_param.Add(i);
            }
        }

        mQueNodeOp.Enqueue(node_op);
    }
예제 #4
0
파일: NodeMgr.cs 프로젝트: yinlei/GF.Core
    //-------------------------------------------------------------------------
    internal void _opCreateNode(_tNodeInfo node_info, bool can_client_run = false)
    {
        if (!can_client_run) if (mIsClient) return;

        _tNodeOp node_op;
        node_op.op = (byte)_eNodeOp.CreateNode;
        node_op.id = node_info.id;
        node_op.state = node_info.state;
        node_op.list_param = new List<_tNodeParamPair>();
        if (node_info.list_param != null)
        {
            foreach (var i in node_info.list_param)
            {
                node_op.list_param.Add(i);
            }
        }

        mQueNodeOp.Enqueue(node_op);
    }
예제 #5
0
파일: Node.cs 프로젝트: yinlei/Fishing
    //-------------------------------------------------------------------------
    // 获取_tNodeInfo
    internal _tNodeInfo _getNodeInfo()
    {
        _tNodeInfo node_info = new _tNodeInfo();
        node_info.id = mNodeId;
        node_info.state = (byte)mNodeState;
        node_info.list_param = new List<_tNodeParamPair>();
        foreach (var k in mMapParam)
        {
            _tNodeParamPair pp;
            pp.k = k.Key;
            pp.v = k.Value;
            node_info.list_param.Add(pp);
        }

        if (mMapAllChild.Count > 0)
        {
            node_info.list_child = new List<_tNodeInfo>();

            foreach (var i in mMapAllChild)
            {
                node_info.list_child.Add(i.Value._getNodeInfo());
            }
        }
        else
        {
            node_info.list_child = null;
        }

        return node_info;
    }