public override void OnServerConnect(NetworkConnection conn) { base.OnServerConnect (conn); foreach (string u in users) { MyMessages.UserMessage um = new MyMessages.UserMessage (); um.user = u; um.connected = true; NetworkServer.SendToClient (conn.connectionId, (short) MyMessages.MyMessageTypes.USER_INFO, um); } Debug.Log ("new client's users updated"); }
//sends disconnect notification to server void sendUserDisconnect() { MyMessages.UserMessage umsg = new MyMessages.UserMessage (); umsg.user = userName; umsg.connected = false; NetworkManager.singleton.client.Send ((short)MyMessages.MyMessageTypes.USER_INFO, umsg); }
private void OnServerUserInfo(NetworkMessage netMsg) { var msg = netMsg.ReadMessage<MyMessages.UserMessage> (); MyMessages.UserMessage um = new MyMessages.UserMessage (); if (msg.connected && !users.Contains (msg.user)) { this.users.Add (msg.user); Debug.Log ("user added to host"); } else if (!msg.connected && users.Contains (msg.user)) { this.users.Remove (msg.user); Debug.Log ("user removed from host"); } else { Debug.Log ("nothing happened at host"); } um.user = msg.user; um.connected = msg.connected; // Debug.Log (um.users); NetworkServer.SendToAll((short) MyMessages.MyMessageTypes.USER_INFO, um); }