mirror of
				https://github.com/SquidDev-CC/CC-Tweaked
				synced 2025-10-31 05:33:00 +00:00 
			
		
		
		
	Fix several deprecation warnings
- Switch to the new networking API, just doing sneaky things to make it the same as the old networking API. - Use new FabricLoader API - Don't use the static final game version, as this may change if people run the mod on newer versions.
This commit is contained in:
		| @@ -237,13 +237,7 @@ task licenseFormatAPI(type: LicenseFormat) | ||||
| publishing { | ||||
|     publications { | ||||
|         mavenJava(MavenPublication) { | ||||
|             // add all the jars that should be included when publishing to maven | ||||
|             artifact(remapJar) { | ||||
|                 builtBy remapJar | ||||
|             } | ||||
|             artifact(sourcesJar) { | ||||
|                 builtBy remapSourcesJar | ||||
|             } | ||||
|             from components.java | ||||
|         } | ||||
|     } | ||||
|  | ||||
|   | ||||
| @@ -45,11 +45,13 @@ import dan200.computercraft.shared.turtle.blocks.TileTurtle; | ||||
| import dan200.computercraft.shared.turtle.core.TurtlePlayer; | ||||
| import dan200.computercraft.shared.turtle.inventory.ContainerTurtle; | ||||
| import dan200.computercraft.shared.turtle.items.ItemTurtle; | ||||
| import dan200.computercraft.shared.turtle.upgrades.*; | ||||
| import dan200.computercraft.shared.turtle.upgrades.TurtleCraftingTable; | ||||
| import dan200.computercraft.shared.turtle.upgrades.TurtleModem; | ||||
| import dan200.computercraft.shared.turtle.upgrades.TurtleSpeaker; | ||||
| import dan200.computercraft.shared.turtle.upgrades.TurtleTool; | ||||
| import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; | ||||
| import net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityTypeBuilder; | ||||
| import net.fabricmc.fabric.api.screenhandler.v1.ScreenHandlerRegistry; | ||||
| import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags; | ||||
| import net.minecraft.core.BlockPos; | ||||
| import net.minecraft.core.cauldron.CauldronInteraction; | ||||
| import net.minecraft.resources.ResourceLocation; | ||||
| @@ -107,14 +109,14 @@ public final class Registry | ||||
|         public static final BlockMonitor MONITOR_ADVANCED = | ||||
|             register( "monitor_advanced", new BlockMonitor( properties(), () -> ModBlockEntities.MONITOR_ADVANCED ) ); | ||||
|  | ||||
|         public static final BlockComputer COMPUTER_NORMAL = | ||||
|             register( "computer_normal", new BlockComputer( properties(), ComputerFamily.NORMAL, () -> ModBlockEntities.COMPUTER_NORMAL ) ); | ||||
|         public static final BlockComputer<TileComputer> COMPUTER_NORMAL = | ||||
|             register( "computer_normal", new BlockComputer<>( properties(), ComputerFamily.NORMAL, () -> ModBlockEntities.COMPUTER_NORMAL ) ); | ||||
|  | ||||
|         public static final BlockComputer COMPUTER_ADVANCED = | ||||
|             register( "computer_advanced", new BlockComputer( properties(), ComputerFamily.ADVANCED, () -> ModBlockEntities.COMPUTER_ADVANCED ) ); | ||||
|         public static final BlockComputer<TileComputer> COMPUTER_ADVANCED = | ||||
|             register( "computer_advanced", new BlockComputer<>( properties(), ComputerFamily.ADVANCED, () -> ModBlockEntities.COMPUTER_ADVANCED ) ); | ||||
|  | ||||
|         public static final BlockComputer COMPUTER_COMMAND = | ||||
|             register( "computer_command", new BlockComputer( FabricBlockSettings.copyOf( Blocks.STONE ).strength( -1, 6000000.0F ), ComputerFamily.COMMAND, () -> ModBlockEntities.COMPUTER_COMMAND ) ); | ||||
|         public static final BlockComputer<TileCommandComputer> COMPUTER_COMMAND = | ||||
|             register( "computer_command", new BlockComputer<>( FabricBlockSettings.copyOf( Blocks.STONE ).strength( -1, 6000000.0F ), ComputerFamily.COMMAND, () -> ModBlockEntities.COMPUTER_COMMAND ) ); | ||||
|  | ||||
|         public static final BlockTurtle TURTLE_NORMAL = | ||||
|             register( "turtle_normal", new BlockTurtle( turtleProperties(), ComputerFamily.NORMAL, () -> ModBlockEntities.TURTLE_NORMAL ) ); | ||||
| @@ -155,7 +157,7 @@ public final class Registry | ||||
|  | ||||
|         private static BlockBehaviour.Properties modemProperties() | ||||
|         { | ||||
|             return FabricBlockSettings.copyOf( Blocks.STONE ).breakByHand( true ).breakByTool( FabricToolTags.PICKAXES ).strength( 1.5f ); | ||||
|             return FabricBlockSettings.copyOf( Blocks.STONE ).breakByHand( true ).strength( 1.5f ); | ||||
|         } | ||||
|     } | ||||
|  | ||||
| @@ -301,7 +303,7 @@ public final class Registry | ||||
|     { | ||||
|         public static final EntityType<TurtlePlayer> TURTLE_PLAYER = | ||||
|             net.minecraft.core.Registry.register( net.minecraft.core.Registry.ENTITY_TYPE, new ResourceLocation( MOD_ID, "turtle_player" ), | ||||
|             EntityType.Builder.<TurtlePlayer>createNothing( MobCategory.MISC ).noSave().noSummon().sized( 0, 0 ).build( ComputerCraft.MOD_ID + ":turtle_player" ) ); | ||||
|                 EntityType.Builder.<TurtlePlayer>createNothing( MobCategory.MISC ).noSave().noSummon().sized( 0, 0 ).build( ComputerCraft.MOD_ID + ":turtle_player" ) ); | ||||
|     } | ||||
|  | ||||
|     public static class ModContainers | ||||
|   | ||||
| @@ -340,7 +340,7 @@ public class ServerComputer extends ServerTerminal implements IComputer, IComput | ||||
|     @Override | ||||
|     public String getHostString() | ||||
|     { | ||||
|         return String.format( "ComputerCraft %s (Minecraft %s)", ComputerCraftAPI.getInstalledVersion(), SharedConstants.VERSION_STRING ); | ||||
|         return String.format( "ComputerCraft %s (Minecraft %s)", ComputerCraftAPI.getInstalledVersion(), SharedConstants.getCurrentVersion().getName() ); | ||||
|     } | ||||
|  | ||||
|     @Nonnull | ||||
|   | ||||
| @@ -15,11 +15,12 @@ import it.unimi.dsi.fastutil.objects.Object2IntMap; | ||||
| import it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap; | ||||
| import me.shedaniel.cloth.api.utils.v1.GameInstanceUtils; | ||||
| import net.fabricmc.api.EnvType; | ||||
| import net.fabricmc.fabric.api.network.ClientSidePacketRegistry; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import net.fabricmc.fabric.api.network.ServerSidePacketRegistry; | ||||
| import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; | ||||
| import net.fabricmc.fabric.api.networking.v1.PacketSender; | ||||
| import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; | ||||
| import net.fabricmc.loader.api.FabricLoader; | ||||
| import net.minecraft.client.Minecraft; | ||||
| import net.minecraft.client.multiplayer.ClientPacketListener; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
| import net.minecraft.network.protocol.game.ClientboundCustomPayloadPacket; | ||||
| import net.minecraft.network.protocol.game.ServerboundCustomPayloadPacket; | ||||
| @@ -27,6 +28,7 @@ import net.minecraft.resources.ResourceLocation; | ||||
| import net.minecraft.server.MinecraftServer; | ||||
| import net.minecraft.server.level.ServerChunkCache; | ||||
| import net.minecraft.server.level.ServerPlayer; | ||||
| import net.minecraft.server.network.ServerGamePacketListenerImpl; | ||||
| import net.minecraft.world.entity.player.Player; | ||||
| import net.minecraft.world.level.Level; | ||||
| import net.minecraft.world.level.chunk.LevelChunk; | ||||
| @@ -50,12 +52,8 @@ public final class NetworkHandler | ||||
|  | ||||
|     public static void setup() | ||||
|     { | ||||
|         ServerSidePacketRegistry.INSTANCE.register( ID, NetworkHandler::receive ); | ||||
|         if( FabricLoader.getInstance() | ||||
|             .getEnvironmentType() == EnvType.CLIENT ) | ||||
|         { | ||||
|             ClientSidePacketRegistry.INSTANCE.register( ID, NetworkHandler::receive ); | ||||
|         } | ||||
|         ServerPlayNetworking.registerGlobalReceiver( ID, NetworkHandler::receive ); | ||||
|         if( FabricLoader.getInstance().getEnvironmentType() == EnvType.CLIENT ) ClientHandler.setup(); | ||||
|  | ||||
|         // Server messages | ||||
|         registerMainThread( 0, ComputerActionServerMessage.class, ComputerActionServerMessage::new ); | ||||
| @@ -79,18 +77,16 @@ public final class NetworkHandler | ||||
|         registerMainThread( 19, UploadResultMessage.class, UploadResultMessage::new ); | ||||
|     } | ||||
|  | ||||
|     private static void receive( PacketContext context, FriendlyByteBuf buffer ) | ||||
|     private static void receive( MinecraftServer server, ServerPlayer player, ServerGamePacketListenerImpl handler, FriendlyByteBuf buffer, PacketSender sender ) | ||||
|     { | ||||
|         int type = buffer.readByte(); | ||||
|         packetReaders.get( type ) | ||||
|             .accept( context, buffer ); | ||||
|         packetReaders.get( type ).accept( new PacketContext( player, server ), buffer ); | ||||
|     } | ||||
|  | ||||
|     @SuppressWarnings( "unchecked" ) | ||||
|     private static <T> Class<T> getType( Supplier<T> supplier ) | ||||
|     { | ||||
|         return (Class<T>) supplier.get() | ||||
|             .getClass(); | ||||
|         return (Class<T>) supplier.get().getClass(); | ||||
|     } | ||||
|  | ||||
|     private static FriendlyByteBuf encode( NetworkMessage message ) | ||||
| @@ -125,23 +121,37 @@ public final class NetworkHandler | ||||
|     public static void sendToAllTracking( NetworkMessage packet, LevelChunk chunk ) | ||||
|     { | ||||
|         Consumer<ServerPlayer> sender = p -> p.connection.send( new ClientboundCustomPayloadPacket( ID, encode( packet ) ) ); | ||||
|         ((ServerChunkCache)chunk.getLevel().getChunkSource()).chunkMap.getPlayers( chunk.getPos(), false ).forEach( sender ); | ||||
|         ((ServerChunkCache) chunk.getLevel().getChunkSource()).chunkMap.getPlayers( chunk.getPos(), false ).forEach( sender ); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Register packet, and a thread-unsafe handler for it. | ||||
|      * | ||||
|      * @param <T>       The type of the packet to send. | ||||
|      * @param type      The class of the type of packet to send. | ||||
|      * @param id        The identifier for this packet type. | ||||
|      * @param decoder   The factory for this type of packet. | ||||
|      * @param <T>     The type of the packet to send. | ||||
|      * @param type    The class of the type of packet to send. | ||||
|      * @param id      The identifier for this packet type. | ||||
|      * @param decoder The factory for this type of packet. | ||||
|      */ | ||||
|     private static <T extends NetworkMessage> void registerMainThread( int id, Class<T> type, Function<FriendlyByteBuf, T> decoder ) | ||||
|     { | ||||
|         packetIds.put( type, id ); | ||||
|         packetReaders.put( id, ( context, buf ) -> { | ||||
|             T result = decoder.apply( buf ); | ||||
|             context.getTaskQueue().execute( () -> result.handle( context ) ); | ||||
|             context.executor().execute( () -> result.handle( context ) ); | ||||
|         } ); | ||||
|     } | ||||
|  | ||||
|     private static class ClientHandler | ||||
|     { | ||||
|         static void setup() | ||||
|         { | ||||
|             ClientPlayNetworking.registerGlobalReceiver( ID, ClientHandler::receive ); | ||||
|         } | ||||
|  | ||||
|         static void receive( Minecraft client, ClientPacketListener handler, FriendlyByteBuf buffer, PacketSender responseSender ) | ||||
|         { | ||||
|             int type = buffer.readByte(); | ||||
|             packetReaders.get( type ).accept( new PacketContext( client.player, client ), buffer ); | ||||
|         } | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -5,7 +5,6 @@ | ||||
|  */ | ||||
| package dan200.computercraft.shared.network; | ||||
|  | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
|  | ||||
| import javax.annotation.Nonnull; | ||||
|   | ||||
| @@ -0,0 +1,18 @@ | ||||
| /* | ||||
|  * This file is part of ComputerCraft - http://www.computercraft.info | ||||
|  * Copyright Daniel Ratcliffe, 2011-2021. Do not distribute without permission. | ||||
|  * Send enquiries to dratcliffe@gmail.com | ||||
|  */ | ||||
| package dan200.computercraft.shared.network; | ||||
|  | ||||
| import net.minecraft.world.entity.player.Player; | ||||
|  | ||||
| import java.util.concurrent.Executor; | ||||
|  | ||||
| public record PacketContext(Player player, Executor executor) | ||||
| { | ||||
|     public Player getPlayer() | ||||
|     { | ||||
|         return player(); | ||||
|     } | ||||
| } | ||||
| @@ -8,7 +8,7 @@ package dan200.computercraft.shared.network.client; | ||||
| import dan200.computercraft.client.ClientTableFormatter; | ||||
| import dan200.computercraft.shared.command.text.TableBuilder; | ||||
| import dan200.computercraft.shared.network.NetworkMessage; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
| import net.minecraft.network.chat.Component; | ||||
|  | ||||
|   | ||||
| @@ -7,7 +7,7 @@ package dan200.computercraft.shared.network.client; | ||||
|  | ||||
| import dan200.computercraft.shared.computer.core.ComputerState; | ||||
| import dan200.computercraft.shared.computer.core.ServerComputer; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.minecraft.nbt.CompoundTag; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
|  | ||||
|   | ||||
| @@ -6,7 +6,7 @@ | ||||
| package dan200.computercraft.shared.network.client; | ||||
|  | ||||
| import dan200.computercraft.ComputerCraft; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
|  | ||||
| public class ComputerDeletedClientMessage extends ComputerClientMessage | ||||
|   | ||||
| @@ -5,7 +5,8 @@ | ||||
|  */ | ||||
| package dan200.computercraft.shared.network.client; | ||||
|  | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
|  | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
|  | ||||
| import javax.annotation.Nonnull; | ||||
|   | ||||
| @@ -6,8 +6,8 @@ | ||||
| package dan200.computercraft.shared.network.client; | ||||
|  | ||||
| import dan200.computercraft.shared.network.NetworkMessage; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import dan200.computercraft.shared.peripheral.monitor.TileMonitor; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import net.minecraft.client.Minecraft; | ||||
| import net.minecraft.client.player.LocalPlayer; | ||||
| import net.minecraft.core.BlockPos; | ||||
|   | ||||
| @@ -6,9 +6,9 @@ | ||||
| package dan200.computercraft.shared.network.client; | ||||
|  | ||||
| import dan200.computercraft.shared.network.NetworkMessage; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.fabricmc.api.EnvType; | ||||
| import net.fabricmc.api.Environment; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import net.minecraft.client.Minecraft; | ||||
| import net.minecraft.core.BlockPos; | ||||
| import net.minecraft.core.Registry; | ||||
|   | ||||
| @@ -7,9 +7,9 @@ package dan200.computercraft.shared.network.client; | ||||
|  | ||||
| import dan200.computercraft.client.SoundManager; | ||||
| import dan200.computercraft.shared.network.NetworkMessage; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.fabricmc.api.EnvType; | ||||
| import net.fabricmc.api.Environment; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
| import net.minecraft.world.phys.Vec3; | ||||
|  | ||||
|   | ||||
| @@ -7,9 +7,9 @@ package dan200.computercraft.shared.network.client; | ||||
|  | ||||
| import dan200.computercraft.client.SoundManager; | ||||
| import dan200.computercraft.shared.network.NetworkMessage; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.fabricmc.api.EnvType; | ||||
| import net.fabricmc.api.Environment; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
| import net.minecraft.resources.ResourceLocation; | ||||
| import net.minecraft.world.phys.Vec3; | ||||
|   | ||||
| @@ -7,9 +7,9 @@ package dan200.computercraft.shared.network.client; | ||||
|  | ||||
| import dan200.computercraft.client.SoundManager; | ||||
| import dan200.computercraft.shared.network.NetworkMessage; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.fabricmc.api.EnvType; | ||||
| import net.fabricmc.api.Environment; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
|  | ||||
| import javax.annotation.Nonnull; | ||||
|   | ||||
| @@ -9,7 +9,7 @@ import dan200.computercraft.client.gui.ComputerScreenBase; | ||||
| import dan200.computercraft.client.gui.OptionScreen; | ||||
| import dan200.computercraft.shared.computer.upload.UploadResult; | ||||
| import dan200.computercraft.shared.network.NetworkMessage; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.minecraft.client.Minecraft; | ||||
| import net.minecraft.client.gui.screens.Screen; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
|   | ||||
| @@ -7,7 +7,7 @@ package dan200.computercraft.shared.network.server; | ||||
|  | ||||
| import dan200.computercraft.shared.computer.core.IContainerComputer; | ||||
| import dan200.computercraft.shared.computer.core.ServerComputer; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
|  | ||||
| import javax.annotation.Nonnull; | ||||
|   | ||||
| @@ -9,7 +9,7 @@ import dan200.computercraft.ComputerCraft; | ||||
| import dan200.computercraft.shared.computer.core.IContainerComputer; | ||||
| import dan200.computercraft.shared.computer.core.ServerComputer; | ||||
| import dan200.computercraft.shared.network.NetworkMessage; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
|  | ||||
| import javax.annotation.Nonnull; | ||||
|   | ||||
| @@ -7,7 +7,7 @@ package dan200.computercraft.shared.network.server; | ||||
|  | ||||
| import dan200.computercraft.shared.computer.core.IContainerComputer; | ||||
| import dan200.computercraft.shared.computer.core.ServerComputer; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
| import net.minecraft.server.level.ServerPlayer; | ||||
|  | ||||
|   | ||||
| @@ -8,7 +8,7 @@ package dan200.computercraft.shared.network.server; | ||||
| import dan200.computercraft.shared.computer.core.IContainerComputer; | ||||
| import dan200.computercraft.shared.computer.core.InputState; | ||||
| import dan200.computercraft.shared.computer.core.ServerComputer; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
|  | ||||
| import javax.annotation.Nonnull; | ||||
|   | ||||
| @@ -8,7 +8,7 @@ package dan200.computercraft.shared.network.server; | ||||
| import dan200.computercraft.shared.computer.core.IContainerComputer; | ||||
| import dan200.computercraft.shared.computer.core.InputState; | ||||
| import dan200.computercraft.shared.computer.core.ServerComputer; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
|  | ||||
| import javax.annotation.Nonnull; | ||||
|   | ||||
| @@ -7,8 +7,8 @@ package dan200.computercraft.shared.network.server; | ||||
|  | ||||
| import dan200.computercraft.shared.computer.core.IContainerComputer; | ||||
| import dan200.computercraft.shared.computer.core.ServerComputer; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import dan200.computercraft.shared.util.NBTUtil; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import net.minecraft.nbt.CompoundTag; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
|  | ||||
|   | ||||
| @@ -8,7 +8,7 @@ package dan200.computercraft.shared.network.server; | ||||
| import dan200.computercraft.ComputerCraft; | ||||
| import dan200.computercraft.shared.computer.core.ServerComputer; | ||||
| import dan200.computercraft.shared.network.NetworkMessage; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
|  | ||||
| import javax.annotation.Nonnull; | ||||
|   | ||||
| @@ -11,8 +11,8 @@ import dan200.computercraft.shared.computer.core.ServerComputer; | ||||
| import dan200.computercraft.shared.computer.upload.FileSlice; | ||||
| import dan200.computercraft.shared.computer.upload.FileUpload; | ||||
| import dan200.computercraft.shared.network.NetworkHandler; | ||||
| import dan200.computercraft.shared.network.PacketContext; | ||||
| import io.netty.handler.codec.DecoderException; | ||||
| import net.fabricmc.fabric.api.network.PacketContext; | ||||
| import net.minecraft.network.FriendlyByteBuf; | ||||
| import net.minecraft.server.level.ServerPlayer; | ||||
|  | ||||
|   | ||||
| @@ -316,7 +316,7 @@ public class TileCable extends TileGeneric implements IPeripheralTile | ||||
|         for( Direction facing : DirectionUtil.FACINGS ) | ||||
|         { | ||||
|             BlockPos offset = current.relative( facing ); | ||||
|             if( !world.hasChunkAt( offset ) ) | ||||
|             if( !world.isLoaded( offset ) ) | ||||
|             { | ||||
|                 continue; | ||||
|             } | ||||
|   | ||||
| @@ -17,7 +17,7 @@ import dan200.computercraft.core.apis.http.options.Action; | ||||
| import dan200.computercraft.core.apis.http.options.AddressRuleConfig; | ||||
| import dan200.computercraft.fabric.mixin.LevelResourceAccess; | ||||
| import dan200.computercraft.shared.peripheral.monitor.MonitorRenderer; | ||||
| import net.fabricmc.loader.FabricLoader; | ||||
| import net.fabricmc.loader.api.FabricLoader; | ||||
| import net.minecraft.client.Minecraft; | ||||
| import net.minecraft.server.MinecraftServer; | ||||
| import net.minecraft.world.level.storage.LevelResource; | ||||
| @@ -47,7 +47,7 @@ public final class Config | ||||
|     private static final String serverFileName = "computercraft-server.toml"; | ||||
|  | ||||
|     private static Path serverPath = null; | ||||
|     private static final Path clientPath = FabricLoader.INSTANCE.getConfigDir().resolve( "computercraft-client.toml" ); | ||||
|     private static final Path clientPath = FabricLoader.getInstance().getConfigDir().resolve( "computercraft-client.toml" ); | ||||
|  | ||||
|     private Config() | ||||
|     { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Jonathan Coates
					Jonathan Coates