Skip to content
This repository has been archived by the owner on Mar 24, 2024. It is now read-only.

Commit

Permalink
Update to 1.19.3 (Polymer Port)
Browse files Browse the repository at this point in the history
  • Loading branch information
Patbox committed Dec 9, 2022
1 parent c2165d6 commit 7016cf4
Show file tree
Hide file tree
Showing 43 changed files with 112 additions and 120 deletions.
11 changes: 6 additions & 5 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -131,11 +131,12 @@ dependencies {
testImplementation 'org.jetbrains.kotlin:kotlin-reflect:1.6.0'
testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.2'

modImplementation include("eu.pb4:sgui:1.1.3+1.19.1")
modImplementation include("eu.pb4:hologram-api:0.2.2+1.19")
modImplementation include("eu.pb4:polymer:0.2.10+1.19.1")
modImplementation include("fr.catcore:server-translations-api:1.4.16+1.19")
modImplementation include("eu.pb4:map-canvas-api:0.1.4+1.19")
modImplementation include("eu.pb4:sgui:1.2.0+1.19.3")
modImplementation include("eu.pb4:hologram-api:0.2.3+1.19.3")
modImplementation include("eu.pb4:polymer-core:0.3.0-rc.3+1.19.3")
modImplementation include("eu.pb4:polymer-resource-pack:0.3.0-rc.3+1.19.3")
modImplementation include("fr.catcore:server-translations-api:1.4.18+1.19.2")
modImplementation include("eu.pb4:map-canvas-api:0.2.1+1.19.3")
}

processResources {
Expand Down
5 changes: 0 additions & 5 deletions src/main/java/dan200/computercraft/ComputerCraft.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,6 @@
import dan200.computercraft.shared.turtle.recipes.TurtleUpgradeRecipe;
import dan200.computercraft.shared.util.ImpostorRecipe;
import dan200.computercraft.shared.util.ImpostorShapelessRecipe;
import eu.pb4.polymer.api.item.PolymerItemGroup;
import net.fabricmc.api.ModInitializer;
import net.fabricmc.fabric.api.resource.ResourceManagerHelper;
import net.fabricmc.fabric.api.resource.ResourcePackActivationType;
import net.fabricmc.loader.api.FabricLoader;
import net.minecraft.core.Registry;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.resources.ResourceLocation;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,15 +30,11 @@ public abstract class ServerGamePacketListenerImplMixin {
@Shadow
public abstract void send(Packet<?> packet);

@Shadow
protected abstract PlayerChatMessage getSignedMessage(ServerboundChatPacket serverboundChatPacket);

@Inject(method = "handleChat(Lnet/minecraft/network/protocol/game/ServerboundChatPacket;)V", at = @At("HEAD"), cancellable = true)
private void ccp_onChat(ServerboundChatPacket serverboundChatPacket, CallbackInfo ci) {
if (this.player.containerMenu instanceof VirtualScreenHandlerInterface handler && handler.getGui() instanceof MapGui computerGui) {
this.server.execute(() -> {
computerGui.onChatInput(serverboundChatPacket.message());
this.server.getPlayerList().broadcastMessageHeader(this.getSignedMessage(serverboundChatPacket), Set.of());
});
ci.cancel();
}
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/dan200/computercraft/fabric/poly/Fonts.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import eu.pb4.mapcanvas.api.font.BitmapFontBuilder;
import eu.pb4.mapcanvas.api.font.CanvasFont;
import eu.pb4.mapcanvas.api.font.DefaultFonts;
import eu.pb4.polymer.api.utils.PolymerUtils;
import eu.pb4.polymer.core.api.utils.PolymerUtils;
import net.fabricmc.loader.api.FabricLoader;
import net.minecraft.resources.ResourceLocation;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package dan200.computercraft.fabric.poly;

import eu.pb4.polymer.api.item.PolymerItem;
import eu.pb4.polymer.core.api.item.PolymerItem;
import net.minecraft.server.level.ServerPlayer;
import net.minecraft.world.item.ItemStack;
import org.jetbrains.annotations.Nullable;
Expand Down
12 changes: 6 additions & 6 deletions src/main/java/dan200/computercraft/fabric/poly/PolymerSetup.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

import dan200.computercraft.ComputerCraft;
import dan200.computercraft.fabric.poly.textures.GuiTextures;
import eu.pb4.polymer.api.item.PolymerItem;
import eu.pb4.polymer.api.resourcepack.PolymerModelData;
import eu.pb4.polymer.api.resourcepack.PolymerRPUtils;
import eu.pb4.polymer.core.api.item.PolymerItem;
import eu.pb4.polymer.resourcepack.api.PolymerModelData;
import eu.pb4.polymer.resourcepack.api.PolymerResourcePackUtils;
import eu.pb4.sgui.api.elements.GuiElementBuilder;
import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation;
Expand All @@ -24,12 +24,12 @@ public static void setup() {
Fonts.TERMINAL_FONT.hashCode();
GuiTextures.ADVANCED_COMPUTER.hashCode();

PolymerRPUtils.addAssetSource(ComputerCraft.MOD_ID);
PolymerResourcePackUtils.addModAssets(ComputerCraft.MOD_ID);

FILLER_ITEM.setCustomModelData(PolymerRPUtils.requestModel(Items.WHITE_STAINED_GLASS_PANE, new ResourceLocation(ComputerCraft.MOD_ID, "poly_gui/filler")).value());
FILLER_ITEM.setCustomModelData(PolymerResourcePackUtils.requestModel(Items.WHITE_STAINED_GLASS_PANE, new ResourceLocation(ComputerCraft.MOD_ID, "poly_gui/filler")).value());
}

public static void requestModel(ResourceLocation identifier, Item item) {
MODELS.put(item, PolymerRPUtils.requestModel(((PolymerItem) item).getPolymerItem(item.getDefaultInstance(), null), identifier));
MODELS.put(item, PolymerResourcePackUtils.requestModel(((PolymerItem) item).getPolymerItem(item.getDefaultInstance(), null), identifier));
}
}
31 changes: 8 additions & 23 deletions src/main/java/dan200/computercraft/fabric/poly/gui/MapGui.java
Original file line number Diff line number Diff line change
@@ -1,29 +1,21 @@
package dan200.computercraft.fabric.poly.gui;

import com.google.common.base.Predicates;
import com.mojang.authlib.GameProfile;
import com.mojang.brigadier.arguments.StringArgumentType;
import com.mojang.brigadier.tree.ArgumentCommandNode;
import com.mojang.brigadier.tree.RootCommandNode;
import dan200.computercraft.fabric.poly.render.*;
import dan200.computercraft.fabric.poly.render.CanvasRenderer;
import dan200.computercraft.fabric.poly.render.ImageButton;
import dan200.computercraft.fabric.poly.render.ScreenElement;
import dan200.computercraft.fabric.poly.textures.GuiTextures;
import dan200.computercraft.fabric.poly.textures.RepeatingCanvas;
import dan200.computercraft.shared.computer.core.IComputer;
import dan200.computercraft.shared.computer.core.IContainerComputer;
import dan200.computercraft.shared.computer.core.InputState;
import dan200.computercraft.shared.computer.upload.FileSlice;
import dan200.computercraft.shared.computer.upload.FileUpload;
import dan200.computercraft.shared.turtle.blocks.TileTurtle;
import eu.pb4.mapcanvas.api.core.*;
import eu.pb4.mapcanvas.api.utils.CanvasUtils;
import eu.pb4.mapcanvas.api.utils.VirtualDisplay;
import eu.pb4.polymer.impl.other.FakeWorld;
import eu.pb4.polymer.core.api.utils.PolymerUtils;
import eu.pb4.sgui.api.gui.HotbarGui;
import io.netty.buffer.Unpooled;
import it.unimi.dsi.fastutil.ints.IntArrayList;
import it.unimi.dsi.fastutil.ints.IntArraySet;
import it.unimi.dsi.fastutil.ints.IntList;
import it.unimi.dsi.fastutil.ints.IntSet;
import net.fabricmc.loader.api.FabricLoader;
import net.minecraft.ChatFormatting;
import net.minecraft.commands.SharedSuggestionProvider;
Expand All @@ -43,15 +35,8 @@
import net.minecraft.world.level.GameType;
import net.minecraft.world.level.saveddata.maps.MapDecoration;
import net.minecraft.world.phys.Vec3;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;

import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import java.util.function.BiConsumer;

public class MapGui extends HotbarGui {
private static final Packet<?> COMMAND_PACKET;

Expand Down Expand Up @@ -83,7 +68,7 @@ public MapGui(ServerPlayer player) {
this.canvas.addPlayer(player);
this.virtualDisplay.addPlayer(player);

this.entity = new Horse(EntityType.HORSE, FakeWorld.INSTANCE);
this.entity = new Horse(EntityType.HORSE, PolymerUtils.getFakeWorld());
this.entity.setPos(pos.getX() + 0.5, pos.getY() - 1, pos.getZ() - 1.8);
this.entity.setNoGravity(true);
this.entity.setYHeadRot(dir.getOpposite().toYRot());
Expand All @@ -94,7 +79,7 @@ public MapGui(ServerPlayer player) {
this.cursor = this.canvas.createIcon(MapDecoration.Type.TARGET_POINT, true, this.cursorX, this.cursorY, (byte) 14, null);
player.connection.send(this.entity.getAddEntityPacket());

player.connection.send(new ClientboundSetEntityDataPacket(this.entity.getId(), this.entity.getEntityData(), true));
player.connection.send(new ClientboundSetEntityDataPacket(this.entity.getId(), this.entity.getEntityData().getNonDefaultValues()));
player.connection.send(new ClientboundSetCameraPacket(this.entity));
this.xRot = player.getXRot();
this.yRot = player.getYRot();
Expand Down Expand Up @@ -122,7 +107,7 @@ public void render() {
CanvasUtils.fill(this.renderer.canvas(), x * 128, 0, x * 128 + 1, this.canvas.getHeight(), CanvasColor.RED_HIGH);
}
for (int x = 0; x < this.canvas.getSectionsHeight(); x++) {
CanvasUtils.fill(this.renderer.canvas(), 0,x * 128, this.canvas.getWidth(), x * 128 + 1, CanvasColor.BLUE_HIGH);
CanvasUtils.fill(this.renderer.canvas(), 0, x * 128, this.canvas.getWidth(), x * 128 + 1, CanvasColor.BLUE_HIGH);
}
}

Expand Down Expand Up @@ -177,7 +162,7 @@ public void onCameraMove(float xRot, float yRot) {
this.xRot = xRot;
this.yRot = yRot;

this.cursorX = this.cursorX + (int) ((xRot > 0.3 ? 3: xRot < -0.3 ? -3 : 0) * (Math.abs(xRot) - 0.3));
this.cursorX = this.cursorX + (int) ((xRot > 0.3 ? 3 : xRot < -0.3 ? -3 : 0) * (Math.abs(xRot) - 0.3));
this.cursorY = this.cursorY + (int) ((yRot > 0.3 ? 3 : yRot < -0.3 ? -3 : 0) * (Math.abs(yRot) - 0.3));

this.cursorX = Mth.clamp(this.cursorX, 5, this.canvas.getWidth() * 2 - 5);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import dan200.computercraft.shared.peripheral.printer.TilePrinter;
import dan200.computercraft.shared.turtle.blocks.TileTurtle;
import dan200.computercraft.shared.util.ValidatingSlot;
import eu.pb4.polymer.api.resourcepack.PolymerRPUtils;
import eu.pb4.polymer.resourcepack.api.PolymerResourcePackUtils;
import eu.pb4.sgui.api.elements.GuiElementBuilder;
import eu.pb4.sgui.api.gui.SimpleGui;
import net.minecraft.ChatFormatting;
Expand All @@ -20,7 +20,7 @@ public class PrinterInventoryGui extends SimpleGui {
public PrinterInventoryGui(ServerPlayer player, TilePrinter printer) {
super(MenuType.GENERIC_9x3, player, false);

var pack = PolymerRPUtils.hasPack(player);
var pack = PolymerResourcePackUtils.hasPack(player);
this.setTitle(pack
? Component.empty().append(Component.literal("-0.").setStyle(Style.EMPTY.withFont(PolymerSetup.GUI_FONT).withColor(ChatFormatting.WHITE))).append(printer.getDisplayName())
: printer.getDisplayName()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import dan200.computercraft.fabric.poly.ComputerDisplayAccess;
import dan200.computercraft.fabric.poly.PolymerSetup;
import dan200.computercraft.shared.turtle.blocks.TileTurtle;
import eu.pb4.polymer.api.resourcepack.PolymerRPUtils;
import eu.pb4.polymer.resourcepack.api.PolymerResourcePackUtils;
import eu.pb4.sgui.api.gui.SimpleGui;
import net.minecraft.ChatFormatting;
import net.minecraft.network.chat.Component;
Expand All @@ -18,7 +18,7 @@ public class TurtleInventoryGui extends SimpleGui {

public TurtleInventoryGui(ServerPlayer player, TileTurtle turtle) {
super(MenuType.GENERIC_9x2, player, false);
var pack = PolymerRPUtils.hasPack(player);
var pack = PolymerResourcePackUtils.hasPack(player);
this.setTitle(pack
? Component.empty().append(Component.literal("-1.").setStyle(Style.EMPTY.withFont(PolymerSetup.GUI_FONT).withColor(ChatFormatting.WHITE))).append(turtle.getDisplayName())
: turtle.getDisplayName()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package dan200.computercraft.fabric.poly.textures;

import dan200.computercraft.fabric.poly.PolymerAutoTexturedItem;
import eu.pb4.polymer.api.item.PolymerBlockItem;
import eu.pb4.polymer.core.api.item.PolymerBlockItem;
import net.minecraft.world.item.Item;
import net.minecraft.world.level.block.Block;

Expand Down
21 changes: 13 additions & 8 deletions src/main/java/dan200/computercraft/shared/Registry.java
Original file line number Diff line number Diff line change
Expand Up @@ -42,12 +42,11 @@
import dan200.computercraft.shared.turtle.upgrades.TurtleModem;
import dan200.computercraft.shared.turtle.upgrades.TurtleSpeaker;
import dan200.computercraft.shared.turtle.upgrades.TurtleTool;
import eu.pb4.polymer.api.block.PolymerBlockUtils;
import eu.pb4.polymer.api.entity.PolymerEntityUtils;
import eu.pb4.polymer.api.item.PolymerBlockItem;
import eu.pb4.polymer.api.item.PolymerHeadBlockItem;
import eu.pb4.polymer.api.item.PolymerItemGroup;
import eu.pb4.polymer.core.api.block.PolymerBlockUtils;
import eu.pb4.polymer.core.api.entity.PolymerEntityUtils;
import eu.pb4.polymer.core.api.item.PolymerHeadBlockItem;
import dan200.computercraft.shared.util.Colour;
import eu.pb4.polymer.core.api.item.PolymerItemGroupUtils;
import net.fabricmc.fabric.api.itemgroup.v1.FabricItemGroup;
import net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityTypeBuilder;
import net.minecraft.core.BlockPos;
Expand Down Expand Up @@ -272,7 +271,8 @@ public static final class ModItems
public static final ItemBlockCable.WiredModem WIRED_MODEM =
register("wired_modem", new ItemBlockCable.WiredModem(ModBlocks.CABLE, properties()));

private static final CreativeModeTab mainItemGroup = FabricItemGroup.builder( new ResourceLocation( MOD_ID, "main" ) )
private static final CreativeModeTab mainItemGroup = PolymerItemGroupUtils.builder( new ResourceLocation( MOD_ID, "main" ) )
.title(Component.translatable("itemGroup.computercraft.main"))
.icon( () -> new ItemStack( ModBlocks.COMPUTER_NORMAL ) )
.displayItems( ( featureFlagSet, output, operator ) -> {
output.accept( COMPUTER_NORMAL );
Expand Down Expand Up @@ -324,7 +324,12 @@ public static final class ModItems

private static <B extends Block, I extends Item> I ofBlock( B parent, BiFunction<B, Item.Properties, I> supplier )
{
return net.minecraft.core.Registry.register( BuiltInRegistries.ITEM, BuiltInRegistries.BLOCK.getKey( parent ), supplier.apply( parent, properties() ) );
var id = BuiltInRegistries.BLOCK.getKey( parent );
var item = supplier.apply( parent, properties() );
if (item instanceof PolymerAutoTexturedItem) {
PolymerSetup.requestModel(new ResourceLocation(MOD_ID, "item/" + id.getPath()), item);
}
return net.minecraft.core.Registry.register( BuiltInRegistries.ITEM, id, item );
}

private static Item.Properties properties()
Expand All @@ -343,7 +348,7 @@ private static <T extends Item> T register( String id, T item )

public static class ModEntities {
public static final EntityType<TurtlePlayer> TURTLE_PLAYER =
net.minecraft.core.Registry.register(BuiltInRegistry.ENTITY_TYPE, new ResourceLocation(MOD_ID, "turtle_player"),
net.minecraft.core.Registry.register(BuiltInRegistries.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"));

static {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
*/
package dan200.computercraft.shared.common;

import eu.pb4.polymer.api.block.PolymerBlock;
import eu.pb4.polymer.api.block.PolymerHeadBlock;
import eu.pb4.polymer.core.api.block.PolymerBlock;
import eu.pb4.polymer.core.api.block.PolymerHeadBlock;
import net.minecraft.core.BlockPos;
import net.minecraft.server.level.ServerLevel;
import net.minecraft.util.RandomSource;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

import dan200.computercraft.shared.util.ColourTracker;
import dan200.computercraft.shared.util.ColourUtils;
import eu.pb4.polymer.api.item.PolymerRecipe;
import eu.pb4.polymer.core.api.item.PolymerRecipe;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.inventory.CraftingContainer;
import net.minecraft.world.item.DyeColor;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
*/
package dan200.computercraft.shared.common;

import eu.pb4.polymer.api.utils.PolymerObject;
import eu.pb4.polymer.core.api.utils.PolymerObject;
import net.minecraft.core.BlockPos;
import net.minecraft.world.InteractionHand;
import net.minecraft.world.InteractionResult;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,11 @@
import dan200.computercraft.shared.computer.core.ComputerFamily;
import dan200.computercraft.shared.computer.core.ComputerState;
import dan200.computercraft.shared.computer.items.ComputerItemFactory;
import eu.pb4.polymer.api.block.PolymerHeadBlock;
import eu.pb4.polymer.api.utils.PolymerUtils;
import eu.pb4.polymer.core.api.block.PolymerHeadBlock;
import eu.pb4.polymer.core.api.utils.PolymerUtils;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.server.level.ServerPlayer;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.context.BlockPlaceContext;
import net.minecraft.world.level.block.Block;
Expand Down Expand Up @@ -107,7 +109,7 @@ public BlockState getPolymerBlockState(BlockState state) {
}

@Override
public String getPolymerSkinValue(BlockState state) {
public String getPolymerSkinValue(BlockState state, BlockPos pos, ServerPlayer player) {
return state.getValue(STATE) == ComputerState.OFF ? this.offTexture : this.onTexture;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
import dan200.computercraft.shared.computer.core.ComputerFamily;
import dan200.computercraft.shared.computer.core.ServerComputer;
import dan200.computercraft.shared.computer.items.IComputerItem;
import eu.pb4.polymer.core.api.block.PolymerHeadBlock;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.resources.ResourceLocation;
Expand All @@ -35,7 +36,7 @@
import javax.annotation.Nullable;
import java.util.function.Supplier;

public abstract class BlockComputerBase<T extends TileComputerBase> extends BlockGeneric implements IBundledRedstoneBlock
public abstract class BlockComputerBase<T extends TileComputerBase> extends BlockGeneric implements IBundledRedstoneBlock, PolymerHeadBlock
{
private static final ResourceLocation DROP = new ResourceLocation( ComputerCraft.MOD_ID, "computer" );

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@
import dan200.computercraft.api.media.IMedia;
import dan200.computercraft.shared.computer.blocks.BlockComputerBase;
import dan200.computercraft.shared.computer.core.ComputerFamily;
import eu.pb4.polymer.api.block.PolymerHeadBlock;
import eu.pb4.polymer.api.item.PolymerHeadBlockItem;
import eu.pb4.polymer.core.api.block.PolymerHeadBlock;
import eu.pb4.polymer.core.api.item.PolymerHeadBlockItem;
import net.minecraft.ChatFormatting;
import net.minecraft.network.chat.Component;
import net.minecraft.world.item.BlockItem;
Expand All @@ -30,7 +30,7 @@ public abstract class ItemComputerBase extends PolymerHeadBlockItem implements I

public ItemComputerBase( BlockComputerBase<?> block, Properties settings )
{
super( (PolymerHeadBlock) block, settings );
super( block, settings );
family = block.getFamily();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
package dan200.computercraft.shared.computer.recipe;

import dan200.computercraft.shared.computer.items.IComputerItem;
import eu.pb4.polymer.api.item.PolymerRecipe;
import eu.pb4.polymer.core.api.item.PolymerRecipe;
import net.minecraft.core.NonNullList;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.inventory.CraftingContainer;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
import com.google.gson.JsonObject;
import dan200.computercraft.shared.computer.core.ComputerFamily;
import dan200.computercraft.shared.util.RecipeUtil;
import eu.pb4.polymer.api.item.PolymerRecipe;
import eu.pb4.polymer.core.api.item.PolymerRecipe;
import net.minecraft.core.NonNullList;
import net.minecraft.network.FriendlyByteBuf;
import net.minecraft.resources.ResourceLocation;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

import dan200.computercraft.shared.computer.core.ComputerFamily;
import dan200.computercraft.shared.computer.items.IComputerItem;
import eu.pb4.polymer.api.item.PolymerRecipe;
import eu.pb4.polymer.core.api.item.PolymerRecipe;
import net.minecraft.core.NonNullList;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.ItemStack;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
import dan200.computercraft.shared.Registry;
import dan200.computercraft.shared.common.IColouredItem;
import dan200.computercraft.shared.util.Colour;
import eu.pb4.polymer.api.item.PolymerItem;
import eu.pb4.polymer.core.api.item.PolymerItem;
import net.minecraft.ChatFormatting;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.network.chat.Component;
Expand Down
Loading

0 comments on commit 7016cf4

Please sign in to comment.