protected virtual void onMembershipDataUpdated(MembershipData membershipData) { DataEntityHandle entityByComponent = dataEntityCollection.GetEntityByComponent(membershipData); int poolIndexFromHandle = getPoolIndexFromHandle(entityByComponent); if (poolIndexFromHandle >= 0 && pooledScrollRect.IsIndexCellVisible(poolIndexFromHandle)) { AbstractPlayerListItem component = pooledScrollRect.GetCellAtIndex(poolIndexFromHandle).GetComponent <AbstractPlayerListItem>(); component.SetMembershipType(getMembershipType(entityByComponent)); } }
private void onImageReady(DataEntityHandle handle, Texture2D icon) { int poolIndexFromHandle = getPoolIndexFromHandle(handle); if (poolIndexFromHandle >= 0 && pooledScrollRect.IsIndexCellVisible(poolIndexFromHandle)) { AbstractPlayerListItem component = pooledScrollRect.GetCellAtIndex(poolIndexFromHandle).GetComponent <AbstractPlayerListItem>(); component.SetPreloaderActive(isActive: false); component.SetAvatarIcon(icon); component.SetAvatarIconActive(isActive: true); } }
protected virtual void onProfileDataUpdated(ProfileData profileData) { DataEntityHandle entityByComponent = dataEntityCollection.GetEntityByComponent(profileData); int poolIndexFromHandle = getPoolIndexFromHandle(entityByComponent); if (poolIndexFromHandle >= 0 && pooledScrollRect.IsIndexCellVisible(poolIndexFromHandle)) { string displayName = dataEntityCollection.GetComponent <DisplayNameData>(entityByComponent).DisplayName; AbstractPlayerListItem component = pooledScrollRect.GetCellAtIndex(poolIndexFromHandle).GetComponent <AbstractPlayerListItem>(); bool flag = getIsOnline(entityByComponent) || !ShowPlayerOfflineState; component.SetOnlineStatus(flag); component.UpdateProfileData(profileData); renderPlayer(component, entityByComponent, displayName, flag); } }
protected virtual void onObjectRemoved(RectTransform item, int poolIndex) { AbstractPlayerListItem component = item.GetComponent <AbstractPlayerListItem>(); component.Reset(); DataEntityHandle handleFromPoolIndex = getHandleFromPoolIndex(poolIndex); if (!handleFromPoolIndex.IsNull) { string displayName = dataEntityCollection.GetComponent <DisplayNameData>(handleFromPoolIndex).DisplayName; if (playerAvatarRenderer.IsRenderInProgress(displayName)) { playerAvatarRenderer.CancelRender(displayName); } } }
protected virtual void setUpObject(RectTransform item, int poolIndex) { AbstractPlayerListItem component = item.GetComponent <AbstractPlayerListItem>(); DataEntityHandle handleFromPoolIndex = getHandleFromPoolIndex(poolIndex); AbstractPlayerListItem component2 = item.GetComponent <AbstractPlayerListItem>(); string displayName2 = (component2.Name = dataEntityCollection.GetComponent <DisplayNameData>(handleFromPoolIndex).DisplayName); component2.SetPlayer(handleFromPoolIndex); ProfileData component3; bool flag = dataEntityCollection.TryGetComponent <ProfileData>(handleFromPoolIndex, out component3); if (!flag) { Service.Get <OtherPlayerDetailsRequestBatcher>().RequestOtherPlayerDetails(handleFromPoolIndex); } if (flag) { bool flag2 = getIsOnline(handleFromPoolIndex) || !ShowPlayerOfflineState; component.SetOnlineStatus(flag2); renderPlayer(component, handleFromPoolIndex, displayName2, flag2); } }
protected void renderPlayer(AbstractPlayerListItem playerListItem, DataEntityHandle handle, string displayName, bool isOnline) { if (!playerListItem.IsRendered) { playerListItem.IsRendered = true; playerListItem.SetPreloaderActive(isActive: true); playerListItem.SetAvatarIconActive(isActive: false); if (playerAvatarRenderer.IsRenderInProgress(displayName)) { playerAvatarRenderer.CancelRender(displayName); } if (isOnline) { AvatarAnimationFrame avatarAnimationFrame = new AvatarAnimationFrame(IdlePenguinState, 0.5f); playerAvatarRenderer.RequestImage(handle, avatarAnimationFrame, "FriendsListIdle"); } else { AvatarAnimationFrame avatarAnimationFrame = new AvatarAnimationFrame(SleepingPenguinState, 0.75f); playerAvatarRenderer.RequestImage(handle, avatarAnimationFrame, "FriendsListSleeping"); } } }