2016-11-09 11:38:40 +08:00
|
|
|
|
using osu.Framework;
|
|
|
|
|
using osu.Framework.Graphics;
|
2016-11-03 12:43:05 +08:00
|
|
|
|
using osu.Framework.Graphics.Sprites;
|
|
|
|
|
using osu.Framework.Graphics.UserInterface;
|
2016-11-09 11:38:40 +08:00
|
|
|
|
using osu.Game.Configuration;
|
2016-11-03 12:43:05 +08:00
|
|
|
|
|
2016-11-08 10:24:41 +08:00
|
|
|
|
namespace osu.Game.Overlays.Options.Online
|
2016-11-03 12:43:05 +08:00
|
|
|
|
{
|
|
|
|
|
public class InGameChatOptions : OptionsSubsection
|
|
|
|
|
{
|
2016-11-09 11:38:40 +08:00
|
|
|
|
protected override string Header => "In-game Chat";
|
|
|
|
|
|
2016-11-11 07:15:30 +08:00
|
|
|
|
private CheckBoxOption filterWords, filterForeign, logPMs, blockPMs;
|
|
|
|
|
private TextBoxOption chatIgnoreList, chatHighlightWords;
|
2016-11-09 11:38:40 +08:00
|
|
|
|
|
2016-11-03 12:43:05 +08:00
|
|
|
|
public InGameChatOptions()
|
|
|
|
|
{
|
|
|
|
|
Children = new Drawable[]
|
|
|
|
|
{
|
2016-11-09 11:38:40 +08:00
|
|
|
|
filterWords = new CheckBoxOption { LabelText = "Filter offensive words" },
|
|
|
|
|
filterForeign = new CheckBoxOption { LabelText = "Filter foreign characters" },
|
|
|
|
|
logPMs = new CheckBoxOption { LabelText = "Log private messages" },
|
|
|
|
|
blockPMs = new CheckBoxOption { LabelText = "Block private messages from non-friends" },
|
2016-11-03 12:43:05 +08:00
|
|
|
|
new SpriteText { Text = "Chat ignore list (space-seperated list)" },
|
2016-11-11 07:15:30 +08:00
|
|
|
|
chatIgnoreList = new TextBoxOption { Height = 20, RelativeSizeAxes = Axes.X },
|
2016-11-03 12:43:05 +08:00
|
|
|
|
new SpriteText { Text = "Chat highlight words (space-seperated list)" },
|
2016-11-11 07:15:30 +08:00
|
|
|
|
chatHighlightWords = new TextBoxOption { Height = 20, RelativeSizeAxes = Axes.X },
|
2016-11-03 12:43:05 +08:00
|
|
|
|
};
|
2016-11-09 11:38:40 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
protected override void Load(BaseGame game)
|
|
|
|
|
{
|
|
|
|
|
base.Load(game);
|
|
|
|
|
var osuGame = game as OsuGameBase;
|
|
|
|
|
if (osuGame != null)
|
|
|
|
|
{
|
|
|
|
|
filterWords.Bindable = osuGame.Config.GetBindable<bool>(OsuConfig.ChatFilter);
|
|
|
|
|
filterForeign.Bindable = osuGame.Config.GetBindable<bool>(OsuConfig.ChatRemoveForeign);
|
|
|
|
|
logPMs.Bindable = osuGame.Config.GetBindable<bool>(OsuConfig.LogPrivateMessages);
|
|
|
|
|
blockPMs.Bindable = osuGame.Config.GetBindable<bool>(OsuConfig.BlockNonFriendPM);
|
2016-11-11 07:15:30 +08:00
|
|
|
|
chatIgnoreList.Bindable = osuGame.Config.GetBindable<string>(OsuConfig.IgnoreList);
|
|
|
|
|
chatHighlightWords.Bindable = osuGame.Config.GetBindable<string>(OsuConfig.HighlightWords);
|
2016-11-09 11:38:40 +08:00
|
|
|
|
}
|
2016-11-03 12:43:05 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|