ChatNetworkManager.cs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. using UnityEngine;
  2. /*
  3. Documentation: https://mirror-networking.gitbook.io/docs/components/network-manager
  4. API Reference: https://mirror-networking.com/docs/api/Mirror.NetworkManager.html
  5. */
  6. namespace Mirror.Examples.Chat
  7. {
  8. [AddComponentMenu("")]
  9. public class ChatNetworkManager : NetworkManager
  10. {
  11. // Called by UI element NetworkAddressInput.OnValueChanged
  12. public void SetHostname(string hostname)
  13. {
  14. networkAddress = hostname;
  15. }
  16. public override void OnServerDisconnect(NetworkConnectionToClient conn)
  17. {
  18. // remove player name from the HashSet
  19. if (conn.authenticationData != null)
  20. Player.playerNames.Remove((string)conn.authenticationData);
  21. // remove connection from Dictionary of conn > names
  22. ChatUI.connNames.Remove(conn);
  23. base.OnServerDisconnect(conn);
  24. }
  25. public override void OnClientDisconnect()
  26. {
  27. base.OnClientDisconnect();
  28. LoginUI.instance.gameObject.SetActive(true);
  29. LoginUI.instance.usernameInput.text = "";
  30. LoginUI.instance.usernameInput.ActivateInputField();
  31. }
  32. }
  33. }