#pragma once #include #include #include "level.hpp" #include "tileset.hpp" namespace silly::editor { class LevelPackage { public: LevelPackage(const std::string &name) : name(name) {} ~LevelPackage() = default; Tileset &get_tileset(); void add_level(TileLevel level); TileLevel &get_current_level(); void move_to_level_index(int index); const int get_current_level_index() const; const std::vector &get_levels() const; const std::string &get_name() const; private: const std::string name; Tileset tileset; std::vector levels; int currentLevelIndex; }; }