sauvegarde 4
[PACMAN.git] / engines / enemy.h
blobaac7e65ee86316a50f792d4bb1f4ddeb9d48c4b8
1 #ifndef ENEMY_H
2 #define ENEMY_H
3 /*!
4 * \file enemy.h
5 * \brief Base enemy for the game
6 * \author Ghislain Dugat
7 */
9 #include "ai.h"
10 #include "entity.h"
12 /*!
13 * \namespace engine
15 * Namespace containing the "game engine" side of the project as a library
17 namespace engine
19 /*!
20 * \class Enemy
21 * \brief Base enemy for the game that has access to several behaviors
23 class Enemy : public Entity
25 private:
26 AI *ai;/*< Instance of the AI class for the ennemy to select a behavior */
27 public:
28 /*!
29 * \brief Constructor for Enemy
30 * \param x horizontal pos of the Enemy in the game window (i.e. the center of its collider)
31 * \param y vertical pos of the Enemy in the game window (i.e. the center of its collider)
32 * \param width width of the object's hitbox once displayed
33 * \param height height of the object's hitbox once displayed
34 * \param img_path Path in the project ressources to the image representing the object
36 Enemy(int x, int y, int width, int height, QString img_path);
38 /*!
39 * \brief Constructor for Enemy
40 * \param pos position of the center of the object (i.e. the center of its hitbox)
41 * \param box hitbox of the object
42 * \param img_path Path in the project ressources to the image representing the object
44 Enemy(QPoint pos, Box box, QString img_path);
46 void update_entity();
51 #endif // ENEMY_H