diff --git a/charac.c b/charac.c
index 1ce23b1d4aabb96a4a7932dbedc028907dffa423..6464cfc192da49246b7da5783f23a310cc7f723c 100644
--- a/charac.c
+++ b/charac.c
@@ -17,6 +17,7 @@ int jump(int input){
 	case SDL_SCANCODE_D:		//right
 		if(player->x < 770){ // Überprüfe Grenzen
 			player->x += ROW_SIZE;
+			player->position = 5;
 			return(1);
 		}
 		break;
@@ -24,6 +25,7 @@ int jump(int input){
 	case SDL_SCANCODE_A:		//left
 		if(player->x > 30){ // Überprüfe Grenzen
 			player->x -= ROW_SIZE;
+			player->position = 3;
 			return(2);
 		}
 		break;
@@ -32,6 +34,7 @@ int jump(int input){
 		if(player->y < 820){ // Überprüfe Grenzen
 			playerscore--;
 			player->y += ROW_SIZE;
+			player->position = 4;
 			return(3);
 		}
 		break;
@@ -43,6 +46,7 @@ int jump(int input){
 				playerhighscore = playerscore;
 			}
 			player->y -= ROW_SIZE;
+			player->position = 1;
 			return(4);
 		}
 		break;
@@ -55,6 +59,7 @@ int jump(int input){
 			}
 			player->y -= ROW_SIZE;
 			player->x -= ROW_SIZE;
+			player->position = 1;
 			return(5);
 		}
 		break;
@@ -67,6 +72,7 @@ int jump(int input){
 			}
 			player->y -= ROW_SIZE;
 			player->x += ROW_SIZE;
+			player->position = 1;
 			return(6);
 		}
 		break;
@@ -87,12 +93,38 @@ int update_character(int speed, SDL_Renderer *renderer){
 	
 	player->y +=speed; // Bewege den Spieler um speed pixel nach unten
 
-  // Fehlerbehandlung
-	if (SDL_RenderCopy(renderer, img_duck, NULL,player) != 0) {
-                SDL_Log("Bild konnte nicht kopiert werden! SDL_Error Error: %s\n",SDL_GetError());
-                return(1);
-    } 
-    return(0);
+	SDL_Rect rect = {
+		.x = player->x,
+		.y = player->y,
+		.h = player->h,
+		.w = player->w
+	};
+
+	if (player->position <= 2){
+		if (SDL_RenderCopy(renderer, img_duck, NULL,&rect) != 0) {
+					SDL_Log("Bild konnte nicht kopiert werden! SDL_Error Error: %s\n",SDL_GetError());
+					return(1);
+		} 
+		return(0);
+	}else if(player->position == 3){
+		if (SDL_RenderCopy(renderer, img_player_left, NULL,&rect) != 0) {
+					SDL_Log("Bild konnte nicht kopiert werden! SDL_Error Error: %s\n",SDL_GetError());
+					return(1);
+		} 
+		return(0);
+	}else if(player->position == 4){
+		if (SDL_RenderCopy(renderer, img_player_down, NULL,&rect) != 0) {
+					SDL_Log("Bild konnte nicht kopiert werden! SDL_Error Error: %s\n",SDL_GetError());
+					return(1);
+		} 
+		return(0);
+	}else if(player->position == 5){
+		if (SDL_RenderCopy(renderer, img_player_right, NULL,&rect) != 0) {
+					SDL_Log("Bild konnte nicht kopiert werden! SDL_Error Error: %s\n",SDL_GetError());
+					return(1);
+		} 
+		return(0);
+	}
 }
 
 // Vorb.: /
diff --git a/gameLoop.c b/gameLoop.c
index f93e828fc340907ed7d761225856f7a392bf2244..53c7f59cbfb98912a4d5c9c95a0ebc425134d0a0 100644
--- a/gameLoop.c
+++ b/gameLoop.c
@@ -1,7 +1,7 @@
 #include "hDateien/gameLoop.h"
 
 
-SDL_Rect *player;
+struct player *player;
 int playerscore;
 int playerhighscore;
 
@@ -14,11 +14,12 @@ bool gameLoop(enum vehicle theme,SDL_Renderer* renderer) {
     int speed = 0;
 
     // Character wird in der Mitte des vorletzten Feldes gestartet
-    SDL_Rect character = {
-            .x = 420,
+    struct player character = {
+            .x = 410,
             .y = 810,
             .w = 60,
-            .h = 70
+            .h = 70,
+            .position = 0
     };
 
     player = &character;
diff --git a/hDateien/charac.h b/hDateien/charac.h
index ffd4a5a82ca11038c147b41f01c98134ec42b59b..bfde11be8e70b6d5a763befa47bdbd1109f9e43f 100644
--- a/hDateien/charac.h
+++ b/hDateien/charac.h
@@ -15,7 +15,7 @@
 //#include "header.h"
 
 
-extern SDL_Rect *player;
+extern struct player *player;
 extern int playerhighscore;
 extern int playerscore;
 
diff --git a/hDateien/gameLoop.h b/hDateien/gameLoop.h
index 4b3e885d5144ced95236c6d305f112d3c65d4530..42a5bb2d922896ec2110d697d15255ec64bad3f4 100644
--- a/hDateien/gameLoop.h
+++ b/hDateien/gameLoop.h
@@ -17,7 +17,7 @@
 
 
 
-extern SDL_Rect *player;
+extern struct player *player;
 extern int playerscore;
 extern int playerhighscore;
 
diff --git a/hDateien/header.h b/hDateien/header.h
index 28a3a974b971d6bddac8992cfb21c9d426272228..5253c5fffe967972be5b0549ec3c8affbae7a625 100644
--- a/hDateien/header.h
+++ b/hDateien/header.h
@@ -5,10 +5,19 @@
 #define SCREEN_HEIGHT 1000
 #define ROW_SIZE 100
 
-extern SDL_Rect *player;
+extern struct player *player;
 extern int playerscore;
 extern int playerhighscore;
 
+
+struct player{
+    int x;
+    int y;
+    int h;
+    int w;
+    int position;
+};
+
 enum color{
     red,
     blue,
diff --git a/hDateien/init.h b/hDateien/init.h
index ace8f6f1e86b8a2b04c46e7651e978486df62162..ca071e5f98740ff1ad18ecafd423f857ac527333 100644
--- a/hDateien/init.h
+++ b/hDateien/init.h
@@ -35,6 +35,9 @@ extern SDL_Texture *img_trainR;
 extern SDL_Texture *img_trainL;
 extern SDL_Texture *img_plank;
 extern SDL_Texture *img_duck;
+extern SDL_Texture *img_player_down;
+extern SDL_Texture *img_player_left;
+extern SDL_Texture *img_player_right;
 extern SDL_Texture *img_3D_Duck;
 extern SDL_Texture *img_stone;
 extern SDL_Texture *img_race_street;
diff --git a/images/player_down.png b/images/player_down.png
new file mode 100644
index 0000000000000000000000000000000000000000..3bc4efa5a4594849d685a710f6fbf2d7ba372474
Binary files /dev/null and b/images/player_down.png differ
diff --git a/images/player_left.png b/images/player_left.png
new file mode 100644
index 0000000000000000000000000000000000000000..89f09cee61e4867b850fabdfe9cbc9bfce8bc2da
Binary files /dev/null and b/images/player_left.png differ
diff --git a/images/player_right.png b/images/player_right.png
new file mode 100644
index 0000000000000000000000000000000000000000..aead6f95f1f53423e0bc40c418185edd0dc65571
Binary files /dev/null and b/images/player_right.png differ
diff --git a/init.c b/init.c
index 464850e0ef954cb10736f51ac094c03bcec6fa01..0c4b18343935ac47af155cb937c3bd2c7646fa45 100644
--- a/init.c
+++ b/init.c
@@ -20,6 +20,9 @@ SDL_Texture *img_trainL;    //https://www.pinterest.com/hassanhojabri/sprite/
 SDL_Texture *img_trainR; //https://www.pinterest.com/hassanhojabri/sprite/
 SDL_Texture *img_plank; //https://www.craiyon.com/image/_XEsXKthRYqpK8Vn6ZixAg
 SDL_Texture *img_duck;
+SDL_Texture *img_player_down;
+SDL_Texture *img_player_left;
+SDL_Texture *img_player_right;
 SDL_Texture *img_3D_Duck;
 SDL_Texture *img_stone;
 SDL_Texture *img_race_street;
@@ -132,6 +135,9 @@ int init_images(SDL_Renderer* renderer) {
     img_bird_sit2 = IMG_LoadTexture(renderer,"images/bird_sit2.png");
     img_bird_sit3 = IMG_LoadTexture(renderer,"images/bird_sit3.png");
     img_bird_sit4 = IMG_LoadTexture(renderer,"images/bird_sit4.png");
+    img_player_down = IMG_LoadTexture(renderer,"images/player_down.png");
+    img_player_left = IMG_LoadTexture(renderer,"images/player_left.png");
+    img_player_right = IMG_LoadTexture(renderer,"images/player_right.png");
 
 
      //Initiierung der Bilder
@@ -201,6 +207,9 @@ int exitGame(SDL_Renderer* renderer, SDL_Window* window) {
     SDL_DestroyTexture(img_bird_sit2);
     SDL_DestroyTexture(img_bird_sit3);
     SDL_DestroyTexture(img_bird_sit4);
+    SDL_DestroyTexture(img_player_down);
+    SDL_DestroyTexture(img_player_left);
+    SDL_DestroyTexture(img_player_right);
     TTF_CloseFont(font);
 
     SDL_Quit();
diff --git a/title_screen.c b/title_screen.c
index 1422a5fce7884f3557d9557146a3b9b17fc3e264..37e394a598a50b59a5dadda6de4b71bd1bec25e6 100644
--- a/title_screen.c
+++ b/title_screen.c
@@ -27,7 +27,7 @@ int title_screen(SDL_Renderer* renderer){
 
 
     SDL_Rect rect = {
-                    .x = 0,
+                    .x = 100,
                     .y = 100,
                     .w = 600,
                     .h = 200};