Bubba-3D  0.9.0
Awesome game engine!
KeyboardButton.cpp
1 /*
2  * This file is part of Bubba-3D.
3  *
4  * Bubba-3D is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU Lesser General Public License as published by
6  * the Free Software Foundation, either version 3 of the License, or
7  * (at your option) any later version.
8  *
9  * Bubba-3D is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public License
15  * along with Bubba-3D. If not, see http://www.gnu.org/licenses/.
16  */
17 //
18 // Created by simon on 2015-12-22.
19 //
20 
21 #include <KeyboardButton.h>
22 #include "Input.h"
23 #include <SFML/Window.hpp>
24 
25 KeyboardButton::KeyboardButton(sf::Keyboard::Key key) : Input(false){
26  this->keyPos = key;
27 }
28 
29 KeyboardButton::KeyboardButton(sf::Keyboard::Key keyPos, sf::Keyboard::Key keyNeg) : Input(true){
30  this->keyNeg = keyNeg;
31  this->keyPos = keyPos;
32 }
33 
34 ControlStatus::Activator KeyboardButton::getActivator() {
35  return ControlStatus::KEYBOARD;
36 }
37 
38 ControlStatus KeyboardButton::getStatus() {
39  float value = sf::Keyboard::isKeyPressed(keyPos) ? 100.0f : 0.0f;
40  if(dual)
41  value -= sf::Keyboard::isKeyPressed(keyNeg) ? 100.0f : 0.0f;
42  return ControlStatus(ControlStatus::KEYBOARD,value);
43 }
The class that contains information about a function at the state of creation.
Definition: ControlStatus.h:59
Definition: Input.h:26
KeyboardButton(sf::Keyboard::Key key)