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)); }