From f97fc145a3e70598446c3672dcbb528e181777c1 Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Sun, 24 Mar 2024 23:35:45 +0100 Subject: editor: clamp bbox_size min value to {1,1} --- editor/inspect-types.cpp | 1 + src/object.cpp | 2 ++ 2 files changed, 3 insertions(+) diff --git a/editor/inspect-types.cpp b/editor/inspect-types.cpp index c42d4eb4..a06f8fdb 100644 --- a/editor/inspect-types.cpp +++ b/editor/inspect-types.cpp @@ -82,6 +82,7 @@ struct entity_accessors { [](const object& x) { return x.bbox_size; }, [](object& x, Vector2ub value) { x.set_bbox(x.offset, x.bbox_offset, value, x.pass); }, [](const object& x) { return x.pass == pass_mode::pass ? st::readonly : st::enabled; }, + constantly(constraints::range{{1,1}, {255, 255}}), }, E::type::field{"ephemeral"_s, [](const object& x) { return x.ephemeral; }, diff --git a/src/object.cpp b/src/object.cpp index 4339e055..b652a439 100644 --- a/src/object.cpp +++ b/src/object.cpp @@ -348,6 +348,8 @@ object::operator object_proto() const void object::set_bbox(Vector2b offset_, Vector2b bb_offset_, Vector2ub bb_size_, pass_mode pass) { + fm_assert(Vector2ui(bb_size_).product() != 0); + if (offset != offset_) if (!is_dynamic()) c->mark_scenery_modified(); -- cgit v1.2.3