diff --git a/src/main/java/reobf/proghatches/block/TileIOHub.java b/src/main/java/reobf/proghatches/block/TileIOHub.java index 70e223b..a455adc 100644 --- a/src/main/java/reobf/proghatches/block/TileIOHub.java +++ b/src/main/java/reobf/proghatches/block/TileIOHub.java @@ -262,6 +262,7 @@ public void onDisconnect(Node node) { } boolean init; public void updateEntity() { + this.markDirty(); dead=false; super.updateEntity(); diff --git a/src/main/java/reobf/proghatches/gt/metatileentity/BufferedDualInputHatch.java b/src/main/java/reobf/proghatches/gt/metatileentity/BufferedDualInputHatch.java index d7ddc3c..19177f8 100644 --- a/src/main/java/reobf/proghatches/gt/metatileentity/BufferedDualInputHatch.java +++ b/src/main/java/reobf/proghatches/gt/metatileentity/BufferedDualInputHatch.java @@ -990,7 +990,7 @@ private NBTTagCompound cv(String s) { }), builder) .addTooltip(StatCollector.translateToLocal("GT5U.gui.button.power_switch")) .setTooltipShowUpDelay(TOOLTIP_DELAY) - .setPos(new Pos2d(getGUIWidth()-18-6,3)) + .setPos(new Pos2d(getGUIWidth()-18-3,3)) .setSize(16, 16); return (ButtonWidget) button; } diff --git a/src/main/java/reobf/proghatches/gt/metatileentity/RemoteInputBus.java b/src/main/java/reobf/proghatches/gt/metatileentity/RemoteInputBus.java index acfe1e5..ea0bb4e 100644 --- a/src/main/java/reobf/proghatches/gt/metatileentity/RemoteInputBus.java +++ b/src/main/java/reobf/proghatches/gt/metatileentity/RemoteInputBus.java @@ -75,6 +75,7 @@ public RemoteInputBus(String aName, int aTier, String[] aDescription, ITexture[] @Override public void onLeftclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) { if (aBaseMetaTileEntity.getWorld().isRemote) return; + this.markDirty(); if (aPlayer.isSneaking() && aPlayer.getHeldItem() == null) { linked = false; aPlayer.addChatMessage(new ChatComponentTranslation("programmable_hatches.remote.detach")); diff --git a/src/main/java/reobf/proghatches/gt/metatileentity/RemoteInputHatch.java b/src/main/java/reobf/proghatches/gt/metatileentity/RemoteInputHatch.java index 4c591b6..84f4715 100644 --- a/src/main/java/reobf/proghatches/gt/metatileentity/RemoteInputHatch.java +++ b/src/main/java/reobf/proghatches/gt/metatileentity/RemoteInputHatch.java @@ -74,6 +74,7 @@ public RemoteInputHatch(String aName, int aTier, String[] aDescription, ITexture @Override public void onLeftclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) { if (aBaseMetaTileEntity.getWorld().isRemote) return; + this.markDirty(); if (aPlayer.isSneaking() && aPlayer.getHeldItem() == null) { linked = false; aPlayer.addChatMessage(new ChatComponentTranslation("programmable_hatches.remote.detach")); diff --git a/src/main/java/reobf/proghatches/main/registration/PHRecipes.java b/src/main/java/reobf/proghatches/main/registration/PHRecipes.java index 1c27113..ae5698e 100644 --- a/src/main/java/reobf/proghatches/main/registration/PHRecipes.java +++ b/src/main/java/reobf/proghatches/main/registration/PHRecipes.java @@ -575,6 +575,41 @@ public void run() { .eut(480) .addTo(RecipeMaps.mixerRecipes); + GT_Values.RA.stdBuilder() + .itemInputs( + new ItemStack(GameRegistry.findItem("OpenComputers", "item"), 1, 33), + new ItemStack(GameRegistry.findItem("OpenComputers", "item"), 1, 51), + new ItemStack(GameRegistry.findItem("OpenComputers", "cable"), 4, 0), + Emitter_EV.get(1), + GT_Utility.getIntegratedCircuit(16) + +) + .fluidInputs(Materials.EnderPearl.getMolten(4000)) + .itemOutputs(new ItemStack(MyMod.pitem, 1) + + ) .duration(40 * SECONDS) + .eut(480) + .addTo(RecipeMaps.assemblerRecipes);; + + GT_Values.RA.stdBuilder() + .itemInputs( + Casing_EV.get(1), + Sensor_EV.get(1), + new ItemStack(GameRegistry.findItem("OpenComputers", "cable"), 32, 0), + new ItemStack(GameRegistry.findItem("OpenComputers", "item"), 1, 51), + new ItemStack(GameRegistry.findItem("OpenComputers", "item"), 1, 33), + GT_Utility.getIntegratedCircuit(17) + +) + .fluidInputs(Materials.EnderPearl.getMolten(4000)) + .itemOutputs(new ItemStack(MyMod.pstation, 1) + + ) .duration(40 * SECONDS) + .eut(480) + .addTo(RecipeMaps.assemblerRecipes);; + + + } /////////////////////////////////// diff --git a/src/main/java/reobf/proghatches/oc/TileWirelessPeripheralStation.java b/src/main/java/reobf/proghatches/oc/TileWirelessPeripheralStation.java index 7adc9d2..e932b6f 100644 --- a/src/main/java/reobf/proghatches/oc/TileWirelessPeripheralStation.java +++ b/src/main/java/reobf/proghatches/oc/TileWirelessPeripheralStation.java @@ -279,6 +279,7 @@ public void onChunkUnload() { @Override public void updateEntity() { + this.markDirty(); if (!init) { init = true; li.cil.oc.api.Network.joinOrCreateNetwork(this); diff --git a/src/main/resources/assets/proghatches/lang/zh_CN.lang b/src/main/resources/assets/proghatches/lang/zh_CN.lang index bffba19..5dd432b 100644 --- a/src/main/resources/assets/proghatches/lang/zh_CN.lang +++ b/src/main/resources/assets/proghatches/lang/zh_CN.lang @@ -124,10 +124,11 @@ programmable_hatches.tutorial.pages.5=不推荐同时携带多个工具箱,可 programmable_hatches.tutorial.pages.6=编程二合一输入仓\n\n你也可以叫它编程输入总成,怎样都好\n自带编程覆盖板功能,带有类似样板输入总成的输入隔离。使用方法是连接开启阻挡模式的ME接口,配合带编程器电路的样板,就能用单个仓室在不混配方的情况下为机器提供多种配方的输入。 programmable_hatches.tutorial.pages.7=缓存编程二合一输入仓\n\n如果不关心它的具体工作方式,你只需要知道使用方法和前面的基础版本完全一致(是的,你依然需要打开阻挡模式),只是更快,还能充分利用机器的并行。 programmable_hatches.tutorial.pages.8=缓存版本的编程二合一输入仓,主GUI中的物品/流体称为“输入区”,机器只能访问“缓存区”种的材料。当缓存区没有锁定配方,AE会发配一组材料并被阻挡,这些原料会在下一tick被转移进入缓存区并记录锁定单组材料的内容。当输入区的内容和某个缓存区锁定的配方顺序与数量完全一致,会被瞬间转移到缓存区。 -programmable_hatches.tutorial.pages.9=这样,即使开启阻挡模式,AE发配完一组原料后,不会因为阻挡模式停止发配。因此只需要2tick就能将原料全部发配给机器待用。每个缓存区(进阶版的有多个)内部附带编程器覆盖板功能,且有4个额外的虚拟槽,用于处理含多个不消耗物品的配方。每个缓存区也是互相输入隔离的。 +programmable_hatches.tutorial.pages.9=这样,即使开启阻挡模式,AE发配完一组原料后,不会因为阻挡模式停止发配。因此只需要2tick就能将原料全部发配给机器待用(如果AE有足够多并行)。每个缓存区(进阶版的有多个)内部附带编程器覆盖板功能,且有4个额外的虚拟槽,用于处理含多个不消耗物品的配方。每个缓存区也是互相输入隔离的。 programmable_hatches.tutorial.pages.10=注意,缓存编程二合一输入仓的输入区没有编程覆盖板功能(即使手动贴覆盖板也一样),输入区的虚拟电路板是方便九合一加工厂指定类型用的,被每个缓存区共享。缓存区的容量会在tooltips中标注,允许超出容量,但超出后该缓存区会停止工作。 -programmable_hatches.tutorial.pages.11=无线控制覆盖板&智能机械臂>高级无线红石卡\n\n这些物品所访问的都是GT高级无线红石系统。 -programmable_hatches.tutorial.pages=12 +programmable_hatches.tutorial.pages.11=右上角的“电源”按钮控制机器是否向“缓存区”转移材料,你可以关掉它,然后手动塞入一份材料再打开,这样缓冲区才能正确记录你的配方。 +programmable_hatches.tutorial.pages.12=无线控制覆盖板&智能机械臂>高级无线红石卡\n\n这些物品所访问的都是GT高级无线红石系统,是的,它们不兼容基础版的GT无线红石。 +programmable_hatches.tutorial.pages=13 item.proghatch.cover.dedicated.tooltips.1=带有安全模式的红石接收覆盖板(内) programmable_hatches.gt.marking.slot.0=§7使用物品标记,不支持NEI书签 programmable_hatches.gt.marking.slot.1=§7点击清空