public void RefershFriends() { Log("Refreshing Friends"); int friendsCount = SteamFriends.GetFriendCount(EFriendFlags.k_EFriendFlagImmediate); if (friendsCount == -1) { LogError("Friendcount == -1, user isn't logged into steam"); return; } /* * First we are going to sort the list into four sections * Friends playing vtol vr * Friends in game * Friends online * Friends offline */ CSteamID lastFriendID; List <CSteamID> vtolvrFriends = new List <CSteamID>(); Log("Getting all friends"); for (int i = 0; i < friendsCount; i++) { lastFriendID = SteamFriends.GetFriendByIndex(i, EFriendFlags.k_EFriendFlagImmediate); if (SteamFriends.GetFriendGamePlayed(lastFriendID, out FriendGameInfo_t gameInfo)) { if (gameInfo.m_gameID.AppID().m_AppId == 667970) { //User is in VTOLVR vtolvrFriends.Add(lastFriendID); continue; } } } Log("Adding friends to list"); //Now we want to create the ingame list friendsTemplate.SetActive(true); GameObject lastFriendGO; VRUIListItemTemplate uiListItem; int totalFriends = 0; lableVTOL.transform.localPosition = new Vector3(0, -totalFriends * buttonHeight); for (int i = 0; i < vtolvrFriends.Count; i++) { totalFriends++; lastFriendGO = Instantiate(friendsTemplate, content.transform); steamFriends.Add(new FriendItem(vtolvrFriends[i], lastFriendGO.transform)); lastFriendGO.transform.localPosition = new Vector3(0f, -totalFriends * buttonHeight); uiListItem = lastFriendGO.GetComponent <VRUIListItemTemplate>(); uiListItem.Setup(SteamFriends.GetFriendPersonaName(vtolvrFriends[i]), totalFriends - 1, SelectFriend); uiListItem.labelText.color = Color.green; } Log("Updating Scroll Rect"); scrollRect.content.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, (2f + steamFriends.Count) * buttonHeight); scrollRect.ClampVertical(); JoinButton.SetActive(false); friendsTemplate.SetActive(false); Log("Refreahing Interactables"); GameObject.Find("InteractableCanvas").GetComponent <VRPointInteractableCanvas>().RefreshInteractables(); Log($"Total Friends:{totalFriends} In VTOLVR:{vtolvrFriends.Count}"); Networker.ResetNetworkUID(); }