mojira.dev
MC-192791

Doors' block states cannot be set if another door half exists

If you try setting a door with the block state provided, it only works if there's no other door half.

  1. /setblock ~ ~ ~ oak_door[open=true,half=lower]
  2. /setblock ~ ~ ~ oak_door[open=false,half=lower]
  3. works fine

  4. /setblock ~ ~1 ~ oak_door[open=false,half=upper]
  5. /setblock ~ ~ ~ oak_door[open=true,half=lower]
  6. now it failed

This affects the states: open, powered, facing and hinge. Changing half works fine, but breaks the door (obviously).

This worked fine in 1.15 (and the other door half would get the same block states, aside from half set to the new values).

Linked issues

Comments 9

Asteraoth

@unknown, please do not leave "Please fix this faster ;(" comments on issues.

Avoma

Can confirm that this is still an issue in 20w51a.

user-94f8e

Maybe Mojang can fix this to create new sorts of block model parts.

normal_blocks = 16x16
half_blocks = 8x16
double_blocks = 32x16

user-f2760

That'd require a hitbox rewrite, as hitboxes cannot be targetted if the line of sight doesn't go through the block space it is in (try aiming at an extended piston's head, at the point near the base, you can't.)

This can easily be fixed by just allowing the command, and syncing up the other door half's non-half blockstates, like it did in 1.15 and earlier.

Avoma

Can confirm in 1.19.

NBG-bootmgr

Can confirm in 1.19.2.Relates to MC-255254

NBG-bootmgr

in 1.19.3-rc1

 

kcrca

A simple fix might be just to define the behavior of setblock/fill for multi-block "blocks" (doors, tall grass, ...). Define

setblock 0 0 0 oak_door[facing=east]

to implicitly mean to set (0 0 0) to the bottom half and (0 1 0) to the top half, copying any other state. (Maybe this is what Dhranios meant, it sort of sounds like it, but I wasn't doing this in 1.15 so I'm not sure.)

 

user-f2760

That is how it behaved, yes,if the block at 0 1 0 was the same type of door already. It didn't create 2 blocks at once. 

user-f2760

(Unassigned)

Community Consensus

Platform

Normal

Block states

1.16.1, 1.16.2, 1.16.4, 20w45a, 20w51a, ..., 1.19.4, 1.20.1, 1.20.2, 23w43b, 1.20.3 Pre-Release 3

24w44a

Retrieved