summaryrefslogtreecommitdiff
path: root/Config.cs
blob: eedd19c3638c6fdb9868a6848e9d79780566840d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
using SharpPluginLoader.Core.Configuration;
using SharpPluginLoader.Core.IO;

namespace MHWNewCamera
{
    internal class Config : IConfig
    {
        public struct Binds
        {
            public Binds()
            {
                ToggleFreeCamera = Key.NumPad0;
                TogglePerspectiveCamera = Key.NumPadPeriod;
                /*
                IncreaseSpeed = Key.NumPadPlus;
                DecreaseSpeed = Key.NumPadMinus;
                IncreaseFOV = Key.PageUp;
                DecreaseFOV = Key.PageDown;
                Forward = Key.Up;
                Backward = Key.Down;
                Left = Key.Left;
                Right = Key.Right;
                Up = Key.NumPad4;
                Down = Key.NumPad1;
                */
            }
            public Key ToggleFreeCamera { get; set; }
            public Key TogglePerspectiveCamera { get; set; }
            /*
            public Key IncreaseSpeed { get; set; }
            public Key DecreaseSpeed { get; set; }
            public Key IncreaseFOV { get; set; }
            public Key DecreaseFOV { get; set; }
            public Key Forward { get; set; }
            public Key Backward { get; set; }
            public Key Up { get; set; }
            public Key Down { get; set; }
            public Key Left { get; set; }
            public Key Right { get; set; }
            */
        }

        public struct Settings
        {
            public Settings()
            {
                CameraSpeed = -1.0f;
                CameraKeySpeed = -1.0f;
                CameraSpeedModifier = -1.0f;
                CameraSensitivity = -1.0f;
                StickDeadzone = -1;
                CameraPitchLimit = -1.0f;
            }
            public float CameraSpeed { get; set; }
            public float CameraKeySpeed { get; set; }
            public float CameraSpeedModifier { get; set; }
            public float CameraSensitivity { get; set; }
            public int StickDeadzone { get; set; }
            public float CameraPitchLimit { get; set; }
        }

        public struct Preset
        {
            public float FOV { get; set; }
            public float Forward { get; set; }
            public float Left { get; set; }
            public float Up { get; set; }
            public float Roll { get; set; }
        }

        public string Name => "MHWNewCamera";
        public string Version => "1.0.0";

        public Binds KeyboardBinds { get; set; } = new Binds();
        public Settings CameraSettings { get; set; } = new Settings();
        public bool KeyboardEnabled { get; set; } = false;
        public bool PerspectiveCameraEnabled { get; set; } = false;
        public Dictionary<string, Preset> Presets { get; set; } = new Dictionary<string, Preset>();
        public string Selected { get; set; } = "";
    }
}