diff --git a/src/main/java/com/atsuishio/superbwarfare/block/FuMO25Block.java b/src/main/java/com/atsuishio/superbwarfare/block/FuMO25Block.java index 9279678c8..092da2111 100644 --- a/src/main/java/com/atsuishio/superbwarfare/block/FuMO25Block.java +++ b/src/main/java/com/atsuishio/superbwarfare/block/FuMO25Block.java @@ -70,12 +70,18 @@ public class FuMO25Block extends Block implements EntityBlock { @Override public @Nullable BlockEntityTicker getTicker(Level pLevel, @NotNull BlockState pState, @NotNull BlockEntityType pBlockEntityType) { - if (!pLevel.isClientSide && pBlockEntityType == ModBlockEntities.FUMO_25.get()) { - return FuMO25BlockEntity::serverTick; + if (!pLevel.isClientSide) { + return createTickerHelper(pBlockEntityType, ModBlockEntities.FUMO_25.get(), FuMO25BlockEntity::serverTick); } return null; } + @Nullable + @SuppressWarnings("unchecked") + protected static BlockEntityTicker createTickerHelper(BlockEntityType pServerType, BlockEntityType pClientType, BlockEntityTicker pTicker) { + return pClientType == pServerType ? (BlockEntityTicker) pTicker : null; + } + @Override @ParametersAreNonnullByDefault public void onRemove(BlockState pState, Level pLevel, BlockPos pPos, BlockState pNewState, boolean pMovedByPiston) {