mixin修改装配矩阵中客户端样板槽同步字段为server.size,避免写死的32造成同步失败而崩溃
This commit is contained in:
parent
7372389e95
commit
55993ef0f0
|
|
@ -14,6 +14,7 @@ import com.extendedae_plus.init.ModMenuTypes;
|
||||||
import com.extendedae_plus.items.materials.EntitySpeedCardItem;
|
import com.extendedae_plus.items.materials.EntitySpeedCardItem;
|
||||||
import net.minecraft.client.gui.screens.MenuScreens;
|
import net.minecraft.client.gui.screens.MenuScreens;
|
||||||
import net.minecraft.client.renderer.item.ItemProperties;
|
import net.minecraft.client.renderer.item.ItemProperties;
|
||||||
|
import net.minecraftforge.fml.ModList;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 客户端模型注册,将 formed 模型注册为内置模型。
|
* 客户端模型注册,将 formed 模型注册为内置模型。
|
||||||
|
|
@ -68,6 +69,18 @@ public final class ClientRegistrar {
|
||||||
InitScreens.register(ModMenuTypes.ENTITY_TICKER_MENU.get(),
|
InitScreens.register(ModMenuTypes.ENTITY_TICKER_MENU.get(),
|
||||||
EntitySpeedTickerScreen<EntitySpeedTickerMenu>::new,
|
EntitySpeedTickerScreen<EntitySpeedTickerMenu>::new,
|
||||||
"/screens/entity_speed_ticker.json");
|
"/screens/entity_speed_ticker.json");
|
||||||
|
registerExtendedAEScreens();
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void registerExtendedAEScreens() {
|
||||||
|
try {
|
||||||
|
InitScreens.register(
|
||||||
|
com.glodblock.github.extendedae.container.ContainerExPatternProvider.TYPE,
|
||||||
|
com.glodblock.github.extendedae.client.gui.GuiExPatternProvider::new,
|
||||||
|
"/screens/ex_pattern_provider.json"
|
||||||
|
);
|
||||||
|
} catch (Throwable ignored) {
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
package com.extendedae_plus.mixin.extendedae.container;
|
||||||
|
|
||||||
|
import appeng.api.inventories.InternalInventory;
|
||||||
|
import appeng.util.inv.AppEngInternalInventory;
|
||||||
|
import com.glodblock.github.extendedae.common.tileentities.matrix.TileAssemblerMatrixPattern;
|
||||||
|
import org.spongepowered.asm.mixin.Final;
|
||||||
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
|
import org.spongepowered.asm.mixin.Mutable;
|
||||||
|
import org.spongepowered.asm.mixin.Shadow;
|
||||||
|
import org.spongepowered.asm.mixin.injection.At;
|
||||||
|
import org.spongepowered.asm.mixin.injection.Inject;
|
||||||
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||||
|
import com.glodblock.github.extendedae.container.ContainerAssemblerMatrix;
|
||||||
|
|
||||||
|
@Mixin(targets = "com.glodblock.github.extendedae.container.ContainerAssemblerMatrix$PatternSlotTracker")
|
||||||
|
public abstract class ContainerAssemblerMatrixPatternSlotTrackerMixin {
|
||||||
|
|
||||||
|
@Shadow
|
||||||
|
@Final
|
||||||
|
private InternalInventory server;
|
||||||
|
|
||||||
|
@Shadow
|
||||||
|
@Final
|
||||||
|
@Mutable
|
||||||
|
private InternalInventory client;
|
||||||
|
|
||||||
|
@Inject(method = "<init>", at = @At("TAIL"))
|
||||||
|
private void extendedae_plus$resizeClientInventory(TileAssemblerMatrixPattern host, CallbackInfo ci) {
|
||||||
|
this.client = new AppEngInternalInventory(this.server.size());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -87,6 +87,7 @@
|
||||||
"appflux.AppfluxPatternProviderLogicMixin",
|
"appflux.AppfluxPatternProviderLogicMixin",
|
||||||
"extendedae.common.PartExPatternProviderMixin",
|
"extendedae.common.PartExPatternProviderMixin",
|
||||||
"extendedae.common.TileExPatternProviderMixin",
|
"extendedae.common.TileExPatternProviderMixin",
|
||||||
|
"extendedae.container.ContainerAssemblerMatrixPatternSlotTrackerMixin",
|
||||||
"extendedae.container.ContainerExPatternProviderMixin",
|
"extendedae.container.ContainerExPatternProviderMixin",
|
||||||
"extendedae.container.ContainerExPatternTerminalMixin",
|
"extendedae.container.ContainerExPatternTerminalMixin",
|
||||||
"extendedae.container.ContainerWirelessExPatternTerminalMixin",
|
"extendedae.container.ContainerWirelessExPatternTerminalMixin",
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user