Skip to content

Commit

Permalink
register CraftingTerminalHandler AttachmentType earlier
Browse files Browse the repository at this point in the history
  • Loading branch information
Mari023 committed Jun 16, 2024
1 parent 7fbb561 commit c73efac
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 8 deletions.
8 changes: 8 additions & 0 deletions src/main/java/de/mari_023/ae2wtlib/AE2wtlibComponents.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import java.util.HashMap;
import java.util.Map;
import java.util.function.Consumer;
import java.util.function.Supplier;

import com.mojang.serialization.Codec;
import com.mojang.serialization.DataResult;
Expand All @@ -13,14 +14,17 @@
import net.minecraft.network.codec.ByteBufCodecs;
import net.minecraft.network.codec.StreamCodec;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.component.ItemContainerContents;
import net.neoforged.neoforge.attachment.AttachmentType;
import net.neoforged.neoforge.network.codec.NeoForgeStreamCodecs;

import appeng.api.config.IncludeExclude;
import appeng.menu.locator.ItemMenuHostLocator;
import appeng.menu.locator.MenuLocators;

import de.mari_023.ae2wtlib.wct.CraftingTerminalHandler;
import de.mari_023.ae2wtlib.wct.magnet_card.MagnetMode;
import de.mari_023.ae2wtlib.wut.WTDefinition;

Expand Down Expand Up @@ -61,6 +65,10 @@ public class AE2wtlibComponents {
public static final DataComponentType<CompoundTag> PATTERN_ENCODING_LOGIC = register("pattern_encoding_logic",
COMPOUND_TAG_CODECS);

public static final Supplier<AttachmentType<CraftingTerminalHandler>> CT_HANDLER = AE2wtlib.ATTACHMENT_TYPES
.register("ct_handler",
() -> AttachmentType.builder((player) -> new CraftingTerminalHandler((Player) player)).build());

public static <T> DataComponentType<T> register(String name, Consumer<DataComponentType.Builder<T>> customizer) {
var builder = DataComponentType.<T>builder();
customizer.accept(builder);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,29 +1,25 @@
package de.mari_023.ae2wtlib.wct;

import java.util.HashMap;
import java.util.function.Supplier;

import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.Nullable;

import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack;
import net.neoforged.neoforge.attachment.AttachmentType;

import appeng.api.networking.IGrid;
import appeng.api.networking.IGridNode;
import appeng.menu.locator.ItemMenuHostLocator;

import de.mari_023.ae2wtlib.AE2wtlib;
import de.mari_023.ae2wtlib.AE2wtlibComponents;
import de.mari_023.ae2wtlib.terminal.WTMenuHost;
import de.mari_023.ae2wtlib.wct.magnet_card.MagnetHost;
import de.mari_023.ae2wtlib.wut.WTDefinitions;
import de.mari_023.ae2wtlib.wut.WUTHandler;

public class CraftingTerminalHandler {
public static final Supplier<AttachmentType<CraftingTerminalHandler>> CT_HANDLER = AE2wtlib.ATTACHMENT_TYPES
.register("ct_handler",
() -> AttachmentType.builder((player) -> new CraftingTerminalHandler((Player) player)).build());
public final Player player;
@Nullable
private WTMenuHost menuHost;
Expand All @@ -33,12 +29,13 @@ public class CraftingTerminalHandler {
@Nullable
private MagnetHost magnetHost;

private CraftingTerminalHandler(Player player) {
@ApiStatus.Internal
public CraftingTerminalHandler(Player player) {
this.player = player;
}

public static CraftingTerminalHandler getCraftingTerminalHandler(Player player) {
return player.getData(CT_HANDLER);
return player.getData(AE2wtlibComponents.CT_HANDLER);
}

private void invalidateCache() {
Expand Down

0 comments on commit c73efac

Please sign in to comment.