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)); }
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); }