You can choose state when you adding block component
<block state="minecraft:stone">
</block>
but after you can't change it
how about add new tag with state? something like
<block>
<state>minecraft:stone</state>
</block>
then you can change it like text in label:
val label = rootComponent.childById(LabelComponent::class.java, "label")
label.text(Text.literal("something"))
//but with block
val block = rootComponent.childById(BlockComponent::class.java, "block")
block.state(/*block state here*/)
You can choose state when you adding block component
but after you can't change it how about add new tag with state? something like
then you can change it like text in label: