using System; using System.Collections.Generic; using System.Text.Json.Serialization; using Godot; public partial class SettingsFile { public int musVol = 30; public int sfxVol = 30; public int fpsMode; public bool run; public bool swapKeys; public bool autoFire; public bool fullScreen; public Key[] keys = new Key[8] { Key.Up, Key.Down, Key.Left, Key.Right, Key.Z, Key.X, Key.C, Key.Space }; [NonSerialized] [JsonIgnore] public string lang = "EnUS"; public static readonly HashSet allowed = new HashSet { Key.Up, Key.Down, Key.Left, Key.Right, Key.Shift, Key.Alt, Key.A, Key.Ctrl, Key.B, Key.C, Key.D, Key.E, Key.F, Key.G, Key.H, Key.I, Key.J, Key.K, Key.L, Key.M, Key.N, Key.O, Key.P, Key.Q, Key.R, Key.S, Key.T, Key.U, Key.V, Key.W, Key.X, Key.Y, Key.Z, Key.Key0, Key.Key1, Key.Key2, Key.Key3, Key.Key4, Key.Key5, Key.Key6, Key.Key7, Key.Key8, Key.Key9, Key.Space, Key.Slash, Key.Colon, Key.Period, Key.Tab, Key.Braceleft, Key.Braceright, Key.Bracketleft, Key.Bracketright, Key.Asterisk, Key.Apostrophe, Key.Question, Key.Exclam, Key.Quoteleft, Key.End, Key.Kp0, Key.Kp1, Key.Kp2, Key.Kp3, Key.Kp4, Key.Kp5, Key.Kp6, Key.Kp7, Key.Kp8, Key.Kp9, Key.KpAdd, Key.KpDivide, Key.KpEnter, Key.KpMultiply, Key.KpPeriod, Key.KpSubtract, Key.Underscore, Key.At, Key.Backspace, Key.Enter }; }