aboutsummaryrefslogtreecommitdiff
path: root/include/player.h
diff options
context:
space:
mode:
authorLeander Scherer <leander@schererleander.de>2026-03-11 23:17:01 +0100
committerLeander Scherer <leander@schererleander.de>2026-03-11 23:17:01 +0100
commit3b3cd7e421fa14f9803199b22dcdcc6c59761475 (patch)
tree28f8d3416c5437c5c96d95724ff45d552432e6c8 /include/player.h
parentd3a1bb552e9efc4e516841158aaaea3d8ab9202d (diff)
feat(player): add health, inventory, and pickup collection
Diffstat (limited to 'include/player.h')
-rw-r--r--include/player.h31
1 files changed, 20 insertions, 11 deletions
diff --git a/include/player.h b/include/player.h
index f77de50..99a3ce9 100644
--- a/include/player.h
+++ b/include/player.h
@@ -1,24 +1,33 @@
-#ifndef PLAYER_H
-#define PLAYER_H
+#pragma once
-#include "map_manager.h"
#include "raylib.h"
+#include "raytmx.h"
-typedef struct Player {
+#include "map.h"
+
+typedef enum { PLAYER_IDLE, PLAYER_WALK, PLAYER_ATTACK } PlayerState;
+
+typedef struct {
+ int potions;
+ int bombs;
+ int currency;
+} Inventory;
+
+typedef struct {
Vector2 position;
float speed;
Rectangle bounds;
-
- // Animation state
+
TmxTileset tileset;
int currentFrame;
float frameTime;
- int state; // 0: idle, 1: walk, etc.
+ PlayerState state;
bool facingRight;
+ int health;
+ int maxHealth;
+ Inventory inventory;
} Player;
-void UpdatePlayer(Player *p, MapManager *mapMgr);
-void DrawPlayer(Player *p);
-
-#endif
+void UpdatePlayer(Player *player, Map *map, struct Entities *entities);
+void DrawPlayer(Player *player);