48 lines
2.2 KiB
C
48 lines
2.2 KiB
C
|
#ifndef HOLESOME_INPUT_CONFIG_H
|
||
|
#define HOLESOME_INPUT_CONFIG_H
|
||
|
|
||
|
|
||
|
#include <map>
|
||
|
#include "game/input/input_device_group.h"
|
||
|
#include "game/input/button_config.hpp"
|
||
|
#include "game/input/game_action_config.hpp"
|
||
|
#include "game/input/gamepad_buttons.hpp"
|
||
|
|
||
|
#define JOYSTICK_DEADZONE 0.1f
|
||
|
|
||
|
|
||
|
// Keys
|
||
|
const std::map<sf::Keyboard::Key, ButtonConfig> KEY_CONFIGS = {
|
||
|
{sf::Keyboard::Up, ButtonConfig(InputDeviceGroup::KEYBOARD_ARROWS, HardDirection::UP)},
|
||
|
{sf::Keyboard::Down, ButtonConfig(InputDeviceGroup::KEYBOARD_ARROWS, HardDirection::DOWN)},
|
||
|
{sf::Keyboard::Left, ButtonConfig(InputDeviceGroup::KEYBOARD_ARROWS, HardDirection::LEFT)},
|
||
|
{sf::Keyboard::Right, ButtonConfig(InputDeviceGroup::KEYBOARD_ARROWS, HardDirection::RIGHT)},
|
||
|
{sf::Keyboard::RControl, ButtonConfig(InputDeviceGroup::KEYBOARD_ARROWS, {GameAction::JUMP})},
|
||
|
|
||
|
{sf::Keyboard::W, ButtonConfig(InputDeviceGroup::KEYBOARD_WASD, HardDirection::UP)},
|
||
|
{sf::Keyboard::S, ButtonConfig(InputDeviceGroup::KEYBOARD_WASD, HardDirection::DOWN)},
|
||
|
{sf::Keyboard::A, ButtonConfig(InputDeviceGroup::KEYBOARD_WASD, HardDirection::LEFT)},
|
||
|
{sf::Keyboard::D, ButtonConfig(InputDeviceGroup::KEYBOARD_WASD, HardDirection::RIGHT)},
|
||
|
{sf::Keyboard::Space, ButtonConfig(InputDeviceGroup::KEYBOARD_WASD, {GameAction::JUMP})},
|
||
|
|
||
|
{sf::Keyboard::I, ButtonConfig(InputDeviceGroup::KEYBOARD_IJKL, HardDirection::UP)},
|
||
|
{sf::Keyboard::K, ButtonConfig(InputDeviceGroup::KEYBOARD_IJKL, HardDirection::DOWN)},
|
||
|
{sf::Keyboard::J, ButtonConfig(InputDeviceGroup::KEYBOARD_IJKL, HardDirection::LEFT)},
|
||
|
{sf::Keyboard::L, ButtonConfig(InputDeviceGroup::KEYBOARD_IJKL, HardDirection::RIGHT)},
|
||
|
{sf::Keyboard::B, ButtonConfig(InputDeviceGroup::KEYBOARD_IJKL, {GameAction::JUMP})}
|
||
|
};
|
||
|
|
||
|
|
||
|
// Gamepad buttons
|
||
|
const std::map<int, ButtonConfig> GAMEPAD_BUTTON_CONFIGS = {
|
||
|
{20, ButtonConfig(InputDeviceGroup::GAMEPAD, {GameAction::JUMP})}
|
||
|
};
|
||
|
|
||
|
|
||
|
// Actions
|
||
|
const std::map<GameAction, GameActionConfig> GAME_ACTION_CONFIGS = {
|
||
|
{GameAction::JUMP, GameActionConfig(InteractionMode::PRESS)}
|
||
|
};
|
||
|
|
||
|
#endif //HOLESOME_INPUT_CONFIG_H
|