diff --git a/travail_de_groupe/chef_oeuvre/run b/travail_de_groupe/chef_oeuvre/run
index 52293bf2e20a2065f0262c78b78410ae3bb41383..5e04dae7923aba57f0b2e752a25bdbd03bbb0a5f 100755
Binary files a/travail_de_groupe/chef_oeuvre/run and b/travail_de_groupe/chef_oeuvre/run differ
diff --git a/travail_de_groupe/chef_oeuvre/src/player.c b/travail_de_groupe/chef_oeuvre/src/player.c
index 8f77540f356eda9c95f2617dff02ebabab038021..0d3d9c85d3f3cff295b2249b391e3395f107d7a4 100644
--- a/travail_de_groupe/chef_oeuvre/src/player.c
+++ b/travail_de_groupe/chef_oeuvre/src/player.c
@@ -3,26 +3,68 @@
 player_t player;
 
 void initPlayer(){
-    player.x = 0;
+    player.x = 18*32;
     player.y = 0;
+    player.w = CELLSIZE;
+    player.h = CELLSIZE;
     player.waterLevel = 0;
     player.speed = 1;
 }
 
+int collisionsLeftPlayer(){
+    int collision = 0;
+    if(player.x <= 0){
+        collision = 1;
+    }
+    return collision;
+}
+
+int collisionsRightPlayer(){
+    int collision = 0;
+    if(player.x + player.w >= (MAPSIZE-1) * CELLSIZE){
+        collision = 1;
+    }
+    return collision;
+}
+
+int collisionsUpPlayer(){
+    int collision = 0;
+    if(player.y <= 0){
+        collision = 1;
+    }
+    return collision;
+}
+
+int collisionsDownPlayer(){
+    int collision = 0;
+    if(player.y + player.h >= (MAPSIZE-1) * CELLSIZE){
+        collision = 1;
+    }
+    return collision;
+}
+
 void moveRightPlayer(){
-    player.x = player.x + player.speed;
+    if(!collisionsRightPlayer()){
+        player.x = player.x + player.speed;
+    }
 }
 
 void moveLeftPlayer(){
-    player.x = player.x - player.speed;
+    if(!collisionsLeftPlayer()){
+        player.x = player.x - player.speed;
+    }
 }
 
 void moveUpPlayer(){
-    player.y = player.y - player.speed;
+    if(!collisionsUpPlayer()){
+        player.y = player.y - player.speed;
+    }
 }
 
 void moveDownPlayer(){
-    player.y = player.y + player.speed;
+    if(!collisionsDownPlayer()){
+        player.y = player.y + player.speed;
+    }
 }
 
 void manageMovement(){
@@ -53,3 +95,4 @@ int selectStateHover(){
 
 
 
+
diff --git a/travail_de_groupe/chef_oeuvre/src/player.h b/travail_de_groupe/chef_oeuvre/src/player.h
index 4f8791242356c2fac3238982e1671e11d3397982..98964cfdeda4a494256021611cbcd997f3b0514b 100644
--- a/travail_de_groupe/chef_oeuvre/src/player.h
+++ b/travail_de_groupe/chef_oeuvre/src/player.h
@@ -12,6 +12,8 @@
 typedef struct player{
     int x;
     int y;
+    int w;
+    int h;
     int waterLevel;
     int speed;
 } player_t;