public static void DeserializeData(IEnumerable <byte> data)
        {
            var nm    = Singleton <NetManager> .instance;
            var nodes = nm.m_nodes;

            int i = 0;

            foreach (var hasLights in data.Select(Convert.ToBoolean))
            {
                var node = nodes.m_buffer[i];
                if (hasLights)
                {
                    //this if is utterly unnecessary...
                    if (!ToggleTrafficLightsTool.HasTrafficLights(node.m_flags))
                    {
                        node.m_flags |= NetNode.Flags.TrafficLights;
                    }
                }
                else //(!hasLights)
                {
                    //"
                    if (ToggleTrafficLightsTool.HasTrafficLights(node.m_flags))
                    {
                        node.m_flags &= ~NetNode.Flags.TrafficLights;
                    }
                }

                nodes.m_buffer[i] = node;

                i++;
            }
        }
 public static IEnumerable <byte> SerializeData()
 {
     return(Singleton <NetManager> .instance.m_nodes.m_buffer
            .Select(n => ToggleTrafficLightsTool.HasTrafficLights(n.m_flags))
            .Select(Convert.ToByte));
 }