Ghost roles: rule stuff (#5252)

* Ghost roles: Make the rules harder to miss

* Fix markup handling in ghost rule rules

* Apply suggestions
This commit is contained in:
20kdc
2021-11-12 04:23:06 +00:00
committed by GitHub
parent c5b26bcc80
commit baf4904060
4 changed files with 24 additions and 1 deletions

View File

@@ -5,6 +5,7 @@
<RichTextLabel Name="Title" VerticalExpand="True"/>
<Button Name="RequestButton"
Text="{Loc 'ghost-roles-window-request-role-button'}"
Disabled="True"
TextAlign="Center"
HorizontalAlignment="Center"
VerticalAlignment="Center" />

View File

@@ -4,17 +4,35 @@ using Robust.Client.AutoGenerated;
using Robust.Client.UserInterface.Controls;
using Robust.Client.UserInterface.CustomControls;
using Robust.Client.UserInterface.XAML;
using Robust.Shared.Localization;
using Robust.Shared.Timing;
using Robust.Shared.Utility;
namespace Content.Client.Ghost.Roles.UI
{
[GenerateTypedNameReferences]
public partial class GhostRoleRulesWindow : SS14Window
{
private float _timer = 5.0f;
public GhostRoleRulesWindow(string rules, Action<BaseButton.ButtonEventArgs> requestAction)
{
RobustXamlLoader.Load(this);
Title.SetMessage(rules);
Title.SetMessage(FormattedMessage.FromMarkupPermissive(rules + "\n" + Loc.GetString("ghost-roles-window-rules-footer")));
RequestButton.OnPressed += requestAction;
}
protected override void FrameUpdate(FrameEventArgs args)
{
base.FrameUpdate(args);
if (!RequestButton.Disabled) return;
if (_timer > 0.0)
{
_timer -= args.DeltaSeconds;
}
else
{
RequestButton.Disabled = false;
}
}
}
}

View File

@@ -8,3 +8,5 @@ ghost-target-window-current-button = Warp: {$name}
ghost-roles-window-title = Ghost Roles
ghost-roles-window-request-role-button = Request
ghost-roles-window-no-roles-available-label = There are currently no available ghost roles.
ghost-roles-window-rules-footer = The button will enable after 5 seconds (this delay is to make sure you read the rules).

View File

@@ -1,3 +1,5 @@
# also used in MakeGhostRuleWindow and MakeGhostRoleCommand
ghost-role-component-default-rules = You don't remember any of your previous life unless an administrator tells you otherwise.
You are allowed to remember knowledge about the game in general, such as how to cook, how to use objects, etc.
You are absolutely [color=red]NOT[/color] allowed to remember, say, the name, appearance, etc. of your previous character.