aboutsummaryrefslogtreecommitdiff
path: root/src/engine/draw_screen.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/draw_screen.h')
-rw-r--r--src/engine/draw_screen.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/engine/draw_screen.h b/src/engine/draw_screen.h
new file mode 100644
index 0000000..9130842
--- /dev/null
+++ b/src/engine/draw_screen.h
@@ -0,0 +1,34 @@
+#pragma once
+
+
+// every function call for drawing the screen goes here.
+#include "engine/maths.h"
+#include "ppu/ppu.h"
+#include "engine/level_const.h"
+#include "engine/sprite_controller.h"
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include "engine/camera.h"
+
+#define hh_max_x_size 40
+#define hh_max_y_size 30
+
+/** @brief return a single tile from world binary */
+uint8_t hh_world_to_tile(vec2 pos);
+
+/** @brief shift to level if viewport changed position */
+vec_cor hh_draw_screen(vec2 player);
+
+/** @brief send data to BAM memory from binary level */
+void hh_setup_screen(hh_level_entity currentlevel);
+/** @brief updates screen based on view and maybe player position if it needs to turn back*/
+void hh_update_screen(vec2 view, vec2 );
+
+/** @brief send black screen to background memory */
+void hh_clear_screen();
+
+/** @brief clears all sprite data */
+void hh_clear_sprite();
+/** @brief send data to BAM memory from binary from shop */
+void hh_setup_Shop();