home *** CD-ROM | disk | FTP | other *** search
/ PC Format (South-Africa) 2001 June / PCFJune.iso / Xenon / XenonSource.exe / xenon / includes / clone.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-07-19  |  1.3 KB  |  63 lines

  1. //-------------------------------------------------------------
  2. //
  3. // Class:    CClone
  4. //
  5. // Author:    John M Phillips
  6. //
  7. // Started:    06/05/00
  8. //
  9. // Base:    CUpgrade
  10. //
  11. // Derived:    None
  12. //
  13. //-------------------------------------------------------------
  14.  
  15. #ifndef _INCLUDE_CLONE_H
  16. #define _INCLUDE_CLONE_H
  17.  
  18. #include "upgrade.h"
  19. #include "cloneengine.h"
  20. #include "weapon.h"
  21.  
  22. //-------------------------------------------------------------
  23.  
  24. const int CLONE_FRAMES = 16;
  25. const int CLONE_DIVE_OFFSET = 16;
  26. const int CLONE_DIVE_FRAMES = 3;
  27. const int CLONE_CLOAK_FRAME = 19;
  28.  
  29. const float CLONE_RADIUS = 80.f;
  30. const float CLONE_ANGLE_STEP = 0.6f;        // degrees
  31.  
  32. //-------------------------------------------------------------
  33.  
  34. class CClone : public CUpgrade
  35. {
  36.     private:
  37.         float m_min_angle;
  38.         float m_max_angle;
  39.  
  40.         float m_current_angle;
  41.         float m_required_angle;
  42.  
  43.         CCloneEngine *m_engine;
  44.  
  45.     public:
  46.         CClone();
  47.         virtual ~CClone();
  48.         const ActorInfo& getActorInfo() { return ActorInfoList[INFO_CLONE]; };
  49.  
  50.         bool activate();
  51.         void kill();
  52.  
  53.         bool update(Controls *controls);
  54.  
  55.         void setAngleRange(float min,float max);
  56.         void setAngle(float angle,bool set = false);
  57. };
  58.  
  59. //-------------------------------------------------------------
  60.  
  61. #endif
  62.  
  63.