main.c 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #include <furi.h>
  2. #include "engine.h"
  3. #include "game_engine.h"
  4. #include "game_manager_i.h"
  5. #include "level_i.h"
  6. #include "entity_i.h"
  7. // static void frame_cb(GameEngine *engine, Canvas *canvas, InputState input, void *context)
  8. // {
  9. // UNUSED(engine);
  10. // GameManager *game_manager = context;
  11. // game_manager_input_set(game_manager, input);
  12. // game_manager_update(game_manager);
  13. // game_manager_render(game_manager, canvas);
  14. // }
  15. // int32_t game_app(void *p)
  16. // {
  17. // UNUSED(p);
  18. // GameManager *game_manager = game_manager_alloc();
  19. // GameEngineSettings settings = game_engine_settings_init();
  20. // settings.target_fps = game.target_fps;
  21. // settings.show_fps = game.show_fps;
  22. // settings.always_backlight = game.always_backlight;
  23. // settings.frame_callback = frame_cb;
  24. // settings.context = game_manager;
  25. // GameEngine *engine = game_engine_alloc(settings);
  26. // game_manager_engine_set(game_manager, engine);
  27. // void *game_context = NULL;
  28. // if (game.context_size > 0)
  29. // {
  30. // game_context = malloc(game.context_size);
  31. // game_manager_game_context_set(game_manager, game_context);
  32. // }
  33. // game.start(game_manager, game_context);
  34. // game_engine_run(engine);
  35. // game_engine_free(engine);
  36. // game_manager_free(game_manager);
  37. // game.stop(game_context);
  38. // if (game_context)
  39. // {
  40. // free(game_context);
  41. // }
  42. // int32_t entities = entities_get_count();
  43. // if (entities != 0)
  44. // {
  45. // FURI_LOG_E("Game", "Memory leak detected: %ld entities still allocated", entities);
  46. // return -1;
  47. // }
  48. // return 0;
  49. // }