diff --git a/Makefile b/Makefile index 0f0d972..044400c 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ -spiel: main.o sprite.o - gcc -o spiel main.o sprite.o -lraylib -lGL -lm -lpthread -ldl -lrt -lX11 +spiel: main.o sprite.o inputHandler.o + gcc -o spiel main.o sprite.o inputHandler.o -lraylib -lGL -lm -lpthread -ldl -lrt -lX11 main.o: main.c gcc -c main.c -lraylib -lGL -lm -lpthread -ldl -lrt -lX11 @@ -7,5 +7,8 @@ main.o: main.c sprite.o: sprite.c gcc -c sprite.c -lraylib -lGL -lm -lpthread -ldl -lrt -lX11 +inputHandler.o: inputHandler.c + gcc -c inputHandler.c -lraylib -lGL -lm -lpthread -ldl -lrt -lX11 + clean: rm *.o spiel diff --git a/inputHandling.h b/inputHandler.c similarity index 83% rename from inputHandling.h rename to inputHandler.c index a0d3da7..7ad9785 100644 --- a/inputHandling.h +++ b/inputHandler.c @@ -1,18 +1,12 @@ -struct InputHandler{ - int pressed; - Vector2 rectStart; - Vector2 cursorPos; -} InputHandler; +#include "inputHandler.h" +#include "raylib.h" +#include "sprite.h" +#include //TODO: Macht es Sinn ein einzelnes "Game" struct zu haben, das alle möglichen Pointer hat zu allen arrays, camera, textures etc? // Man hat einen Übergabeparameter mit dem man dann alles verändern kann, man muss nicht alles was man verändern will einzeln übergeben -/* - cursor.x = GetMousePosition().x - texture.width / 2; - cursor.y = GetMousePosition().y - texture.height / 2; -*/ - -void mouseInput(struct InputHandler *inputHandler, struct Sprite *sprites, int *spriteAmount, Texture2D *texture, Camera2D *camera){ +void mouseInput(InputHandler *inputHandler, Sprite *sprites, int *spriteAmount, Texture2D *texture, Camera2D *camera){ inputHandler->cursorPos.x = GetMousePosition().x; inputHandler->cursorPos.y = GetMousePosition().y; @@ -54,7 +48,7 @@ void mouseInput(struct InputHandler *inputHandler, struct Sprite *sprites, int * } -void keyboardInput(struct InputHandler *inputHandler, Camera2D *camera){ +void keyboardInput(InputHandler *inputHandler, Camera2D *camera){ if(IsKeyDown(KEY_W)){ (*camera).target.y -= 100.0f * GetFrameTime(); } diff --git a/inputHandler.h b/inputHandler.h new file mode 100644 index 0000000..5cda884 --- /dev/null +++ b/inputHandler.h @@ -0,0 +1,16 @@ +#ifndef INPUTHANDLER_H_ +#define INPUTHANDLER_H_ +#include "raylib.h" +#include "sprite.h" + +typedef struct InputHandler{ + int pressed; + Vector2 rectStart; + Vector2 cursorPos; +} InputHandler; + +void mouseInput(InputHandler *inputHandler, Sprite *sprites, int *spriteAmount, Texture2D *texture, Camera2D *camera); + +void keyboardInput(InputHandler *inputHandler, Camera2D *camera); + +#endif \ No newline at end of file diff --git a/inputHandler.o b/inputHandler.o new file mode 100644 index 0000000..ebae5d7 Binary files /dev/null and b/inputHandler.o differ diff --git a/main.c b/main.c index 07f47f1..82a5e88 100644 --- a/main.c +++ b/main.c @@ -1,7 +1,7 @@ #include "raylib.h" #include "stdio.h" #include "sprite.h" -#include "inputHandling.h" +#include "inputHandler.h" #include "raymath.h" int main(){ @@ -16,7 +16,7 @@ int main(){ int spriteAmount = 0; Sprite cursorSprite = {&texture, 450, 225}; - struct InputHandler inputHandler; + InputHandler inputHandler; Camera2D camera = { 0 }; camera.target = (Vector2){400, 225}; diff --git a/main.o b/main.o index 3d96a59..3c421f5 100644 Binary files a/main.o and b/main.o differ diff --git a/spiel b/spiel index 9259a8f..0c1b6ad 100755 Binary files a/spiel and b/spiel differ diff --git a/sprite.c b/sprite.c index 14f3f9a..e15d1f7 100644 --- a/sprite.c +++ b/sprite.c @@ -2,7 +2,7 @@ #include "raylib.h" #include -void SpriteAdd(struct Sprite *sprites, int *spriteAmount, Texture2D *texture, int x, int y){ +void SpriteAdd(Sprite *sprites, int *spriteAmount, Texture2D *texture, int x, int y){ if(*spriteAmount < 100){ (sprites + *spriteAmount) -> texture = texture; (sprites + *spriteAmount) -> x = x; @@ -14,6 +14,6 @@ void SpriteAdd(struct Sprite *sprites, int *spriteAmount, Texture2D *texture, in } } -void DrawSprite(struct Sprite *sprite){ +void DrawSprite(Sprite *sprite){ DrawTexture(*sprite->texture, sprite->x, sprite->y, WHITE); } diff --git a/sprite.h b/sprite.h index f060300..1365b4b 100644 --- a/sprite.h +++ b/sprite.h @@ -11,8 +11,8 @@ typedef struct Sprite { int hasDestination; } Sprite; -void SpriteAdd(struct Sprite *sprites, int *spriteAmount, Texture2D *texture, int x, int y); +void SpriteAdd(Sprite *sprites, int *spriteAmount, Texture2D *texture, int x, int y); -void DrawSprite(struct Sprite *sprite); +void DrawSprite(Sprite *sprite); #endif