From ea65745aea979852f6cc98b88396e4f215626c6e Mon Sep 17 00:00:00 2001
From: serk <marcprat_maso@hotmail.com>
Date: Sat, 21 Jan 2017 18:10:31 +0100
Subject: [PATCH] shader fix, hit animation

---
 Resources/shader.frag   |  2 +-
 VaporWaveWars/actor.cpp | 11 ++++++++---
 VaporWaveWars/actor.hpp |  2 +-
 3 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/Resources/shader.frag b/Resources/shader.frag
index bd71d03..5ab0e5c 100644
--- a/Resources/shader.frag
+++ b/Resources/shader.frag
@@ -39,5 +39,5 @@ void main(void) {
     
     vec4 color = vec4(255, 120, 153, 255) / 255.;
     vec4 colorB = vec4(255,255,255,255)/ 255.;
-    gl_FragColor = (grid(fract(uv))) * color;
+    gl_FragColor = (grid(fract(uv))) * color - line(umuv.y, 0., 0.175, 0.025) * color * 2.;
 }
\ No newline at end of file
diff --git a/VaporWaveWars/actor.cpp b/VaporWaveWars/actor.cpp
index b4f29b7..e294e73 100644
--- a/VaporWaveWars/actor.cpp
+++ b/VaporWaveWars/actor.cpp
@@ -29,10 +29,15 @@ bool Actor::update(float deltaTime, sf::RenderWindow *window) {
     return this->updateLogic(deltaTime, window);
 }
 
-bool Actor::hitBy(Compas enemy) const {
-    if (enemy == compas) std::cout << "dodge" << std::endl;
+bool Actor::hitBy(Compas enemy) {
+    bool hit = enemy == compas;
+    if (hit) std::cout << "dodge" << std::endl;
     else std::cout << "hit" << std::endl;
-    return enemy == compas;
+    if (!hit) {
+        character->setState(PlayerState::hurt);
+        animate = PlayerState::inMidle;
+    }
+    return hit;
 }
 
 Compas Actor::getAttack() const {
diff --git a/VaporWaveWars/actor.hpp b/VaporWaveWars/actor.hpp
index 3ecb150..8d9da42 100644
--- a/VaporWaveWars/actor.hpp
+++ b/VaporWaveWars/actor.hpp
@@ -12,7 +12,7 @@ public:
     Actor(int num);
     bool update(float deltaTime, sf::RenderWindow *window);
     void draw(sf::RenderWindow *window);
-    bool hitBy(Compas enemy) const;
+    bool hitBy(Compas enemy);
     Compas getAttack() const;
     virtual bool event(sf::Event e, bool def) = 0;