public static void OnLobbyChatUpdate(LobbyChatUpdate_t pCallback) { switch ((uint)pCallback.m_rgfChatMemberStateChange) { case (uint)EChatMemberStateChange.k_EChatMemberStateChangeEntered: Logger.Debug($"{pCallback.m_ulSteamIDMakingChange} has joined the lobby"); SteamAPI.PlayerConnected(); break; case (uint)EChatMemberStateChange.k_EChatMemberStateChangeDisconnected: case (uint)EChatMemberStateChange.k_EChatMemberStateChangeLeft: Logger.Debug($"{pCallback.m_ulSteamIDMakingChange} has left the lobby"); SteamAPI.DisconnectPlayer(pCallback.m_ulSteamIDMakingChange); break; case (uint)EChatMemberStateChange.k_EChatMemberStateChangeBanned: Logger.Debug($"{pCallback.m_ulSteamIDMakingChange} banned {pCallback.m_ulSteamIDUserChanged} from the lobby"); SteamAPI.DisconnectPlayer(pCallback.m_ulSteamIDUserChanged); break; case (uint)EChatMemberStateChange.k_EChatMemberStateChangeKicked: Logger.Debug($"{pCallback.m_ulSteamIDMakingChange} kicked {pCallback.m_ulSteamIDUserChanged} from the lobby"); SteamAPI.DisconnectPlayer(pCallback.m_ulSteamIDUserChanged); break; } }