feat: add Inventar struct, add SeedCount in inventar, display seedCount on Screen

This commit is contained in:
Rebecca Beyer
2025-03-26 21:15:33 +01:00
parent b00f9f7ee1
commit 9fda03188e
3 changed files with 21 additions and 1 deletions
+4 -1
View File
@@ -82,6 +82,7 @@ void UpdateGame(GameState* g, State *state){
UpdateFloor(&g->floor, &g->camera); UpdateFloor(&g->floor, &g->camera);
UpdatePlayer(&g->player); UpdatePlayer(&g->player);
UpdateBee(&g->bee1, &g->flowers, &g->hive); UpdateBee(&g->bee1, &g->flowers, &g->hive);
} }
@@ -91,6 +92,7 @@ void RenderComponents(GameState* g){
RenderObjectArray(&g->flowers); RenderObjectArray(&g->flowers);
RenderSprite(&g->player.sprite); RenderSprite(&g->player.sprite);
RenderSprite(&g->bee1.sprite); RenderSprite(&g->bee1.sprite);
} }
void RenderGame(GameState* g){ void RenderGame(GameState* g){
@@ -106,7 +108,8 @@ void RenderGame(GameState* g){
for (int i = 0; i < SHADER_COUNT; i++){ for (int i = 0; i < SHADER_COUNT; i++){
RenderPostFX(&g->postFX[i], &g->target); RenderPostFX(&g->postFX[i], &g->target);
} }
DrawFPS(10, 10); DrawText( TextFormat("%d", g->player.inventar.seedCount), 10, 10, 50, WHITE);
//DrawFPS(10, 10);
EndDrawing(); EndDrawing();
} }
+9
View File
@@ -0,0 +1,9 @@
#ifndef INVENTAR_H
#define INVENTAR_H
typedef struct{
int seedCount;
} Inventar;
#endif // INVENTAR_H
+8
View File
@@ -4,6 +4,7 @@
#include "../engine/animation.h" #include "../engine/animation.h"
#include "../engine/physics.h" #include "../engine/physics.h"
#include "../engine/input.h" #include "../engine/input.h"
#include "inventar.h"
typedef enum { typedef enum {
IDLE, IDLE,
@@ -46,6 +47,7 @@ typedef struct {
Sprite sprite; Sprite sprite;
Animation animation; Animation animation;
Physics physics; Physics physics;
Inventar inventar;
} Player; } Player;
Player CreatePlayer(PlayerAnimationState animState, SelectedTool selectedTool, Texture2D texture, float frameWidth, int maxFrame, int framesSpeed, Vector2 startPosition, float rotation, float speed){ Player CreatePlayer(PlayerAnimationState animState, SelectedTool selectedTool, Texture2D texture, float frameWidth, int maxFrame, int framesSpeed, Vector2 startPosition, float rotation, float speed){
@@ -72,6 +74,9 @@ Player CreatePlayer(PlayerAnimationState animState, SelectedTool selectedTool, T
.position = startPosition, .position = startPosition,
.direction = (Vector2){0.0f,0.0f}, .direction = (Vector2){0.0f,0.0f},
.speed = speed .speed = speed
},
.inventar = {
.seedCount = 6
} }
}; };
} }
@@ -111,6 +116,9 @@ void UpdatePlayerAnimationState(int *state, SelectedTool *selectedTool, Vector2
} }
void UpdatePlayer(Player* player){ void UpdatePlayer(Player* player){
if (IsKeyPressed(KEY_SPACE) && player->inventar.seedCount >0){
player->inventar.seedCount--;
}
Vector2 dir = GetDirectionVector(); Vector2 dir = GetDirectionVector();
UpdatePlayerAnimationState(&player->animation.state, &player->selectedTool, &dir); UpdatePlayerAnimationState(&player->animation.state, &player->selectedTool, &dir);
UpdatePhysics(&player->physics, dir); UpdatePhysics(&player->physics, dir);