]> git.localhorst.tv Git - blank.git/blob - src/app/Config.hpp
5261a44281334c180b63b0889710c867a54d8c03
[blank.git] / src / app / Config.hpp
1 #ifndef BLANK_APP_CONFIG_HPP_
2 #define BLANK_APP_CONFIG_HPP_
3
4 #include <cstdint>
5 #include <iosfwd>
6 #include <string>
7
8
9 namespace blank {
10
11 struct Config {
12
13         struct Audio {
14
15                 bool enabled = true;
16
17         } audio;
18
19         struct Input {
20
21                 bool keyboard = true;
22                 bool mouse = true;
23
24                 float pitch_sensitivity = -0.0025f;
25                 float yaw_sensitivity = -0.001f;
26
27         } input;
28
29         struct Network {
30
31                 std::string host = "localhost";
32                 std::uint16_t port = 12354;
33
34         } net;
35
36         struct Player {
37
38                 std::string name = "default";
39
40         } player;
41
42         struct Video {
43
44                 bool dblbuf = true;
45                 bool vsync = true;
46                 int msaa = 1;
47
48                 bool hud = true;
49                 bool world = true;
50                 bool debug = false;
51
52         } video;
53
54         void Load(std::istream &);
55         void Save(std::ostream &);
56
57 };
58
59 }
60
61 #endif