You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

91 lines
1.5 KiB

  1. //
  2. // Neercs
  3. //
  4. // Copyright: (c) 2012 Sam Hocevar <sam@hocevar.net>
  5. //
  6. #if defined HAVE_CONFIG_H
  7. # include "config.h"
  8. #endif
  9. #if defined _WIN32
  10. # include <direct.h>
  11. #endif
  12. #if defined _XBOX
  13. # define _USE_MATH_DEFINES /* for M_PI */
  14. # include <xtl.h>
  15. # undef near /* Fuck Microsoft */
  16. # undef far /* Fuck Microsoft again */
  17. #elif defined _WIN32
  18. # define _USE_MATH_DEFINES /* for M_PI */
  19. # define WIN32_LEAN_AND_MEAN
  20. # include <windows.h>
  21. # undef near /* Fuck Microsoft */
  22. # undef far /* Fuck Microsoft again */
  23. #else
  24. # include <cmath>
  25. #endif
  26. #include <time.h>
  27. #include <caca.h>
  28. #include "core.h"
  29. #include "loldebug.h"
  30. using namespace std;
  31. using namespace lol;
  32. #include "neercs.h"
  33. #include "video/render.h"
  34. extern "C"
  35. {
  36. #include "old/neercs.h"
  37. }
  38. Neercs::Neercs(int argc, char **argv)
  39. : m_term(new Term(ivec2(45, 16))),
  40. m_render(new Render(m_term->GetCaca())),
  41. m_ready(false)
  42. {
  43. Ticker::Ref(m_term);
  44. Ticker::Ref(m_render);
  45. }
  46. void Neercs::TickGame(float seconds)
  47. {
  48. WorldEntity::TickGame(seconds);
  49. }
  50. void Neercs::TickDraw(float seconds)
  51. {
  52. WorldEntity::TickDraw(seconds);
  53. }
  54. Neercs::~Neercs()
  55. {
  56. Ticker::Unref(m_term);
  57. Ticker::Unref(m_render);
  58. }
  59. int main(int argc, char **argv)
  60. {
  61. Application app("Neercs", ivec2(800, 600), 60.0f);
  62. #if defined _MSC_VER && !defined _XBOX
  63. _chdir("..");
  64. #elif defined _WIN32 && !defined _XBOX
  65. _chdir("../..");
  66. #endif
  67. new Neercs(argc, argv);
  68. new DebugFps(2, 2);
  69. app.ShowPointer(false);
  70. app.Run();
  71. return EXIT_SUCCESS;
  72. }