void Open(Tweet tweet) { if (tweet.Id == 1000) { SoundSource.Current.PlayInitialGif(); } Background.SetActive(true); _curTweet = tweet; _sprites = _tweetSpritesCollection.GetTweetSprites(tweet.ImageId); if ((_sprites != null) && (_sprites.Count > 0)) { _index = 0; _timer = 0; SetupTimedSprite(_index); } else { _sprites = null; Image.sprite = _tweetSpritesCollection.GetTweetSprite(_curTweet.Id, tweet.ImageId); } Image.enabled = true; }
public void InitTweet(TweetsFeedView2 feedView, TweetsController tweetsController, AgeController ageController, QuestController questController, Tweet tweet, bool isRoot = true) { _feedView = feedView; _tweetsController = tweetsController; _ageController = ageController; _questController = questController; Tweet = tweet; _questController.OnSenderAvatarChanged += OnSenderAvatarChanged; _questController.OnTweetImageChanged += OnTweetImageChanged; Tweet.OnMessageChanged += OnTweetMessageChanged; var senderInfo = _senderCollection.GetSenderInfo(Tweet.SenderId); Avatar.sprite = senderInfo.OverrideAvatar ? senderInfo.OverrideAvatar : senderInfo.Avatar; InitSender(senderInfo.DisplayName); MessageText.text = Tweet.Message; CommentsText.text = Tweet.CommentsCount.ToString(); UpdateLikesCount(Tweet.LikesCount); UpdateRetweetsCount(Tweet.RetweetsCount); AgeRestrictionRoot.SetActive(false); if (Tweet.ImageId == -1) { TweetImageRoot.SetActive(false); } else { TweetImageRoot.SetActive(true); TweetImage.sprite = _tweetSpritesCollection.GetTweetSprite(Tweet.Id, Tweet.ImageId); if (_tweetSpritesCollection.IsAgeRestricted(Tweet.Id, Tweet.ImageId)) { AgeRestrictionRoot.SetActive(!_ageController.IsAdult); _ageController.OnIsAdultChanged += OnIsAdultChanged; } } LayoutGroup.padding.left = isRoot ? 0 : 100; RightAreaTransform.sizeDelta = new Vector2(isRoot ? 490 : 390, RightAreaTransform.sizeDelta.y); CommentButton.gameObject.SetActive(isRoot); if (tweet.Type == TweetType.Temporary) { StartCoroutine(TempDisappearCoro()); } else { if (isRoot) { Tweet.OnCommentsCountChanged += OnCommentsCountChanged; } Tweet.OnLikesCountChanged += UpdateLikesCount; Tweet.OnRetweetsCountChanged += UpdateRetweetsCount; Tweet.OnPlayerLikeChanged += OnPlayerLikeChanged; Tweet.OnPlayerRetweetChanged += OnPlayerRetweetChanged; OnPlayerLikeChanged(Tweet.PlayerLike); OnPlayerRetweetChanged(Tweet.PlayerRetweet); } }