The bug
You can't place end crystals on fire that's on top of bedrock or obsidian blocks.
Expected behavior
Since end crystal entities with a bedrock or obsidian support block display fire in its position, the possibility to place end crystals on burning bedrock or obsidian should be there.
Code analysis
Code analysis by @unknown can be found in this comment.
Linked issues
relates to 1
Comments 6
Can confirm in 1.18.2 and 22w11a. Here's a code analysis of this issue.
Code Analysis:
The following is based on a decompiled version of Minecraft 1.18.2 using MCP-Reborn.
net.minecraft.world.item.EndCrystalItem.java
public class EndCrystalItem extends Item {
...
public InteractionResult useOn(UseOnContext $uoc) {
Level level = $uoc.getLevel();
BlockPos blockpos = $uoc.getClickedPos();
BlockState blockstate = level.getBlockState(blockpos);
if (!blockstate.is(Blocks.OBSIDIAN) && !blockstate.is(Blocks.BEDROCK)) {
return InteractionResult.FAIL;
} else {
BlockPos blockpos1 = blockpos.above();
if (!level.isEmptyBlock(blockpos1)) {
return InteractionResult.FAIL;
} else {
...
If we look at the above class, we can see that the code specifically checks to see whether or not the block above the desired placing location is empty (is air), before being able to place down an end crystal. This is evident through the following line of code:
if (!level.isEmptyBlock(blockpos1))
Since fire isn't air, the placement attempt fails, resulting in end crystals not being able to be placed on burning bedrock or obsidian.
Affects 20w49a