summaryrefslogtreecommitdiff
path: root/src/level-types.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/level-types.hpp')
-rw-r--r--src/level-types.hpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/level-types.hpp b/src/level-types.hpp
index ce0d060..46cbad2 100644
--- a/src/level-types.hpp
+++ b/src/level-types.hpp
@@ -1,8 +1,12 @@
#ifndef PKE_LEVEL_TYPES_HPP
#define PKE_LEVEL_TYPES_HPP
+#include "camera.hpp"
#include "components.hpp"
+#include "player-input.hpp"
+#include "static-ui.hpp"
#include "vendor-glm-include.hpp"
+
#include "pk.h"
struct scene_instance {
@@ -16,11 +20,17 @@ const uint8_t LEVEL_NAME_MAX_LEN = 16;
#define pke_level_name_printf_format "%16s"
struct pke_level : public Entity_Base {
- char *file_path = nullptr;
+ pk_cstr file_path = {};
struct pk_membucket *bkt = nullptr;
char name[LEVEL_NAME_MAX_LEN] = {'\0'};
LevelHandle levelHandle = LevelHandle_MAX;
pk_arr_t<scene_instance> scene_instances;
+ pk_arr_t<PkeCamera *> cameras;
+ pk_arr_t<pke_ui_box *> root_ui_boxes;
+ pk_arr_t<pke_input_action_set_handle> input_handles;
+ PkeCallback pke_cb_tick = {};
+ PkeCallback pke_cb_spinup = {};
+ PkeCallback pke_cb_teardown = {};
};
#endif /* PKE_LEVEL_TYPES_HPP */