Foe.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #ifndef FOE_H
  2. #define FOE_H
  3. #include "SpaceShip.h"
  4. /**
  5. Jovian Hersemeule
  6. Description du Foe :
  7. La classe Foe hérité de SpaceShip. Un Foe est un vaisseau ennemi que l'allié doit détruire.
  8. **/
  9. #define FOE_MIN_GUN 1000
  10. #define FOE_ADD_GUN 2142
  11. #define FOE_MIN_CUTTER 2000
  12. #define FOE_ADD_CUTTER 1042
  13. #define FOE_MIN_DISPER 16
  14. #define FOE_ADD_DISPER 32
  15. #define FOE_MIN_PHOTO 1600
  16. #define FOE_ADD_PHOTO 1
  17. #define FOE_MIN_MISSILE 3000
  18. #define FOE_ADD_MISSILE 2000
  19. #define FOE_MIN_BREXIT 1500
  20. #define FOE_ADD_BREXIT 1500
  21. #define FOE_MIN_HECTO 500
  22. #define FOE_ADD_HECTO 2200
  23. #define FOE_MIN_SNIPER 2200
  24. #define FOE_ADD_SNIPER 400
  25. #define FOE_MIN {0, FOE_MIN_GUN, FOE_MIN_CUTTER, FOE_MIN_DISPER, FOE_MIN_PHOTO, FOE_MIN_MISSILE, FOE_MIN_BREXIT, FOE_MIN_HECTO, FOE_MIN_SNIPER}
  26. #define FOE_ADD {0, FOE_ADD_GUN, FOE_ADD_CUTTER, FOE_ADD_DISPER, FOE_ADD_PHOTO, FOE_ADD_MISSILE, FOE_ADD_BREXIT, FOE_ADD_HECTO, FOE_ADD_SNIPER}
  27. class Foe : public SpaceShip
  28. {
  29. /// Méthodes
  30. public:
  31. Foe();
  32. Foe(Uint16 speed);
  33. virtual ~Foe();
  34. virtual void update(); // Colisions et mouvements de l'IA
  35. /// Attributs
  36. protected:
  37. Uint16 m_speed;
  38. Uint32 m_loading[SHOT_NB]; // date du dernier tir
  39. Uint32 m_delay[SHOT_NB]; // temps de recharge
  40. };
  41. #endif // FOE_H