Skip to content

Commit 631e183

Browse files
committed
refactor: make the component patch non-null
document storage methods
1 parent 1a1fa75 commit 631e183

File tree

84 files changed

+2882
-1862
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

84 files changed

+2882
-1862
lines changed

src/main/java/dev/galacticraft/machinelib/api/block/MachineBlock.java

+19-17
Original file line numberDiff line numberDiff line change
@@ -38,14 +38,17 @@
3838
import dev.galacticraft.machinelib.impl.block.entity.MachineBlockEntityTicker;
3939
import net.minecraft.client.gui.screens.Screen;
4040
import net.minecraft.core.BlockPos;
41+
import net.minecraft.core.component.DataComponentPatch;
4142
import net.minecraft.core.component.DataComponents;
4243
import net.minecraft.core.registries.BuiltInRegistries;
43-
import net.minecraft.nbt.*;
44+
import net.minecraft.nbt.ByteTag;
45+
import net.minecraft.nbt.CompoundTag;
46+
import net.minecraft.nbt.NbtOps;
47+
import net.minecraft.nbt.Tag;
4448
import net.minecraft.network.chat.Component;
4549
import net.minecraft.network.chat.MutableComponent;
4650
import net.minecraft.resources.ResourceLocation;
4751
import net.minecraft.server.level.ServerPlayer;
48-
import net.minecraft.world.InteractionHand;
4952
import net.minecraft.world.InteractionResult;
5053
import net.minecraft.world.entity.LivingEntity;
5154
import net.minecraft.world.entity.item.ItemEntity;
@@ -84,7 +87,7 @@
8487
/**
8588
* The base block for all machines.
8689
*
87-
* @see MachineBlockEntity
90+
* @param <Machine> The machine block entity attached to this block.
8891
*/
8992
public class MachineBlock<Machine extends MachineBlockEntity> extends BaseEntityBlock {
9093
public static final MapCodec<MachineBlock<? extends MachineBlockEntity>> CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group(
@@ -256,9 +259,9 @@ public void appendHoverText(ItemStack stack, TooltipContext context, List<Compon
256259
}
257260

258261
@Override
259-
public final @NotNull InteractionResult useWithoutItem(BlockState state, @NotNull Level world, BlockPos pos, Player player, BlockHitResult hit) {
260-
if (!world.isClientSide) {
261-
BlockEntity entity = world.getBlockEntity(pos);
262+
public final @NotNull InteractionResult useWithoutItem(BlockState state, @NotNull Level level, BlockPos pos, Player player, BlockHitResult hit) {
263+
if (!level.isClientSide) {
264+
BlockEntity entity = level.getBlockEntity(pos);
262265
if (entity instanceof MachineBlockEntity machine) {
263266
SecuritySettings security = machine.getSecurity();
264267

@@ -274,21 +277,21 @@ public void appendHoverText(ItemStack stack, TooltipContext context, List<Compon
274277
}
275278

276279
@Override
277-
public BlockState playerWillDestroy(Level world, BlockPos pos, BlockState state, Player player) {
278-
super.playerWillDestroy(world, pos, state, player);
279-
BlockEntity entity = world.getBlockEntity(pos);
280+
public BlockState playerWillDestroy(Level level, BlockPos pos, BlockState state, Player player) {
281+
super.playerWillDestroy(level, pos, state, player);
282+
BlockEntity entity = level.getBlockEntity(pos);
280283
if (entity instanceof MachineBlockEntity machine) {
281284
if (!machine.areDropsDisabled()) {
282285
MachineItemStorage inv = machine.itemStorage();
283286
List<ItemEntity> entities = new ArrayList<>();
284287
for (ItemResourceSlot slot : inv.getSlots()) {
285288
if (!slot.isEmpty()) {
286-
entities.add(new ItemEntity(world, pos.getX(), pos.getY() + 1, pos.getZ(), ItemStackUtil.create(slot)));
287-
slot.set(null, null, 0);
289+
entities.add(new ItemEntity(level, pos.getX(), pos.getY() + 1, pos.getZ(), ItemStackUtil.create(slot)));
290+
slot.set(null, DataComponentPatch.EMPTY, 0);
288291
}
289292
}
290293
for (ItemEntity itemEntity : entities) {
291-
world.addFreshEntity(itemEntity);
294+
level.addFreshEntity(itemEntity);
292295
}
293296
}
294297
}
@@ -310,7 +313,7 @@ public BlockState playerWillDestroy(Level world, BlockPos pos, BlockState state,
310313
BlockEntity blockEntity = reader.getBlockEntity(pos);
311314
if (blockEntity instanceof MachineBlockEntity machine) {
312315
CompoundTag config = new CompoundTag();
313-
config.put(Constant.Nbt.CONFIGURATION, machine.getIOConfig().createTag());
316+
config.put(Constant.Nbt.CONFIGURATION, machine.getIoConfig().createTag());
314317
config.put(Constant.Nbt.SECURITY, machine.getSecurity().createTag());
315318
config.put(Constant.Nbt.REDSTONE_MODE, machine.getRedstoneMode().createTag());
316319
BlockItem.setBlockEntityData(stack, blockEntity.getType(), config);
@@ -321,17 +324,16 @@ public BlockState playerWillDestroy(Level world, BlockPos pos, BlockState state,
321324

322325
@Nullable
323326
@Override
324-
public <B extends BlockEntity> BlockEntityTicker<B> getTicker(Level world, BlockState state, BlockEntityType<B> type) {
325-
return !world.isClientSide ? MachineBlockEntityTicker.getInstance() : null;
327+
public <B extends BlockEntity> BlockEntityTicker<B> getTicker(Level level, BlockState state, BlockEntityType<B> type) {
328+
return !level.isClientSide ? MachineBlockEntityTicker.getInstance() : null;
326329
}
327330

328331
/**
329-
* Returns this machine's description for the tooltip when left shift is pressed.
332+
* {@return this machine's detailed tooltip description} Shown when left shift is pressed.
330333
*
331334
* @param stack The item stack (the contained item is this block).
332335
* @param context The context of the tooltip.
333336
* @param flag Flags to determine if extra information should be added
334-
* @return This machine's description.
335337
*/
336338
public @Nullable Component shiftDescription(ItemStack stack, TooltipContext context, TooltipFlag flag) {
337339
return Component.translatable(this.getDescriptionId() + ".description");

0 commit comments

Comments
 (0)