1 #ifndef LEVEL_EDITOR_H_
2 #define LEVEL_EDITOR_H_
4 typedef struct LevelEditor LevelEditor;
5 typedef struct RectLayer RectLayer;
6 typedef struct PointLayer PointLayer;
8 // TODO(#820): LevelEditor cannot generate a level file
10 LevelEditor *create_level_editor(RectLayer *boxes_layer,
11 RectLayer *platforms_layer,
12 RectLayer *back_platforms_layer,
13 PointLayer *goals_layer,
14 PlayerLayer *player_layer_render,
15 RectLayer *lava_editor);
16 void destroy_level_editor(LevelEditor *level_editor);
18 int level_editor_render(const LevelEditor *level_editor,
20 int level_editor_event(LevelEditor *level_editor,
21 const SDL_Event *event,
22 const Camera *camera);
23 int level_editor_focus_camera(LevelEditor *level_editor,
26 const RectLayer *level_editor_boxes(const LevelEditor *level_editor);
27 const RectLayer *level_editor_platforms(const LevelEditor *level_editor);
28 const RectLayer *level_editor_back_platforms(const LevelEditor *level_editor);
29 const PointLayer *level_editor_goals_layer(const LevelEditor *level_editor);
30 const PlayerLayer *level_editor_player_layer(const LevelEditor *level_editor);
31 const RectLayer *level_editor_lava_layer(const LevelEditor *level_editor);
33 #endif // LEVEL_EDITOR_H_