/src/IA.h

https://bitbucket.org/brunobottazzini/olympia-game · C Header · 58 lines · 52 code · 6 blank · 0 comment · 0 complexity · 08d76fb8485fe20c712532954027ebb1 MD5 · raw file

  1. #ifndef __IA_H_INCLUDED__
  2. #define __IA_H_INCLUDED__
  3. #include <irrlicht.h>
  4. using namespace irr;
  5. using namespace core;
  6. using namespace scene;
  7. using namespace video;
  8. using namespace io;
  9. using namespace gui;
  10. using namespace std;
  11. #ifdef _IRR_WINDOWS_
  12. #pragma comment(lib, "Irrlicht.lib")
  13. #pragma comment(linker, "/subsystem:windows /ENTRY:mainCRTStartup")
  14. #endif
  15. class IA{
  16. public:
  17. IA(short dificuldade);
  18. void setDificuldade(short dificuldade);
  19. void refreshExternalVariables(float velocidade_npc, float velocidade_player,vector3df posicao_npc,vector3df posicao_player, int colocacao_npc, int colocacao_player);
  20. float getVelocidadeMin();
  21. float getAceleracao();
  22. bool shouldIrunFaster();
  23. void setThinking(short number);
  24. void resetStamina();
  25. float getCurrentSpeed();
  26. private:
  27. bool isNPCBehindPL();
  28. bool isNPCSpeedGood();
  29. bool isNPCFarAwayFromPL();
  30. bool isPLSpeedTooGood();
  31. bool isMyPlaceGood();
  32. bool isNPCMaxSpeed();
  33. bool isMyStaminaGood();
  34. float rand_FloatRange(float a, float b);
  35. short dificuldade;
  36. short thinking;
  37. float velocidade_npc;
  38. float velocidade_player;
  39. float velocidade_max;
  40. float forca_max;
  41. float resistencia;
  42. float velocidade_min;
  43. int colocacao_npc;
  44. int stamina;
  45. int iteracao;
  46. int colocacao_player;
  47. vector3df posicao_npc;
  48. vector3df posicao_npc2;
  49. vector3df posicao_npc3;
  50. vector3df posicao_player;
  51. };
  52. #endif