Two live-testing regressions:
- block.isSolid is not a reliable member of the @minecraft/server Block
API in BDS 1.26 — it returned undefined, so !b.isSolid was always
true and every ground cell failed. Replaced with !b.isAir &&
!b.isLiquid (same predicate the clear-space check below already
uses), which correctly accepts grass/dirt/stone and only rejects air
or water/lava.
- The half-slab hammock geometry was silently rejected and rendered
invisible. The block-model parser wants the legacy 1.12.0 format
with simple "uv": [0, 0], not 1.21.0 with per-face UV objects.
Rewritten hammock_slab.geo.json to match the working
addon/spark_pet_RP/models/blocks/dragon_basket.geo.json format.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- Hammock now uses a custom geometry.silverlabs.hammock_slab (8-voxel
tall half-slab instead of a full cube), matching its thin collision
box so the block reads visually as a hammock cradle, not a brick.
- Tent placement now projects the player's feet down to the nearest
solid block (up to 3 blocks) before picking the base Y, so mid-jump
fractional positions or standing-on-slab cases don't mis-place the
footprint one block too high.
- Failure messages now include the exact failing cell coordinates and
the block type that's in the way, so we can diagnose live pitch
attempts without guesswork.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>