Antkeeper  0.0.1
controls.hpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2023 Christopher J. Howard
3  *
4  * This file is part of Antkeeper source code.
5  *
6  * Antkeeper source code is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * Antkeeper source code is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with Antkeeper source code. If not, see <http://www.gnu.org/licenses/>.
18  */
19 
20 #ifndef ANTKEEPER_GAME_CONTROLS_HPP
21 #define ANTKEEPER_GAME_CONTROLS_HPP
22 
23 #include "game/game.hpp"
24 #include <engine/utility/json.hpp>
25 #include <engine/input/gamepad.hpp>
26 #include <filesystem>
27 
28 
34 void reset_control_profile(::control_profile& profile);
35 
42 void apply_control_profile(::game& ctx, const ::control_profile& profile);
43 
50 void update_control_profile(::game& ctx, ::control_profile& profile);
51 
52 void setup_window_controls(::game& ctx);
53 void setup_menu_controls(::game& ctx);
54 void setup_game_controls(::game& ctx);
55 void setup_camera_controls(::game& ctx);
56 void setup_ant_controls(::game& ctx);
57 void setup_debug_controls(::game& ctx);
58 
59 void enable_window_controls(::game& ctx);
60 void enable_menu_controls(::game& ctx);
61 void enable_game_controls(::game& ctx);
62 void enable_camera_controls(::game& ctx);
63 void enable_ant_controls(::game& ctx);
64 void enable_debug_controls(::game& ctx);
65 
66 void disable_window_controls(::game& ctx);
67 void disable_menu_controls(::game& ctx);
68 void disable_game_controls(::game& ctx);
69 void disable_camera_controls(::game& ctx);
70 void disable_ant_controls(::game& ctx);
71 void disable_debug_controls(::game& ctx);
72 
73 #endif // ANTKEEPER_GAME_CONTROLS_HPP
Definition: game.hpp:121
void enable_window_controls(::game &ctx)
void enable_debug_controls(::game &ctx)
void setup_camera_controls(::game &ctx)
void update_control_profile(::game &ctx, ::control_profile &profile)
Updates a control profile after actions have been remapped.
Definition: controls.cpp:273
void setup_debug_controls(::game &ctx)
void apply_control_profile(::game &ctx, const ::control_profile &profile)
Applies a control profile to the game context.
Definition: controls.cpp:193
void setup_game_controls(::game &ctx)
Definition: controls.cpp:376
void disable_ant_controls(::game &ctx)
void enable_menu_controls(::game &ctx)
void disable_menu_controls(::game &ctx)
void reset_control_profile(::control_profile &profile)
Resets a control profile to default settings.
Definition: controls.cpp:31
void disable_camera_controls(::game &ctx)
void setup_window_controls(::game &ctx)
void enable_ant_controls(::game &ctx)
void disable_debug_controls(::game &ctx)
void enable_game_controls(::game &ctx)
Definition: controls.cpp:412
void disable_window_controls(::game &ctx)
void enable_camera_controls(::game &ctx)
void setup_ant_controls(::game &ctx)
void setup_menu_controls(::game &ctx)
void disable_game_controls(::game &ctx)
Definition: controls.cpp:417