diff options
Diffstat (limited to 'src/engine/entity.h')
-rw-r--r-- | src/engine/entity.h | 46 |
1 files changed, 5 insertions, 41 deletions
diff --git a/src/engine/entity.h b/src/engine/entity.h index cad6ba4..43fd5dd 100644 --- a/src/engine/entity.h +++ b/src/engine/entity.h @@ -5,47 +5,11 @@ #include <stdio.h> #include "ppu/types.h" - #include "engine/maths.h" +#include "engine/types.h" +#include "engine/animator.h" -typedef uint8_t hh_idx_t; - -typedef enum { - fire, ice, poison -}hh_e_damage_t; - -typedef struct { - hh_s_ppu_loc_fam_entry fam; //screen - hh_idx_t frame0; - hh_idx_t palette; - -}hh_s_rendering; - -typedef struct { - int8_t hp; - int8_t dmg; - hh_e_damage_t dmg_type; - int8_t speed_x, speed_y; - -} hh_s_atributes; - - -typedef struct { - vec2 pos, vel, vec; - bool is_grounded; - bool is_hit; - uint8_t radius; - int8_t hp; - int8_t speed; - hh_s_rendering render; - //armor/block? -}hh_entity; - -typedef struct { - hh_entity p; - hh_s_atributes atr; -}hh_s_player; - +// TODO: make a sprite update function (and required data structs?) /// @brief detect for collision enity and eviroment /// @param pos1 position of environment tile to be checked @@ -63,7 +27,7 @@ void hh_solve_collision(vec2 pos_environment, hh_entity* entity); /// @param temp_old_entity old data of entity /// @param temp_new_entity new data of entity where it wants to go to /// @return updated new entity where it actually can go to -hh_entity hh_background_collision (hh_entity temp_old_entity, hh_entity temp_new_entity); +hh_entity hh_background_collision(hh_entity temp_old_entity, hh_entity temp_new_entity); /// @brief solve collision of player with enemy /// @param temp_player data of player @@ -77,6 +41,6 @@ hh_entity hh_enemy_collision(hh_entity temp_player, hh_entity temp_enemy); /// @param radius_1 radius of first object (entity) /// @param radius_2 radius of second object (entity) /// @return true if objects collids -bool hh_distance_circles (vec2 object_1, vec2 object_2, int radius_1, int radius_2); +bool hh_distance_circles(vec2 object_1, vec2 object_2, int radius_1, int radius_2); |