コード例 #1
0
        public void IterateSegmentLanes(ushort segmentId,
                                        ref NetSegment segment,
                                        NetSegmentLaneHandler handler)
        {
            NetInfo segmentInfo = segment.Info;

            if (segmentInfo == null)
            {
                return;
            }

            byte laneIndex = 0;
            uint curLaneId = segment.m_lanes;

            while (laneIndex < segmentInfo.m_lanes.Length && curLaneId != 0u)
            {
                NetInfo.Lane laneInfo = segmentInfo.m_lanes[laneIndex];
                handler(
                    curLaneId,
                    ref Singleton <NetManager> .instance.m_lanes.m_buffer[curLaneId],
                    laneInfo,
                    segmentId,
                    ref segment,
                    laneIndex);

                curLaneId = Singleton <NetManager> .instance.m_lanes.m_buffer[curLaneId].m_nextLane;
                ++laneIndex;
            }
        }
コード例 #2
0
 public void IterateSegmentLanes(ushort segmentId, NetSegmentLaneHandler handler)
 {
     IterateSegmentLanes(
         segmentId,
         ref Singleton <NetManager> .instance.m_segments.m_buffer[segmentId],
         handler);
 }