From 39999eaabd8c881c997f96e2917047d674b7bca5 Mon Sep 17 00:00:00 2001 From: Sara Date: Mon, 27 Nov 2023 17:41:54 +0100 Subject: [PATCH] feat: created Enemy struct --- game/src/Enemy.c | 8 ++++++++ game/src/Enemy.h | 25 +++++++++++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 game/src/Enemy.c create mode 100644 game/src/Enemy.h diff --git a/game/src/Enemy.c b/game/src/Enemy.c new file mode 100644 index 0000000..75409ea --- /dev/null +++ b/game/src/Enemy.c @@ -0,0 +1,8 @@ +#include "Enemy.h" +#include "debug.h" + +Enemy* MakeEnemy() { + Enemy* self = malloc(sizeof(Enemy)); + ASSERT_RETURN + return self; +} diff --git a/game/src/Enemy.h b/game/src/Enemy.h new file mode 100644 index 0000000..7fab4d8 --- /dev/null +++ b/game/src/Enemy.h @@ -0,0 +1,25 @@ +#ifndef FIGHT_ENEMY_H +#define FIGHT_ENEMY_H + +#include "transform.h" +#include "state_machine.h" +#include "rigidbody.h" +#include "collider.h" + +typedef struct Enemy { + Transform transform; + + StateMachine behaviour; + + RigidBody* rigidbody; + Collider* collider; +} Enemy; + +extern Enemy* MakeEnemy(); +extern Enemy* SpawnEnemy(Vector location, const State* entryState); + +extern void EnemyStart(Enemy* self); +extern void EnemyUpdate(Enemy* self, float deltaTime); +extern void EnemyDestroy(Enemy* self); + +#endif // !FIGHT_ENEMY_H