Transitioning data handling to Relay, so Lobby will only be responsible for the data useful for getting players into the lobby. I'm also fixing a bug where the lobby list heartbeat would never stop.
privateUserMembersm_lastChanged;// TODO: Is the following necessary to prompt an initial update, or do I need to adjust RelayUtpClient.DoUserUpdate to force all messages on the first go? (Or maybe just have some separate call to send full state as one message to start with? Although it should only be name...) = (UserMembers)(-1); // All values are set as changed to begin with, for initial updates.
DoUserUpdate(m_networkDriver,conn);// TODO: Hmm...I don't think this ends up working if the host has to manually transmit changes over all connections.
// When a new client connects, they need to be updated with the current state of everyone else.
// (We can't exclude this client from the events we send to it, since we don't have its ID in strm, but it will ignore messages about itself on arrival.)
List<UIPanelBase>m_uiPanelsInChildren=newList<UIPanelBase>();// Otherwise, when this Shows/Hides, the children won't know to update their own visibility.
publicvoidStart()
{
varchildren=GetComponentsInChildren<UIPanelBase>(true);// Note that this won't detect children in GameObjects added during gameplay, if there were any.