2021-05-28 19:50:57 +02:00
|
|
|
#include "classicgame.h"
|
2021-05-31 19:04:16 +02:00
|
|
|
#include "classicinputtype.h"
|
2021-05-28 19:50:57 +02:00
|
|
|
|
|
|
|
ClassicGame::ClassicGame()
|
2021-05-31 19:04:16 +02:00
|
|
|
{
|
|
|
|
_keys_to_buttons =
|
|
|
|
{
|
|
|
|
{sf::Keyboard::Up, Button::UP}, // Load from settings
|
|
|
|
{sf::Keyboard::Right, Button::RIGHT},
|
|
|
|
{sf::Keyboard::Down, Button::DOWN},
|
|
|
|
{sf::Keyboard::Left, Button::LEFT},
|
|
|
|
|
|
|
|
{sf::Keyboard::W, Button::UP},
|
|
|
|
{sf::Keyboard::D, Button::RIGHT},
|
|
|
|
{sf::Keyboard::S, Button::DOWN},
|
|
|
|
{sf::Keyboard::A, Button::LEFT},
|
|
|
|
|
|
|
|
{sf::Keyboard::E, Button::SLIDER_RIGHT},
|
|
|
|
{sf::Keyboard::Q, Button::SLIDER_LEFT}
|
|
|
|
};
|
|
|
|
|
|
|
|
_buttons_to_pressed_actions=
|
|
|
|
{
|
|
|
|
{Button::UP, Action::PRESS_UP},
|
|
|
|
{Button::RIGHT, Action::PRESS_RIGHT},
|
|
|
|
{Button::DOWN, Action::PRESS_DOWN},
|
|
|
|
{Button::LEFT, Action::PRESS_LEFT},
|
|
|
|
|
|
|
|
{Button::SLIDER_RIGHT, Action::PRESS_SLIDER_RIGHT},
|
|
|
|
{Button::SLIDER_LEFT, Action::PRESS_SLIDER_LEFT}
|
|
|
|
};
|
|
|
|
|
|
|
|
_buttons_to_released_actions=
|
|
|
|
{
|
|
|
|
{Button::UP, Action::RELEASE_UP},
|
|
|
|
{Button::RIGHT, Action::RELEASE_RIGHT},
|
|
|
|
{Button::DOWN, Action::RELEASE_DOWN},
|
|
|
|
{Button::LEFT, Action::RELEASE_LEFT},
|
|
|
|
|
|
|
|
{Button::SLIDER_RIGHT, Action::RELEASE_SLIDER_RIGHT},
|
|
|
|
{Button::SLIDER_LEFT, Action::RELEASE_SLIDER_LEFT}
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
void ClassicGame::run()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void ClassicGame::input(const sf::Event& event)
|
|
|
|
{
|
|
|
|
Action new_action = Action::NONE;
|
|
|
|
microsec timestamp = 0; /* 0 is temp. get from timeline */
|
|
|
|
|
|
|
|
switch (event.type)
|
|
|
|
{
|
|
|
|
default:
|
|
|
|
break;
|
|
|
|
case sf::Event::KeyPressed:
|
|
|
|
{
|
|
|
|
if (_keys_to_buttons.find(event.key.code) != _keys_to_buttons.end())
|
|
|
|
new_action = getActionKeyPressed(_keys_to_buttons[event.key.code]);
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case sf::Event::KeyReleased:
|
|
|
|
{
|
|
|
|
if (_keys_to_buttons.find(event.key.code) != _keys_to_buttons.end())
|
|
|
|
new_action = getActionKeyReleased(_keys_to_buttons[event.key.code]);
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
|
|
ClassicInputType input(timestamp, new_action);
|
|
|
|
/* Here get active Note from timeline and pass the input object to it */
|
|
|
|
}
|
|
|
|
|
|
|
|
Action ClassicGame::getActionKeyPressed(Button button) const
|
|
|
|
{
|
|
|
|
return _buttons_to_pressed_actions.at(button);
|
|
|
|
}
|
|
|
|
|
|
|
|
Action ClassicGame::getActionKeyReleased(Button button) const
|
|
|
|
{
|
|
|
|
return _buttons_to_released_actions.at(button);
|
|
|
|
}
|
|
|
|
|
|
|
|
void ClassicGame::update()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void ClassicGame::draw(const sf::RenderWindow& window) const
|
2021-05-28 19:50:57 +02:00
|
|
|
{
|
|
|
|
|
|
|
|
}
|