From a8c24cf76ace1547184fdae71bc3e1166c286538 Mon Sep 17 00:00:00 2001 From: Boblet Date: Thu, 6 Nov 2025 15:39:45 +0100 Subject: [PATCH] glontch --- changelog | 1 + src/main/java/com/hbm/blocks/ModBlocks.java | 6 ++++++ .../blocks/generic/BlockToolConversion.java | 1 + .../blocks/machine/BlockFusionComponent.java | 13 ++++++++++++ .../machine/albion/TileEntityPADipole.java | 19 +++++++++++++++++- .../blocks/fusion_component.blanket.png | Bin 0 -> 376 bytes .../blocks/fusion_component.bscco_welded.png | Bin 0 -> 294 bytes .../blocks/fusion_component.motor.png | Bin 0 -> 561 bytes .../hbm/textures/blocks/fusion_component.png | Bin 0 -> 318 bytes .../models/machines/assembly_machine_alt.png | Bin 0 -> 2692 bytes 10 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/hbm/blocks/machine/BlockFusionComponent.java create mode 100644 src/main/resources/assets/hbm/textures/blocks/fusion_component.blanket.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/fusion_component.bscco_welded.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/fusion_component.motor.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/fusion_component.png create mode 100644 src/main/resources/assets/hbm/textures/models/machines/assembly_machine_alt.png diff --git a/changelog b/changelog index 945aaaca5..bf2ab4458 100644 --- a/changelog +++ b/changelog @@ -42,6 +42,7 @@ * Multiblocks are no longer affected by collapses caused by nuclear explosions * The old NITAN powder chests have been removed * In their place, there's now a different, more useful structure with similar but not identical spawn rules +* ROR controller torches can now set the threshold of particle accelerator dipoles ## Fixed * Fixed arc furnace only allowing electrodes to be inserted when the lid is down instead of up diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index da9b4ad88..d21a6497e 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -903,6 +903,8 @@ public class ModBlocks { public static Block iter; public static Block plasma_heater; + + public static Block fusion_component; public static Block machine_icf_press; public static Block icf_component; @@ -2043,6 +2045,8 @@ public class ModBlocks { iter = new MachineITER().setBlockName("iter").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":iter"); plasma_heater = new MachinePlasmaHeater().setBlockName("plasma_heater").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":plasma_heater"); + fusion_component = new BlockFusionComponent().setBlockName("fusion_component").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_component"); + machine_icf_press = new MachineICFPress().setBlockName("machine_icf_press").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); icf = new MachineICF().setBlockName("icf").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); icf_component = new BlockICFComponent().setBlockName("icf_component").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":icf_component"); @@ -3423,6 +3427,8 @@ public class ModBlocks { GameRegistry.registerBlock(plasma, ItemBlockLore.class, plasma.getUnlocalizedName()); GameRegistry.registerBlock(iter, iter.getUnlocalizedName()); GameRegistry.registerBlock(plasma_heater, plasma_heater.getUnlocalizedName()); + + register(fusion_component); register(watz_element); register(watz_cooler); diff --git a/src/main/java/com/hbm/blocks/generic/BlockToolConversion.java b/src/main/java/com/hbm/blocks/generic/BlockToolConversion.java index 686bd9655..f018659c3 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockToolConversion.java +++ b/src/main/java/com/hbm/blocks/generic/BlockToolConversion.java @@ -153,6 +153,7 @@ public class BlockToolConversion extends BlockMulti implements IToolable, ILookO public static void registerRecipes() { conversions.put(new Pair(ToolType.BOLT, new MetaBlock(ModBlocks.watz_end, 0)), new Pair(new AStack[] {new OreDictStack(OreDictManager.DURA.bolt(), 4)}, new MetaBlock(ModBlocks.watz_end, 1))); conversions.put(new Pair(ToolType.TORCH, new MetaBlock(ModBlocks.fusion_conductor, 0)), new Pair(new AStack[] {new OreDictStack(OreDictManager.STEEL.plateCast())}, new MetaBlock(ModBlocks.fusion_conductor, 1))); + conversions.put(new Pair(ToolType.TORCH, new MetaBlock(ModBlocks.fusion_component, 0)), new Pair(new AStack[] {new OreDictStack(OreDictManager.STEEL.plateCast())}, new MetaBlock(ModBlocks.fusion_component, 1))); conversions.put(new Pair(ToolType.TORCH, new MetaBlock(ModBlocks.icf_component, 1)), new Pair(new AStack[] {new OreDictStack(OreDictManager.ANY_BISMOIDBRONZE.plateCast())}, new MetaBlock(ModBlocks.icf_component, 2))); conversions.put(new Pair(ToolType.BOLT, new MetaBlock(ModBlocks.icf_component, 3)), new Pair(new AStack[] {new OreDictStack(OreDictManager.STEEL.plateCast()), new OreDictStack(OreDictManager.DURA.bolt(), 4)}, new MetaBlock(ModBlocks.icf_component, 4))); } diff --git a/src/main/java/com/hbm/blocks/machine/BlockFusionComponent.java b/src/main/java/com/hbm/blocks/machine/BlockFusionComponent.java new file mode 100644 index 000000000..8a6de8adc --- /dev/null +++ b/src/main/java/com/hbm/blocks/machine/BlockFusionComponent.java @@ -0,0 +1,13 @@ +package com.hbm.blocks.machine; + +import com.hbm.blocks.generic.BlockToolConversion; + +import net.minecraft.block.material.Material; + +public class BlockFusionComponent extends BlockToolConversion { + + public BlockFusionComponent() { + super(Material.iron); + this.addVariant(".bscco_welded", ".blanket", ".motor"); + } +} diff --git a/src/main/java/com/hbm/tileentity/machine/albion/TileEntityPADipole.java b/src/main/java/com/hbm/tileentity/machine/albion/TileEntityPADipole.java index 7ea9007da..f0645c063 100644 --- a/src/main/java/com/hbm/tileentity/machine/albion/TileEntityPADipole.java +++ b/src/main/java/com/hbm/tileentity/machine/albion/TileEntityPADipole.java @@ -16,6 +16,7 @@ import com.hbm.util.EnumUtil; import com.hbm.util.fauxpointtwelve.BlockPos; import com.hbm.util.fauxpointtwelve.DirPos; +import api.hbm.redstoneoverradio.IRORInteractive; import cpw.mods.fml.common.Optional; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -34,7 +35,7 @@ import net.minecraftforge.common.util.ForgeDirection; @SuppressWarnings("unused") @Optional.InterfaceList({@Optional.Interface(iface = "li.cil.oc.api.network.SimpleComponent", modid = "OpenComputers")}) -public class TileEntityPADipole extends TileEntityCooledBase implements IGUIProvider, IControlReceiver, IParticleUser, OCComponent, SimpleComponent { +public class TileEntityPADipole extends TileEntityCooledBase implements IGUIProvider, IControlReceiver, IParticleUser, OCComponent, SimpleComponent, IRORInteractive { public int dirLower; public int dirUpper; @@ -351,4 +352,20 @@ public class TileEntityPADipole extends TileEntityCooledBase implements IGUIProv throw new NoSuchMethodException(); } + @Override + public String[] getFunctionInfo() { + return new String[] { + PREFIX_FUNCTION + "setthreshold" + NAME_SEPARATOR + "threshold", + }; + } + + @Override + public String runRORFunction(String name, String[] params) { + + if((PREFIX_FUNCTION + "setthreshold").equals(name) && params.length > 0) { + this.threshold = IRORInteractive.parseInt(params[0], 0, 999_999_999); + this.markChanged(); + } + return null; + } } diff --git a/src/main/resources/assets/hbm/textures/blocks/fusion_component.blanket.png b/src/main/resources/assets/hbm/textures/blocks/fusion_component.blanket.png new file mode 100644 index 0000000000000000000000000000000000000000..601b048b09c09252001d39935efde956cd89709d GIT binary patch literal 376 zcmV-;0f+vHP)$=6y^Wjf{5Q5z%(T|tQ#Ri(DF=ZV*pU;M$ zPABsu`D7K5)phmF+TZVYBTfNA2w&ZfF#<4-qX~Sbk=AuhRaH3W7A|Y`-cyz(MNzCU z5nChJoO7=|_?7c83>=TgmGU%A~Ed)^j)%NbyrCKFig!M~iHbL4qWmSrm}#>f)^ W=toR-sjo%2}Xn$6xxTiWF97W|v@JaZLSXlqA; z&G~mVSEDwr)_V85t>eI%done)cc%x%F}kpv>DeE3PEu2KhGf}!9)|0swW7wxNj)5j zdzdWxZWqd&ux##-`!12Joh!|}=7{03XU}(?wSK)#=zHxi@y2dGk6*vo!m=ks}tF%f{OQYaJ{3^x0x05U_3)45=@0CIc2A-W&zGzd4%dF z0GZ1Va8&uZwZ-=^WPN)ZCl=U=DHA{Cm9NHf7eIMWV7ptJExQ8Rlz&+eURS-bpmzIYs@tsPgqCpUl z%jHg;JQ4Y?TYJ48ZV&_*V=%^?IE^RmX$}4Xqn#(M-hp3`00000NkvXXu0mjf-L&+y literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/blocks/fusion_component.png b/src/main/resources/assets/hbm/textures/blocks/fusion_component.png new file mode 100644 index 0000000000000000000000000000000000000000..2357238d401a75ead16955e0ca4c69c7a3446d10 GIT binary patch literal 318 zcmV-E0m1%>P)Nkl+@AiFbB>r_oNLqRQ5|S z4W{OqXrN-oIWRRP;tTrI!DYc9Xsb9k(D$5|3+a-A5N`DY$Qeh+wV#`39!^4|$Zelf~2m Q4*&oF07*qoM6N<$g8El|5dZ)H literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/models/machines/assembly_machine_alt.png b/src/main/resources/assets/hbm/textures/models/machines/assembly_machine_alt.png new file mode 100644 index 0000000000000000000000000000000000000000..bdc453cb4985b6321ca3a06ebf524b90e76186ca GIT binary patch literal 2692 zcmV-~3VZd5P)zl$5q8OOhRBL`u#!t0m3r?_}ulP6FcP?2*Hxp~9u zL&a-Mz*i*IHLjzy@t@#p%%w1LNFbb2L?pO0!3XNn8?49)#~Llh%A34wio02lM%wwY zJENJA<^%Ta>`MF0?S1t;&-_#k7xa3)3?B3B*|Qn|92^|vzek#;`FT|`p!D;o0i|qi zB6V^QMUl;VXk{{)Ac`WSX==MFTTi{$>t()+D@{`z92{gsP*D^GfjL5*F8KNfNz*j< zz-gN1{{r@@i(ldw#CriBJsY`33$dtNHfIa0CKuQyed_5PEQ%tfG9e`DdZ^Q_FQ0R< zCr_R%{2sJmRLcPH>k6&N-vn{yEO@X@fX%^F%K^P?L^lO34mJl1Ih9>DrWHvO`oY{` z<64oxcJzaFyWNExaX1`0>8Ura6{#zy@*zCdK3eE6P;{gMra8%BN4C z0sv0F7~e?o9LGqKL}P7MBNSMYBse)aL95lmcsxd{ z)zWr+|NedBzn}}qc+qaRn^p0as-BuaJQ;voa5_Dk^(24OJ($Wgs9vv^sdTH*-7#g# z>%h9eHXW5ermCpfd$VO$P&OKI)&-XT($|=>Ei~7I?)cS>$U}()w+^HPcK7aG0Ko0r zxASv4j@OZ7+JJ<`G9Ibd>t$pRo(`96Yo4^edDsvXi}hCIrg<>ByM+9KCzFZreWYXf z`t|F%?V`kge}BIwlhj*(mH_H>D}p9TlDsKvQe=mRhe(nH&+z~NF8=@6jNaeh=O(?Q z(TMw?Ra-+JUp!QK8`|x5#_NUJZ+@Zmza)oPWx zPaMY>jYgPGr(qaMJ}-2-CgbrMc1n`9*-BwdwY9E?fFI-PwiBQ z6nQYw^{SNhVA}%g!A?(40RaE_^LYyT!=Kfb%BQENh1Xx5nXfYt1m-n7af!-I%598| z2$9hKgJj*l0A$R*8t7 zZo+F}iTe4-aS=uRaQ%KiW6CvP^{j>}!$mJ%yr^B&apiphPlk$I50S54z2aUk5+UL7 z3oZnlO$P~=f&n^z+&riKA$hmijcwAL2iOK9?W)# ztO{@0TG{ztKH!bOY_inFt`m1W&@I-Pu>$$UP?cswpGVrdViyH&;J7Osa#nts1uE1FGV0FjCK`qs4u>_F<#fDdcjSB-kxFgfzbky#N~9LG35K3-aLsN&WVH@{{&dJg>zHZWZ1L%+(O-6TA?(N=Ur0DjP1n z5m@kGej+6>7xq$hSztcwpH_Ag;;I|EgjS^F{fls6zSh@YeVHfnv)K%P`paKybS_1X zMPZG74KHt#MaqM@@DOczFx&g5iPnXZe$3fy2H@k;GU5^Bzxpzp&1MTd{v;^dBAcWa$hGw&=78F>x)S+ti1!5a@|TVT9K$vXN9i~8m0 z1fNdyb)Bz@Hv+R2B3+*^*X?$*%h#6sxV{CT|vN0YkgvdY{yzyW`V5@QA`-pgWBQQ}2V+ViPL5qBAz>U?qE8d;`Qs-`FWY^CJ6%5gbN;?j0BXuZUXN^ zq$}9`0Fpe5_Dr;Q5?wcmw7^X74^{)f+y>1%muQ?%n=f87q=icRO->Y1yV1Iq~O>M(TsH={~*Z=q3!fW(=Zc_yNdhNe? z^QLN*xF`$kL-L=c)h9HjA8@d**S^daOjW3>j%C%cysnOrrYSBP9vchx_1ZU`mnjQO zlmnO^d=2*P+E*pyU|VkAxg>wna*$x(EFlLA_KgxeSg>!DTK22+F97)dAI|5b|MTbP zV`@d^pZ?^>+)vQoe)MU3NeZBT?+_zU}r+3+xl4cMohmL0|!+1c3#NQlr0YQijhz`;?nxCLg}3T&ZAxefEv7i&Qnh z>*Pz*)Odx1eY^Hm2_Z6I6lD(v@IOV_H{VvNPq4pc`^M*kl`+5@s+ecyono+W*S-qg zd|zb148}c}(Yptn$M~FlqjwKDk8uwclKkzqACmlF-#Pm#xK*3L#-Z%NWWM~;B*DI3 y`(dak*muglDj`G$j1mMEFiPkL+j30jjQ