Re-add Hns options as modded options

The options don't appear yet though, this needs to be fixed!
This commit is contained in:
Atony committed 2026-04-30 12:37:54 -05:00
1 parent bf7c800613
commit b0ceb129a4
4 files changed
+224

No files matched your search

@@ -0,0 +1,89 @@
using MiraAPI.GameModes;
using MiraAPI.GameOptions;
using MiraAPI.GameOptions.OptionTypes;
using MiraAPI.Utilities;
namespace MiraAPI.HnsReimplemented.Options;
/// <inheritdoc />
public class HnsCrewmateOptions : AbstractOptionGroup<HideAndSeekMode>
{
/// <inheritdoc />
public override string GroupName => "Crewmates";
public ModdedNumberOption PlayerSpeed { get; set; } = new(
"Player Speed",
1f,
0.5f,
3f,
0.25f,
"#",
"#",
MiraNumberSuffixes.Multiplier,
"0.00");
public ModdedNumberOption HidingTime { get; set; } = new(
"Hiding Time",
200,
160,
300,
20,
"#",
"#",
MiraNumberSuffixes.Seconds);
public ModdedNumberOption CrewmateVision { get; set; } = new(
"Crewmate Vision",
0.6f,
0.25f,
1,
0.05f,
"#",
"#",
MiraNumberSuffixes.Multiplier,
"0.00");
public ModdedNumberOption MaxVentUses { get; set; } = new(
"Max Vent Uses",
1,
0,
5,
1,
"#",
"#",
MiraNumberSuffixes.None);
public ModdedNumberOption MaxTimeInVent { get; set; } = new(
"Max Time in Vent",
3,
1,
10,
1,
"#",
"#",
MiraNumberSuffixes.Seconds)
{
Visible = () => (int)OptionGroupSingleton<HnsCrewmateOptions>.Instance.MaxVentUses.Value > 0,
};
public ModdedToggleOption FlashlightMode { get; set; } = new(
"Flashlight Mode",
true);
public ModdedNumberOption CrewmateFlashlightSize { get; set; } = new(
"Crewmate Flashlight Size",
0.35f,
0.1f,
0.5f,
0.05f,
"#",
"#",
MiraNumberSuffixes.Multiplier)
{
Visible = () => OptionGroupSingleton<HnsCrewmateOptions>.Instance.FlashlightMode.Value,
};
public ModdedToggleOption ShowNames { get; set; } = new(
"Show Names",
false);
}
@@ -0,0 +1,52 @@
using MiraAPI.GameModes;
using MiraAPI.GameOptions;
using MiraAPI.GameOptions.OptionTypes;
using MiraAPI.Utilities;
namespace MiraAPI.HnsReimplemented.Options;
/// <inheritdoc />
public class HnsFinalHideOptions : AbstractOptionGroup<HideAndSeekMode>
{
/// <inheritdoc />
public override string GroupName => "Final Hide";
public ModdedNumberOption FinalHideTime { get; set; } = new(
"Hiding Time",
50,
30,
120,
5,
"#",
"#",
MiraNumberSuffixes.Seconds);
public ModdedToggleOption FinalHidePings { get; set; } = new(
"Final Hide Pings",
true);
public ModdedNumberOption FinalHideImpostorSpeed { get; set; } = new(
"Final Hide Impostor Speed",
1.2f,
1f,
3,
0.05f,
"#",
"#",
MiraNumberSuffixes.Multiplier,
"0.00");
public ModdedNumberOption PingInterval { get; set; } = new(
"Ping Interval",
6,
3,
10,
5,
"#",
"#",
MiraNumberSuffixes.Seconds);
public ModdedToggleOption FinalHideSeekMap { get; set; } = new(
"Final Hide Seek Map",
true);
}
@@ -0,0 +1,40 @@
using MiraAPI.GameModes;
using MiraAPI.GameOptions;
using MiraAPI.GameOptions.OptionTypes;
using MiraAPI.Utilities;
namespace MiraAPI.HnsReimplemented.Options;
/// <inheritdoc />
public class HnsImpostorOptions : AbstractOptionGroup<HideAndSeekMode>
{
/// <inheritdoc />
public override string GroupName => "Impostors";
public ModdedPlayerOption SelectedSeeker { get; set; } = new(
"Forced Impostor");
public ModdedNumberOption ImpostorVision { get; set; } = new(
"Impostor Vision",
0.6f,
0.25f,
1,
0.05f,
"#",
"#",
MiraNumberSuffixes.Multiplier,
"0.00");
public ModdedNumberOption ImpostorFlashlightSize { get; set; } = new(
"Impostor Flashlight Size",
0.35f,
0.1f,
0.5f,
0.05f,
"#",
"#",
MiraNumberSuffixes.Multiplier)
{
Visible = () => OptionGroupSingleton<HnsCrewmateOptions>.Instance.FlashlightMode.Value,
};
}
@@ -0,0 +1,43 @@
using MiraAPI.GameModes;
using MiraAPI.GameOptions;
using MiraAPI.GameOptions.OptionTypes;
using MiraAPI.Utilities;
namespace MiraAPI.HnsReimplemented.Options;
/// <inheritdoc />
public class HnsTaskOptions : AbstractOptionGroup<HideAndSeekMode>
{
/// <inheritdoc />
public override string GroupName => "Tasks";
public ModdedNumberOption CommonTasks { get; set; } = new(
"# Common Tasks",
1,
0,
2,
1,
"#",
"#",
MiraNumberSuffixes.None);
public ModdedNumberOption LongTasks { get; set; } = new(
"# Long Tasks",
1,
0,
3,
1,
"#",
"#",
MiraNumberSuffixes.None);
public ModdedNumberOption ShortTasks { get; set; } = new(
"# Short Tasks",
2,
0,
5,
1,
"#",
"#",
MiraNumberSuffixes.None);
}