1
0
mirror of https://github.com/ppy/osu.git synced 2025-01-14 02:22:56 +08:00

Add remaining options

This commit is contained in:
Drew DeVault 2016-11-03 00:43:05 -04:00
parent c7fa0a5ab0
commit 1d8c6db0a7
8 changed files with 186 additions and 0 deletions

View File

@ -0,0 +1,29 @@
using System;
using osu.Framework.Graphics;
using osu.Framework.Graphics.UserInterface;
namespace osu.Game.Overlays.Options
{
public class AlertsPrivacyOptions : OptionsSubsection
{
public AlertsPrivacyOptions()
{
// TODO: this should probably be split into Alerts and Privacy
Header = "Alerts & Privacy";
Children = new Drawable[]
{
new BasicCheckBox { LabelText = "Chat ticker" },
new BasicCheckBox { LabelText = "Automatically hide chat during gameplay" },
new BasicCheckBox { LabelText = "Show a notification popup when someone says your name" },
new BasicCheckBox { LabelText = "Show chat message notifications" },
new BasicCheckBox { LabelText = "Play a sound when someone says your name" },
new BasicCheckBox { LabelText = "Share your city location with others" },
new BasicCheckBox { LabelText = "Show spectators" },
new BasicCheckBox { LabelText = "Automatically link beatmaps to spectators" },
new BasicCheckBox { LabelText = "Show notification popups instantly during gameplay" },
new BasicCheckBox { LabelText = "Show notification popups when friends change status" },
new BasicCheckBox { LabelText = "Allow multiplayer game invites from all users" },
};
}
}
}

View File

@ -0,0 +1,31 @@
using System;
using osu.Framework.Graphics;
using osu.Framework.Graphics.UserInterface;
namespace osu.Game.Overlays.Options
{
public class EditorOptions : OptionsSection
{
public EditorOptions()
{
Header = "Editor";
Children = new Drawable[]
{
new OptionsSubsection
{
Header = "General",
Children = new Drawable[]
{
new BasicCheckBox { LabelText = "Background video" },
new BasicCheckBox { LabelText = "Always use default skin" },
new BasicCheckBox { LabelText = "Snaking sliders" },
new BasicCheckBox { LabelText = "Hit animations" },
new BasicCheckBox { LabelText = "Follow points" },
new BasicCheckBox { LabelText = "Stacking" },
}
}
};
}
}
}

View File

@ -0,0 +1,26 @@
using System;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Sprites;
using osu.Framework.Graphics.UserInterface;
namespace osu.Game.Overlays.Options
{
public class InGameChatOptions : OptionsSubsection
{
public InGameChatOptions()
{
Header = "In-game Chat";
Children = new Drawable[]
{
new BasicCheckBox { LabelText = "Filter offensive words" },
new BasicCheckBox { LabelText = "Filter foreign characters" },
new BasicCheckBox { LabelText = "Log private messages" },
new BasicCheckBox { LabelText = "Block private messages from non-friends" },
new SpriteText { Text = "Chat ignore list (space-seperated list)" },
new TextBox { Height = 20, RelativeSizeAxes = Axes.X },
new SpriteText { Text = "Chat highlight words (space-seperated list)" },
new TextBox { Height = 20, RelativeSizeAxes = Axes.X },
};
}
}
}

View File

@ -0,0 +1,51 @@
using System;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Sprites;
using osu.Game.Graphics.UserInterface;
namespace osu.Game.Overlays.Options
{
public class MaintenanceOptions : OptionsSection
{
public MaintenanceOptions()
{
Header = "Maintenance";
Children = new Drawable[]
{
new OptionsSubsection
{
Header = "General",
Children = new Drawable[]
{
new OsuButton
{
RelativeSizeAxes = Axes.X,
Text = "Delete all unranked maps",
},
new OsuButton
{
RelativeSizeAxes = Axes.X,
Text = "Repair folder permissions",
},
new OsuButton
{
RelativeSizeAxes = Axes.X,
Text = "Mark all maps as played",
},
new OsuButton
{
RelativeSizeAxes = Axes.X,
Text = "Run osu! updater",
},
new SpriteText
{
Text = "TODO: osu version here",
Anchor = Anchor.TopCentre,
Origin = Anchor.TopCentre,
},
}
}
};
}
}
}

View File

@ -0,0 +1,21 @@
using System;
using osu.Framework.Graphics;
using osu.Framework.Graphics.UserInterface;
namespace osu.Game.Overlays.Options
{
public class OnlineIntegrationOptions : OptionsSubsection
{
public OnlineIntegrationOptions()
{
Header = "Integration";
Children = new Drawable[]
{
new BasicCheckBox { LabelText = "Integrate with Yahoo! status display" },
new BasicCheckBox { LabelText = "Integrate with MSN Live status display" },
new BasicCheckBox { LabelText = "Automatically start osu!direct downloads" },
new BasicCheckBox { LabelText = "Prefer no-video downloads" },
};
}
}
}

View File

@ -0,0 +1,19 @@
using System;
using osu.Framework.Graphics;
namespace osu.Game.Overlays.Options
{
public class OnlineOptions : OptionsSection
{
public OnlineOptions()
{
Header = "Online";
Children = new Drawable[]
{
new AlertsPrivacyOptions(),
new OnlineIntegrationOptions(),
new InGameChatOptions(),
};
}
}
}

View File

@ -87,6 +87,9 @@ namespace osu.Game.Overlays
new AudioOptions(),
new SkinOptions(),
new InputOptions(),
new EditorOptions(),
new OnlineOptions(),
new MaintenanceOptions(),
}
}
}

View File

@ -219,6 +219,12 @@
<Compile Include="Overlays\Options\MouseOptions.cs" />
<Compile Include="Overlays\Options\KeyboardOptions.cs" />
<Compile Include="Overlays\Options\OtherInputOptions.cs" />
<Compile Include="Overlays\Options\EditorOptions.cs" />
<Compile Include="Overlays\Options\OnlineOptions.cs" />
<Compile Include="Overlays\Options\AlertsPrivacyOptions.cs" />
<Compile Include="Overlays\Options\OnlineIntegrationOptions.cs" />
<Compile Include="Overlays\Options\InGameChatOptions.cs" />
<Compile Include="Overlays\Options\MaintenanceOptions.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="$(SolutionDir)\osu-framework\osu.Framework\osu.Framework.csproj">