mirror of
https://github.com/DramaticShape/DramaticShapeVoxelMod.git
synced 2026-08-12 19:00:51 +02:00
gym entrance mat lies flat; fence posts never ride a support
The mat inside every gym door ($06 over $16, 28 placements and nowhere else) is drawn from straight above, but $06 had been swept into the wall band -- so the mat's top half stood as a 16px box in the doorway, and the cell rule could not save it because a pin outranks the cell. Both halves are now pinned ground. And the `post` pool no longer takes the support lift. A post stands IN the ground by definition rather than on top of something, but its cell is blocked like any other post, so the blocked-cell test that separates furniture-top props from floor seats cannot tell it apart. Pinning the cliff slope chain gave posts along a cliff edge an authored box to their south and hoisted them onto the clifftop.
This commit is contained in:
+9
-1
@@ -1930,8 +1930,16 @@ function Structures.buildObject(S, map, region, cluster,
|
||||
-- knows which is which: a thing that sits ON furniture occupies a
|
||||
-- blocked cell (you cannot walk through the gym statue, Red's plant,
|
||||
-- the PC), while a seat you walk up to is in a walkable one.
|
||||
--
|
||||
-- FENCE POSTS (the `post` pool, force == "opaque") never take the lift
|
||||
-- at all. A post stands in the ground by definition -- it is not a
|
||||
-- thing set down on top of something -- and its cell is blocked like
|
||||
-- any other post, so the test above cannot tell it apart. Lavender
|
||||
-- Town is where it showed: pinning the cliff's slope chain gave the
|
||||
-- posts along the cliff edge an authored 16px box to their south, and
|
||||
-- they were hoisted to stand on the clifftop instead of the path.
|
||||
local baseY, support = 0, nil
|
||||
if force then
|
||||
if force and force ~= "opaque" then
|
||||
local bs = S.shapeAt[keyOf(cluster.minX, cluster.maxY + 1)]
|
||||
local blocked = not map:isWalkableCell(math.floor(cluster.minX / 2),
|
||||
math.floor(cluster.maxY / 2))
|
||||
|
||||
Reference in New Issue
Block a user