diff options
Diffstat (limited to 'src/stm32/TODO/hh_entity.h')
-rw-r--r-- | src/stm32/TODO/hh_entity.h | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/src/stm32/TODO/hh_entity.h b/src/stm32/TODO/hh_entity.h index 768b2e6..fdbeb8a 100644 --- a/src/stm32/TODO/hh_entity.h +++ b/src/stm32/TODO/hh_entity.h @@ -1,20 +1,24 @@ +#pragma once + +#include <stdint.h> + #include "maths.h" -typedef struct hh_entity -{ - vec2 pos, direction; +typedef struct { + vec2 pos, vec; + bool is_grounded; int8_t hp; //armor/block? -}; +}hh_entity; -/// @brief detect for collision entity and environment -/// @param environment position of tile to be checked -/// @param entity position entity -/// @return true if collision between entity and environment -bool hh_collision(const vec2& environment, const vec2& entity); +/// @brief detect for collision enity and eviroment +/// @param pos1 position of environment tile to be checked +/// @param pos2 position entity +/// @return true if collision between enity and environment +bool hh_collision(vec2* pos1, vec2* pos2); /// @brief solve collisions /// @param environment position /// @param entity position /// @return solved new entity position -vec2 hh_solve_collision(const vec2& environment, const vec2& entity); +void hh_solve_collision(vec2* pos_environment, hh_entity* entity); |