From f47ab01d4c75e1a81834e3a7b65b06092f8625dd Mon Sep 17 00:00:00 2001 From: Sanae Date: Sun, 6 Mar 2022 17:32:49 -0600 Subject: [PATCH] Make flipping a permanent setting like the others --- Server/Program.cs | 12 +++++++----- Server/Settings.cs | 2 +- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/Server/Program.cs b/Server/Program.cs index 9e15179..cf30ef3 100644 --- a/Server/Program.cs +++ b/Server/Program.cs @@ -51,7 +51,6 @@ timer.AutoReset = true; timer.Enabled = true; timer.Elapsed += (_, _) => { SyncShineBag(); }; timer.Start(); -bool flipEnabled = Settings.Instance.Flip.EnabledOnStart; float MarioSize(bool is2d) { return is2d ? 180 : 160; @@ -76,7 +75,7 @@ server.PacketHandler = (c, p) => { SyncShineBag(); break; } - case PlayerPacket playerPacket when flipEnabled + case PlayerPacket playerPacket when Settings.Instance.Flip.Enabled && Settings.Instance.Flip.Pov is FlipOptions.Both or FlipOptions.Others && Settings.Instance.Flip.Players.Contains(c.Id): { playerPacket.Position += Vector3.UnitY * MarioSize(playerPacket.Is2d); @@ -84,7 +83,9 @@ server.PacketHandler = (c, p) => { server.Broadcast(playerPacket, c); return false; } - case PlayerPacket playerPacket when flipEnabled && Settings.Instance.Flip.Pov is FlipOptions.Both or FlipOptions.Self && !Settings.Instance.Flip.Players.Contains(c.Id): { + case PlayerPacket playerPacket when Settings.Instance.Flip.Enabled + && Settings.Instance.Flip.Pov is FlipOptions.Both or FlipOptions.Self + && !Settings.Instance.Flip.Players.Contains(c.Id): { server.BroadcastReplace(playerPacket, c, (from, to, sp) => { if (Settings.Instance.Flip.Players.Contains(to.Id)) { sp.Position += Vector3.UnitY * MarioSize(playerPacket.Is2d); @@ -148,8 +149,9 @@ CommandHandler.RegisterCommand("flip", args => { } case "set" when args.Length == 2: { if (bool.TryParse(args[1], out bool result)) { - flipEnabled = result; - return result ? "Enabled player flipping for session" : "Disabled player flipping for session"; + Settings.Instance.Flip.Enabled = result; + Settings.SaveSettings(); + return result ? "Enabled player flipping" : "Disabled player flipping"; } return optionUsage; diff --git a/Server/Settings.cs b/Server/Settings.cs index 6738d62..28dd050 100644 --- a/Server/Settings.cs +++ b/Server/Settings.cs @@ -54,7 +54,7 @@ public class Settings { public class FlipTable { public List Players { get; set; } = new List(); - public bool EnabledOnStart { get; set; } = true; + public bool Enabled { get; set; } = true; public FlipOptions Pov { get; set; } = FlipOptions.Both; } } \ No newline at end of file