diff --git a/.vscode/settings.json b/.vscode/settings.json
new file mode 100644
index 0000000000000000000000000000000000000000..1be854fd2ce7df6048a2496eecdbcf417ad9900c
--- /dev/null
+++ b/.vscode/settings.json
@@ -0,0 +1,5 @@
+{
+    "files.associations": {
+        "cmath": "cpp"
+    }
+}
\ No newline at end of file
diff --git a/build/CMakeFiles/MCC.dir/src/game/GameEntities.cpp.o b/build/CMakeFiles/MCC.dir/src/game/GameEntities.cpp.o
index bea0ded07d8bc83bdd832bde0398b7c3cac404ec..0a3a138b8a9a53c47ea472a37598cc2b13905ce6 100644
Binary files a/build/CMakeFiles/MCC.dir/src/game/GameEntities.cpp.o and b/build/CMakeFiles/MCC.dir/src/game/GameEntities.cpp.o differ
diff --git a/build/CMakeFiles/MCC.dir/src/manager/MenuManager.cpp.o b/build/CMakeFiles/MCC.dir/src/manager/MenuManager.cpp.o
index 271a2b9a7c2f71ac618687175c5061753607347a..922571207b568163f6d1bab6849d855d7c6d6bea 100644
Binary files a/build/CMakeFiles/MCC.dir/src/manager/MenuManager.cpp.o and b/build/CMakeFiles/MCC.dir/src/manager/MenuManager.cpp.o differ
diff --git a/build/MCC b/build/MCC
index 710c64d97c0e25ac24c1582654e75c53c55e889d..00af5f7af9b8509497dca1911c7d484638405b92 100755
Binary files a/build/MCC and b/build/MCC differ
diff --git a/src/game/GameEntities.cpp b/src/game/GameEntities.cpp
index aa552f7935af405f1a7969c1806339847970c871..bf6c3e218f28b522337d30def09086130deb1c35 100644
--- a/src/game/GameEntities.cpp
+++ b/src/game/GameEntities.cpp
@@ -741,15 +741,19 @@ bool HSlash::use(){
 void HSlash::applySkillEnemy(Enemy* enemy){
     int degats;
     enemy->setKnockback(true);
-    Vec2 reverseVelocity(enemy->getBody()->GetLinearVelocity());
-
+    vec2 reverseVelocity(enemy->getBody()->GetLinearVelocity());
+    float angleToRadian = (90*M_PI)/180.0f;
+    reverseVelocity.x = reverseVelocity.x * cos(angleToRadian) - sin(angleToRadian) * reverseVelocity.y;
+    reverseVelocity.y = reverseVelocity.y * sin(angleToRadian) - cos(angleToRadian) * reverseVelocity.x;
+    enemy->setKnockbackVelocity(reverseVelocity);
     if(this->parent->getStrength()*2<=enemy->getArmor()){
         degats=1;
     }
     else{
-        degats = this->parent->getStrength()-enemy->getArmor();
+        degats = this->parent->getStrength() * (this->parent->getStrength()/(this->parent->getStrength()-enemy->getArmor()));
+        
     }
-    enemy->setHp(enemy->getHp()-this->parent->getStrength()*(parent->getStrength()/parent->getStrength()+enemy->getArmor()));
+    enemy->setHp(enemy->getHp()-degats);
     if(enemy->getHp()<=0){
         this->parent->gainXp(enemy->getGiftXp());
         int dropchance = (rand() % 100)+1;
diff --git a/src/manager/MenuManager.cpp b/src/manager/MenuManager.cpp
index 74a6908b191f706f1e6f973211cbccdd6b069d59..aca5fc11ed5ab1b9708afd164814d2fbca283705 100644
--- a/src/manager/MenuManager.cpp
+++ b/src/manager/MenuManager.cpp
@@ -66,7 +66,7 @@ void MenuManager::menu(){
         nk_spacer(ctx);
         if (nk_button_label(ctx, "Nouvelle Partie")) {
             game->setState(InLoadingScreen);
-            SoundManager::getInstance().PlayMusicBackground();
+            
         }
         nk_spacer(ctx);