4
4
import net .minecraft .MethodsReturnNonnullByDefault ;
5
5
import net .minecraft .core .BlockPos ;
6
6
import net .minecraft .core .Direction ;
7
+ import net .minecraft .core .HolderLookup ;
7
8
import net .minecraft .core .NonNullList ;
8
9
import net .minecraft .nbt .CompoundTag ;
9
10
import net .minecraft .network .FriendlyByteBuf ;
19
20
import net .minecraft .world .level .block .entity .BlockEntityType ;
20
21
import net .minecraft .world .level .block .state .BlockState ;
21
22
import dev .tonimatas .krystalcraft .inventory .ModInventory ;
23
+ import org .jetbrains .annotations .Nullable ;
22
24
23
25
@ MethodsReturnNonnullByDefault
24
26
public abstract class BaseBlockEntity extends BlockEntity implements ExtraDataMenuProvider , ModInventory , WorldlyContainer {
@@ -32,7 +34,7 @@ public BaseBlockEntity(BlockEntityType<?> blockEntityType, BlockPos blockPos, Bl
32
34
public abstract void tick ();
33
35
34
36
@ Override
35
- public AbstractContainerMenu createMenu (int i , Inventory inventory , Player player ) {
37
+ public @ Nullable AbstractContainerMenu createMenu (int i , Inventory inventory , Player player ) {
36
38
return null ;
37
39
}
38
40
@@ -50,19 +52,21 @@ public void writeExtraData(ServerPlayer player, FriendlyByteBuf buffer) {
50
52
buffer .writeBlockPos (this .getBlockPos ());
51
53
}
52
54
55
+
53
56
@ Override
54
- public void load (CompoundTag compoundTag ) {
55
- super .load (compoundTag );
57
+ protected void loadAdditional (CompoundTag compoundTag , HolderLookup .Provider provider ) {
58
+ super .loadAdditional (compoundTag , provider );
59
+
56
60
if (getInventorySize () > 0 ) {
57
- ContainerHelper .loadAllItems (compoundTag , this .inventory );
61
+ ContainerHelper .loadAllItems (compoundTag , this .inventory , provider );
58
62
}
59
63
}
60
64
61
65
@ Override
62
- protected void saveAdditional (CompoundTag compoundTag ) {
63
- super .saveAdditional (compoundTag );
66
+ protected void saveAdditional (CompoundTag compoundTag , HolderLookup . Provider provider ) {
67
+ super .saveAdditional (compoundTag , provider );
64
68
if (getInventorySize () > 0 ) {
65
- ContainerHelper .saveAllItems (compoundTag , this .inventory );
69
+ ContainerHelper .saveAllItems (compoundTag , this .inventory , provider );
66
70
}
67
71
}
68
72
@@ -90,10 +94,9 @@ public NonNullList<ItemStack> getItems() {
90
94
return inventory ;
91
95
}
92
96
97
+
93
98
@ Override
94
- public CompoundTag getUpdateTag () {
95
- return this .saveWithoutMetadata ();
99
+ public CompoundTag getUpdateTag (HolderLookup . Provider provider ) {
100
+ return this .saveWithoutMetadata (provider );
96
101
}
97
-
98
-
99
102
}
0 commit comments