Skip to content

Commit febe017

Browse files
committed
Fixes to ponder register order
1 parent b7693df commit febe017

File tree

8 files changed

+61
-5
lines changed

8 files changed

+61
-5
lines changed

common/src/main/java/com/cak/pattern_schematics/PatternSchematics.java

-4
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
package com.cak.pattern_schematics;
22

3-
import com.cak.pattern_schematics.content.ponder.PatternSchematicsPonderIndex;
43
import com.cak.pattern_schematics.registry.PatternSchematicsRegistry;
5-
import com.cak.pattern_schematics.content.ponder.PatternSchematicsPonderTags;
64
import com.cak.pattern_schematics.registry.PlatformPackets;
75
import com.mojang.logging.LogUtils;
86
import net.minecraft.resources.ResourceLocation;
@@ -19,8 +17,6 @@ public static void init() {
1917
PatternSchematicsRegistry.register();
2018
PlatformPackets.registerPackets();
2119
PlatformPackets.getChannel().initServerListener();
22-
PatternSchematicsPonderTags.register();
23-
PatternSchematicsPonderIndex.register();
2420
}
2521

2622
public static ResourceLocation asResource(String loc) {

common/src/main/java/com/cak/pattern_schematics/PatternSchematicsClient.java

+5
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.cak.pattern_schematics;
22

3+
import com.cak.pattern_schematics.content.ponder.PatternSchematicsPonderTags;
34
import com.cak.pattern_schematics.foundation.mirror.PatternSchematicHandler;
45
import com.cak.pattern_schematics.registry.PlatformPackets;
56

@@ -12,4 +13,8 @@ public static void init() {
1213
PlatformPackets.getChannel().initClientListener();
1314
}
1415

16+
public static void setup() {
17+
PatternSchematicsPonderTags.register();
18+
}
19+
1520
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
package com.cak.pattern_schematics.mixin;
2+
3+
import com.simibubi.create.AllBlocks;
4+
import com.simibubi.create.Create;
5+
import com.simibubi.create.content.contraptions.AbstractContraptionEntity;
6+
import com.simibubi.create.content.contraptions.Contraption;
7+
import com.simibubi.create.content.contraptions.behaviour.MovementContext;
8+
import net.minecraft.core.BlockPos;
9+
import net.minecraft.core.Direction;
10+
import net.minecraft.world.InteractionHand;
11+
import net.minecraft.world.entity.player.Player;
12+
import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate;
13+
import org.apache.commons.lang3.tuple.Pair;
14+
import org.spongepowered.asm.mixin.Mixin;
15+
import org.spongepowered.asm.mixin.Shadow;
16+
import org.spongepowered.asm.mixin.injection.At;
17+
import org.spongepowered.asm.mixin.injection.Inject;
18+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
19+
20+
/**
21+
* Adding interaction for applying schematics onto deployers that are in assembled schematics
22+
* */
23+
@Mixin(value = AbstractContraptionEntity.class, remap = false)
24+
public class AbstractContraptionEntityMixin {
25+
26+
// @Shadow protected Contraption contraption;
27+
//
28+
// @Inject(method = "handlePlayerInteraction", at = @At("HEAD"), cancellable = true)
29+
// public void handlePlayerInteraction(
30+
// Player player, BlockPos localPos, Direction side,
31+
// InteractionHand interactionHand, CallbackInfoReturnable<Boolean> cir
32+
// ) {
33+
// Pair<StructureTemplate.StructureBlockInfo, MovementContext> actor = contraption.getActorAt(localPos);
34+
// if (actor != null && actor.getLeft().state().is(AllBlocks.DEPLOYER.get())) {
35+
// Create.LOGGER.info("Found deployer");
36+
// cir.setReturnValue(true);
37+
// }
38+
// }
39+
40+
}

common/src/main/resources/pattern_schematics.common.mixins.json

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
"client": [
77
],
88
"mixins": [
9+
"AbstractContraptionEntityMixin",
910
"CreateClientMixin",
1011
"DeployBaseMixin",
1112
"DeployerMovementBehaviorMixin",

fabric/src/main/java/com/cak/pattern_schematics/fabric/PatternSchematicsFabricClient.java

+4
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
import com.cak.pattern_schematics.PatternSchematics;
44
import com.cak.pattern_schematics.PatternSchematicsClient;
55
import com.cak.pattern_schematics.PatternSchematicsClientEvents;
6+
import com.cak.pattern_schematics.content.ponder.PatternSchematicsPonderIndex;
7+
import com.cak.pattern_schematics.content.ponder.PatternSchematicsPonderTags;
68
import com.cak.pattern_schematics.foundation.mirror.fabric.PatternSchematicHandlerFabric;
79
import com.mojang.blaze3d.platform.Window;
810
import net.fabricmc.api.ClientModInitializer;
@@ -19,6 +21,8 @@ public void onInitializeClient() {
1921
PatternSchematicsClient.init();
2022
registerOverlays();
2123
PatternSchematicsFabricClientEvents.registerListeners();
24+
PatternSchematicsPonderTags.register();
25+
PatternSchematicsPonderIndex.register();
2226
}
2327

2428
private static void registerOverlays() {

fabric/src/main/java/com/cak/pattern_schematics/fabric/PatternSchematicsFabricClientEvents.java

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.cak.pattern_schematics.PatternSchematicsClientEvents;
44
import io.github.fabricators_of_create.porting_lib.event.client.KeyInputCallback;
55
import io.github.fabricators_of_create.porting_lib.event.client.MouseInputEvents;
6+
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents;
67
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
78
import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderEvents;
89
import net.minecraft.client.Minecraft;

forge/src/main/java/com/cak/pattern_schematics/forge/PatternSchematicsForgeClientEvents.java

+9
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
import com.cak.pattern_schematics.PatternSchematicsClient;
44
import com.cak.pattern_schematics.PatternSchematicsClientEvents;
5+
import com.cak.pattern_schematics.content.ponder.PatternSchematicsPonderIndex;
6+
import com.cak.pattern_schematics.content.ponder.PatternSchematicsPonderTags;
57
import com.mojang.blaze3d.systems.RenderSystem;
68
import com.mojang.blaze3d.vertex.PoseStack;
79
import com.simibubi.create.foundation.render.SuperRenderTypeBuffer;
@@ -16,6 +18,7 @@
1618
import net.minecraftforge.event.TickEvent;
1719
import net.minecraftforge.eventbus.api.SubscribeEvent;
1820
import net.minecraftforge.fml.common.Mod;
21+
import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent;
1922

2023
@Mod.EventBusSubscriber(Dist.CLIENT)
2124
public class PatternSchematicsForgeClientEvents {
@@ -59,6 +62,12 @@ public static class ModBusEvents {
5962
public static void registerGuiOverlays(RegisterGuiOverlaysEvent event) {
6063
event.registerAbove(VanillaGuiOverlay.HOTBAR.id(), "pattern_schematic", PatternSchematicsClient.PATTERN_SCHEMATIC_HANDLER);
6164
}
65+
66+
@SubscribeEvent
67+
public static void setupClient(FMLClientSetupEvent event) {
68+
PatternSchematicsPonderTags.register();
69+
PatternSchematicsPonderIndex.register();
70+
}
6271

6372
}
6473

forge/src/main/java/com/cak/pattern_schematics/forge/mixin/SchematicTableMenuMixin.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ protected SchematicTableMenuMixin(MenuType<?> type, int id, Inventory inv, Frien
3434
super(type, id, inv, extraData);
3535
}
3636

37-
@Redirect(method = "addSlots", remap = false, at = @At(value = "FIELD", opcode = Opcodes.PUTFIELD, target = "Lcom/simibubi/create/content/schematics/table/SchematicTableMenu;inputSlot:Lnet/minecraft/world/inventory/Slot;", remap = true))
37+
@Redirect(method = "addSlots", at = @At(value = "FIELD", opcode = Opcodes.PUTFIELD, target = "Lcom/simibubi/create/content/schematics/table/SchematicTableMenu;inputSlot:Lnet/minecraft/world/inventory/Slot;", remap = true))
3838
private void addSlots_inputSlot(SchematicTableMenu instance, Slot value) {
3939
((SchematicTableMenuMixinAccessor) instance).setInputSlot(new SlotItemHandler(contentHolder.inventory, 0, 21, 57) {
4040
@Override

0 commit comments

Comments
 (0)