mojira.dev
MC-227161

Inconsistency: Boolean data is of type String in the BlockStateTag tag

In the BlockStateTag tag all the values that must be Boolean are strings, which does not make sense since it only has 2 possibilities, true or false

For example

/give @p stone_slab{BlockStateTag:{waterlogged:"true"}}

should be

/give @p stone_slab{BlockStateTag:{waterlogged:true}}

or

 

/give @p stone_slab{BlockStateTag:{waterlogged:1b}}

 

Values that use the BlockStateTag tag and should be Boolean are:

open, occupied, powered, lit, has_bottle_0, has_bottle_1, has_bottle_2, drag, signal_fire, waterlogged, down, east, north, south, up, west, conditional, inverted, triggered, eye, in_wall, snowy, enabled, hanging, persistent, has_book, extended, short, locked, bottom, unstable, attached, disarmed

Comments 2

This is not just booleans, integer states are also stored as string

Yes, but in the case of simply putting the integer it accepts it as if I put it as a string

In the following case it gives me an item that when I put it there are 3 candles but they are off

/give @s candle{BlockStateTag:{candles:3,lit:true}}

Zailer43

(Unassigned)

Confirmed

(Unassigned)

NBT, blockstate, command

1.16.5, 1.17 Pre-release 3, 1.17, 1.17.1, 1.18, 1.19.1, 1.20.4

Retrieved