lessen punishment for not reading
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
<PropertyGroup>
|
||||
<Authors></Authors>
|
||||
<Company></Company>
|
||||
<Version>0.1.15.0</Version>
|
||||
<Version>0.1.16.0</Version>
|
||||
<Description></Description>
|
||||
<Copyright></Copyright>
|
||||
<PackageProjectUrl>https://github.com/Penumbra-Sync/client</PackageProjectUrl>
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Numerics;
|
||||
using System.Threading.Tasks;
|
||||
using Dalamud.Interface.Colors;
|
||||
using Dalamud.Interface.Windowing;
|
||||
using ImGuiNET;
|
||||
@@ -46,6 +47,10 @@ namespace MareSynchronos.UI
|
||||
private string _enteredDarkSoulsCaptcha2 = string.Empty;
|
||||
private string _enteredDarkSoulsCaptcha3 = string.Empty;
|
||||
|
||||
private bool _failedOnce = false;
|
||||
private Task _timeoutTask;
|
||||
private string _timeoutTime;
|
||||
|
||||
private bool DarkSoulsCaptchaValid => _darkSoulsCaptcha1.Item2 == _enteredDarkSoulsCaptcha1
|
||||
&& _darkSoulsCaptcha2.Item2 == _enteredDarkSoulsCaptcha2
|
||||
&& _darkSoulsCaptcha3.Item2 == _enteredDarkSoulsCaptcha3;
|
||||
@@ -120,13 +125,13 @@ namespace MareSynchronos.UI
|
||||
|
||||
UiShared.TextWrapped(TosParagraphs[0]);
|
||||
UiShared.TextWrapped(TosParagraphs[1]);
|
||||
UiShared.ColorTextWrapped(TosParagraphs[2], ImGuiColors.DalamudRed);
|
||||
UiShared.ColorTextWrapped(TosParagraphs[3], ImGuiColors.DalamudYellow);
|
||||
UiShared.TextWrapped(TosParagraphs[2]);
|
||||
UiShared.TextWrapped(TosParagraphs[3]);
|
||||
UiShared.TextWrapped(TosParagraphs[4]);
|
||||
UiShared.ColorTextWrapped(TosParagraphs[5], ImGuiColors.DalamudRed);
|
||||
UiShared.TextWrapped(TosParagraphs[5]);
|
||||
|
||||
ImGui.Separator();
|
||||
if (!_pluginConfiguration.DarkSoulsAgreement || DarkSoulsCaptchaValid)
|
||||
if ((!_pluginConfiguration.DarkSoulsAgreement || DarkSoulsCaptchaValid) && (_timeoutTask?.IsCompleted ?? true))
|
||||
{
|
||||
if (ImGui.Button("I agree##toSetup"))
|
||||
{
|
||||
@@ -140,6 +145,21 @@ namespace MareSynchronos.UI
|
||||
_pluginConfiguration.Save();
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!_failedOnce)
|
||||
{
|
||||
_failedOnce = true;
|
||||
_timeoutTask = Task.Run(async () =>
|
||||
{
|
||||
for (int i = 60; i > 0; i--)
|
||||
{
|
||||
_timeoutTime = $"{i}s remaining";
|
||||
Logger.Debug(_timeoutTime);
|
||||
await Task.Delay(TimeSpan.FromSeconds(1));
|
||||
}
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
_pluginConfiguration.DarkSoulsAgreement = true;
|
||||
_pluginConfiguration.Save();
|
||||
@@ -147,9 +167,19 @@ namespace MareSynchronos.UI
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (_failedOnce && (!_timeoutTask?.IsCompleted ?? true))
|
||||
{
|
||||
UiShared.ColorTextWrapped("Congratulations. You have failed to read the agreements.", ImGuiColors.DalamudYellow);
|
||||
UiShared.TextWrapped("I'm going to give you 1 minute to read the agreements carefully again. If you fail once more you will have to solve an annoying puzzle.");
|
||||
UiShared.TextWrapped(_timeoutTime);
|
||||
}
|
||||
else
|
||||
{
|
||||
UiShared.ColorTextWrapped("Congratulations. You have failed to read the agreements. Again.", ImGuiColors.DalamudYellow);
|
||||
UiShared.TextWrapped("I did warn you. Here's your annoying puzzle:");
|
||||
UiShared.TextWrapped("Enter the following 3 words from the agreement exactly as described without punctuation to make the \"I agree\" button visible again.");
|
||||
ImGui.SetNextItemWidth(100);
|
||||
ImGui.InputText(_darkSoulsCaptcha1.Item1, ref _enteredDarkSoulsCaptcha1, 255);
|
||||
@@ -159,6 +189,7 @@ namespace MareSynchronos.UI
|
||||
ImGui.InputText(_darkSoulsCaptcha3.Item1, ref _enteredDarkSoulsCaptcha3, 255);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (_pluginConfiguration.AcceptedAgreement
|
||||
&& (string.IsNullOrEmpty(_pluginConfiguration.CacheFolder)
|
||||
|| _pluginConfiguration.InitialScanComplete == false
|
||||
@@ -231,8 +262,8 @@ namespace MareSynchronos.UI
|
||||
"There is no support for custom services from the plugin creator. Use at your own risk.");
|
||||
UiShared.ColorTextWrapped("On registration on a service the plugin will create and save a secret key to your plugin configuration. " +
|
||||
"Make a backup of your secret key. In case of loss, it cannot be restored. The secret key is your identification to the service " +
|
||||
"to verify who you are. It is directly tied to the UID you will be receiving. In case of loss, you will have to re-register an account.", ImGuiColors.DalamudRed);
|
||||
UiShared.ColorTextWrapped("Do not ever, under any circumstances, share your secret key to anyone! Likewise do not share your Mare Synchronos plugin configuration to anyone!", ImGuiColors.DalamudRed);
|
||||
"to verify who you are. It is directly tied to the UID you will be receiving. In case of loss, you will have to re-register an account.", ImGuiColors.DalamudYellow);
|
||||
UiShared.ColorTextWrapped("Do not ever, under any circumstances, share your secret key to anyone! Likewise do not share your Mare Synchronos plugin configuration to anyone!", ImGuiColors.DalamudYellow);
|
||||
_uiShared.DrawServiceSelection(new Action(() => { }), true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -374,6 +374,23 @@ namespace MareSynchronos.UI
|
||||
|
||||
private string _secretKey = "";
|
||||
|
||||
public static void OutlineTextWrapped(string text, Vector4 textcolor, Vector4 outlineColor, float dist = 3)
|
||||
{
|
||||
var cursorPos = ImGui.GetCursorPos();
|
||||
UiShared.ColorTextWrapped(text, outlineColor);
|
||||
ImGui.SetCursorPos(new(cursorPos.X, cursorPos.Y + dist));
|
||||
UiShared.ColorTextWrapped(text, outlineColor);
|
||||
ImGui.SetCursorPos(new(cursorPos.X + dist, cursorPos.Y));
|
||||
UiShared.ColorTextWrapped(text, outlineColor);
|
||||
ImGui.SetCursorPos(new(cursorPos.X + dist, cursorPos.Y + dist));
|
||||
UiShared.ColorTextWrapped(text, outlineColor);
|
||||
|
||||
ImGui.SetCursorPos(new(cursorPos.X + dist / 2, cursorPos.Y + dist / 2));
|
||||
UiShared.ColorTextWrapped(text, textcolor);
|
||||
ImGui.SetCursorPos(new(cursorPos.X + dist / 2, cursorPos.Y + dist / 2));
|
||||
UiShared.ColorTextWrapped(text, textcolor);
|
||||
}
|
||||
|
||||
public static void DrawHelpText(string helpText)
|
||||
{
|
||||
ImGui.SameLine();
|
||||
|
||||
Reference in New Issue
Block a user