Exemplo n.º 1
0
        public void DeinitTweet()
        {
            _feedView  = null;
            ReplyShown = false;
            if (Tweet != null)
            {
                if (Tweet.Type == TweetType.Temporary)
                {
                    StopAllCoroutines();
                    _tweetsController.RemoveTweet(Tweet);
                }
                Tweet.OnCommentsCountChanged -= OnCommentsCountChanged;
                Tweet.OnLikesCountChanged    -= UpdateLikesCount;
                Tweet.OnRetweetsCountChanged -= UpdateRetweetsCount;
                Tweet.OnMessageChanged       -= OnTweetMessageChanged;
                Tweet.OnPlayerLikeChanged    -= OnPlayerLikeChanged;
                Tweet.OnPlayerRetweetChanged -= OnPlayerRetweetChanged;

                Tweet = null;

                _questController.OnSenderAvatarChanged -= OnSenderAvatarChanged;
                _questController.OnTweetImageChanged   -= OnTweetImageChanged;

                _ageController.OnIsAdultChanged -= OnIsAdultChanged;
            }
        }
Exemplo n.º 2
0
        public void InitTweet(Tweet mainTweet, TweetsFeedView2 feedView)
        {
            TryCommonInit();

            _mainTweet = mainTweet;
            _feedView  = feedView;

            InputField.text = string.Empty;
        }
Exemplo n.º 3
0
        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);
            }
        }
Exemplo n.º 4
0
 public void InitReply(Tweet tweet, TweetsFeedView2 feedView)
 {
     TweetRoot.SetActive(false);
     ReplyRoot.SetActive(true);
     PlayerCommentView.InitTweet(tweet, feedView);
 }