diff options
| author | Stanislaw Halik <sthalik@misaki.pl> | 2024-04-13 17:42:30 +0200 |
|---|---|---|
| committer | Stanislaw Halik <sthalik@misaki.pl> | 2024-04-13 17:42:30 +0200 |
| commit | 2260ab972100f1d6679690b730b6f0aa7409b014 (patch) | |
| tree | 18386a59968c1e7933db702281fc13fe62ff9b1e /editor | |
| parent | cb13eb86db3593e723ce06c48a5cb2c94505d6ae (diff) | |
instantiate scenery in a uniform manner
Now using world::make_scenery().
Add `std::monostate` to the `scenery_proto` variant to catch potential
bugs.
Diffstat (limited to 'editor')
| -rw-r--r-- | editor/scenery-editor.cpp | 18 |
1 files changed, 1 insertions, 17 deletions
diff --git a/editor/scenery-editor.cpp b/editor/scenery-editor.cpp index 28d94263..55e194bf 100644 --- a/editor/scenery-editor.cpp +++ b/editor/scenery-editor.cpp @@ -103,25 +103,9 @@ start: } else { - const auto sc_type = s.proto.scenery_type(); // todo check collision at pos - switch (sc_type) - { - case scenery_type::none: - case scenery_type::COUNT: - break; - case scenery_type::generic: - w.make_object<generic_scenery>(w.make_id(), pos, std::get<generic_scenery_proto>(s.proto.subtype), s.proto); - goto ok; - case scenery_type::door: - w.make_object<door_scenery>(w.make_id(), pos, std::get<door_scenery_proto>(s.proto.subtype), s.proto); - goto ok; - } - fm_abort("place_tile: wrong scenery type %d", (int)sc_type); -ok: - void(); + w.make_scenery(w.make_id(), pos, scenery_proto(s.proto)); } - } } // namespace floormat |
