This repository has been archived on 2022-12-14. You can view files and clone it, but cannot push or open issues or pull requests.
WaveGGJ17/VaporWaveWars/player.cpp
2017-01-22 01:12:51 +01:00

59 lines
1.5 KiB
C++

#include "player.hpp"
Player::Player(int num) : Actor(num) {
compas = Compas();
error = false;
time = 0;
}
Player::Player() : Actor() {
compas = Compas();
error = false;
time = 0;
}
bool Player::updateLogic(float deltaTime, sf::RenderWindow *window) {
time += deltaTime;
if (time > BLACKVALUE) {
compas.incraeseTime();
time = 0;
}
return false;
}
bool Player::event(sf::Event e) {
switch(e.type) {
case (sf::Event::KeyPressed):
if(e.key.code == sf::Keyboard::C) {
std::string sample = "note"+std::to_string(rand()%4+1);
SoundManager::playSound(sample);
std::cout << "playing sample " << sample << std::endl;
compas.start();
error = false;
}
if(e.key.code == sf::Keyboard::Space) {
if (animate == PlayerState::idle && !error) {
compas.add();
if (compas.isPressed()) animate = PlayerState::attacking;
}
else {
if (!error) {
compas.fail();
animate = PlayerState::hurt;
error = true;
return false;
}
}
}
break;
case (sf::Event::KeyReleased):
if (compas.isPressed() and e.key.code == sf::Keyboard::C) {
compas.end();
return false;
}
break;
default:
break;
}
return true;
}