Example #1
0
        public override void _Ready()
        {
            _creditsRichText = GetNode <RichTextLabel>("CreditsContainer/CenterContainer/VBoxContainer/Credits");

            // make sure bbcode is enabled & set the credits value
            _creditsRichText.BbcodeEnabled = true;
            _creditsRichText.SetBbcode(Game.Autoload().Credits);
            _creditsRichText.Connect("meta_clicked", this, nameof(Clicked));

            _linkSeek     = _creditsRichText.GetVisibleLineCount();
            _maxSeekLines = _creditsRichText.GetLineCount() - 1;

            // was trying to use scrolling credits, but it sucked.
//            _creditsTimer = GetNode<Timer>("CreditsTimer");
//            _creditsTimer.Connect("timeout", this, nameof(ScrollCredits));
        }
Example #2
0
        public void Init(Tweet tweetToSet)
        {
            tweet = tweetToSet;
            //TODO: handle image
            name.SetText(tweet.user.name);
            displayName.SetText($"@{tweet.user.screen_name}");
            SetTimeSincePosting();
            var randomReplyCount = new Random().Next(0, tweet.user.followers_count / 50);

            replies.SetText(randomReplyCount > 0 ? randomReplyCount.ToString() : "");
            retweets.SetText(tweet.retweet_count.ToString());
            likes.SetText(tweetToSet.favorite_count.ToString());
            SetAvatar();


            var bbCode = tweet.text;

            foreach (var hashTag in tweet.entities.hashtags)
            {
                bbCode = bbCode.Insert(bbCode.ToLower().IndexOf("#" + hashTag.text.ToLower(), StringComparison.Ordinal), "[color=#1a95e0]");
                bbCode = bbCode.Insert(bbCode.ToLower().IndexOf("#" + hashTag.text.ToLower(), StringComparison.Ordinal) + ("#" + hashTag.text.ToLower()).Length, "[/color]");
            }

            foreach (var url in tweet.entities.urls)
            {
                bbCode = bbCode.Insert(bbCode.ToLower().IndexOf(url.url.ToLower(), StringComparison.Ordinal), "[color=#1a95e0][url]");
                bbCode = bbCode.Insert(bbCode.ToLower().IndexOf(url.url.ToLower(), StringComparison.Ordinal) + url.url.ToLower().Length, "[/url][/color]");
            }

            foreach (var mention in tweet.entities.user_mentions)
            {
                bbCode = bbCode.Insert(bbCode.ToLower().IndexOf(("@" + mention.screen_name).ToLower(), StringComparison.Ordinal), "[color=#1a95e0]");
                bbCode = bbCode.Insert(bbCode.ToLower().IndexOf(("@" + mention.screen_name).ToLower(), StringComparison.Ordinal) + ("@" + mention.screen_name).ToLower().Length, "[/color]");
            }

            text.SetBbcode(bbCode);
        }