diff options
author | Stanislaw Halik <sthalik@misaki.pl> | 2024-02-13 14:58:17 +0100 |
---|---|---|
committer | Stanislaw Halik <sthalik@misaki.pl> | 2024-02-13 21:22:32 +0100 |
commit | 8f7b089e246b5e55d1cacb756da4219bb751236f (patch) | |
tree | b302742a6cdc70c393c6020bc8e3b4d1bc08d348 /loader/impl.hpp | |
parent | 9b70fb78e70a509ba5bfa1c1d0a839eddd0902dc (diff) |
scenery loader now works
Diffstat (limited to 'loader/impl.hpp')
-rw-r--r-- | loader/impl.hpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/loader/impl.hpp b/loader/impl.hpp index b4c8b316..007392fe 100644 --- a/loader/impl.hpp +++ b/loader/impl.hpp @@ -66,11 +66,12 @@ struct loader_impl final : loader_ std::shared_ptr<class anim_atlas> get_anim_atlas(StringView path) noexcept(false) override; // >-----> scenery >-----> - std::vector<scenery_cell> sceneries_array; - tsl::robin_map<StringView, const scenery_cell*> sceneries_map; - ArrayView<const scenery_cell> sceneries() override; - const scenery_proto& scenery(StringView name) noexcept(false) override; - void get_scenery_list(); + [[nodiscard]] static atlas_loader<struct scenery_proto>* make_scenery_atlas_loader(); + safe_ptr<atlas_loader<struct scenery_proto>> _scenery_loader{ make_scenery_atlas_loader() }; + ArrayView<const scenery_cell> scenery_list() override; + const struct scenery_proto& scenery(StringView name, loader_policy policy) override; + const scenery_cell& invalid_scenery_atlas() override; + struct scenery_proto get_scenery(StringView filename, const scenery_cell& c) noexcept(false) override; // >-----> vobjs >-----> tsl::robin_map<StringView, const struct vobj_cell*> vobj_atlas_map; |