From 3392ac21d9ea124848e32675ce01445e40f4218d Mon Sep 17 00:00:00 2001 From: Bob Date: Thu, 7 Sep 2023 21:56:08 +0200 Subject: [PATCH] telex hee hoo --- src/main/java/com/hbm/blocks/ModBlocks.java | 3 + .../com/hbm/blocks/network/RadioTelex.java | 31 +++++++ src/main/java/com/hbm/main/ClientProxy.java | 1 + .../java/com/hbm/main/ResourceManager.java | 6 ++ .../hbm/render/tileentity/RenderTelex.java | 57 ++++++++++++ .../java/com/hbm/tileentity/TileMappings.java | 1 + .../network/TileEntityRadioTelex.java | 7 ++ .../assets/hbm/models/machines/telex.obj | 86 ++++++++++++++++++ .../hbm/textures/gui/machine/gui_telex.png | Bin 0 -> 2760 bytes .../textures/models/{ => machines}/telex.png | Bin 10 files changed, 192 insertions(+) create mode 100644 src/main/java/com/hbm/blocks/network/RadioTelex.java create mode 100644 src/main/java/com/hbm/render/tileentity/RenderTelex.java create mode 100644 src/main/java/com/hbm/tileentity/network/TileEntityRadioTelex.java create mode 100644 src/main/resources/assets/hbm/models/machines/telex.obj create mode 100644 src/main/resources/assets/hbm/textures/gui/machine/gui_telex.png rename src/main/resources/assets/hbm/textures/models/{ => machines}/telex.png (100%) diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 5806db479..786f3da08 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -799,6 +799,7 @@ public class ModBlocks { public static Block radio_torch_sender; public static Block radio_torch_receiver; public static Block radio_torch_counter; + public static Block radio_telex; public static Block conveyor; //public static Block conveyor_classic; @@ -1972,6 +1973,7 @@ public class ModBlocks { radio_torch_sender = new RadioTorchSender().setBlockName("radio_torch_sender").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); radio_torch_receiver = new RadioTorchReceiver().setBlockName("radio_torch_receiver").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); radio_torch_counter = new RadioTorchCounter().setBlockName("radio_torch_counter").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rtty_counter"); + radio_telex = new RadioTelex().setBlockName("radio_telex").setHardness(3F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":radio_telex"); conveyor = new BlockConveyor().setBlockName("conveyor").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor"); //conveyor_classic = new BlockConveyorClassic().setBlockName("conveyor_classic").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor"); @@ -3229,6 +3231,7 @@ public class ModBlocks { register(radio_torch_sender); register(radio_torch_receiver); register(radio_torch_counter); + register(radio_telex); register(crane_extractor); register(crane_inserter); diff --git a/src/main/java/com/hbm/blocks/network/RadioTelex.java b/src/main/java/com/hbm/blocks/network/RadioTelex.java new file mode 100644 index 000000000..76ae87d21 --- /dev/null +++ b/src/main/java/com/hbm/blocks/network/RadioTelex.java @@ -0,0 +1,31 @@ +package com.hbm.blocks.network; + +import com.hbm.blocks.BlockDummyable; +import com.hbm.tileentity.network.TileEntityRadioTelex; + +import net.minecraft.block.material.Material; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.World; + +public class RadioTelex extends BlockDummyable { + + public RadioTelex() { + super(Material.wood); + } + + @Override + public TileEntity createNewTileEntity(World world, int meta) { + if(meta >= 12) return new TileEntityRadioTelex(); + return null; + } + + @Override + public int[] getDimensions() { + return new int[] {0, 0, 0, 0, 1, 0}; + } + + @Override + public int getOffset() { + return 0; + } +} diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index 97bcdb621..c73c53576 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -288,6 +288,7 @@ public class ClientProxy extends ServerProxy { ClientRegistry.bindTileEntitySpecialRenderer(TileEntityFan.class, new RenderFan()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityPistonInserter.class, new RenderPistonInserter()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityConveyorPress.class, new RenderConveyorPress()); + ClientRegistry.bindTileEntitySpecialRenderer(TileEntityRadioTelex.class, new RenderTelex()); //Foundry ClientRegistry.bindTileEntitySpecialRenderer(TileEntityFoundryBasin.class, new RenderFoundry()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityFoundryMold.class, new RenderFoundry()); diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index 59cbd5c29..35da24ba7 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -346,6 +346,9 @@ public class ResourceManager { //DecoContainer (File Cabinet for now) public static final IModelCustom file_cabinet = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/file_cabinet.obj")); + //TELEX + public static final IModelCustom telex = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/machines/telex.obj")); + ////Textures TEs public static final ResourceLocation universal = new ResourceLocation(RefStrings.MODID, "textures/models/TheGadget3_.png"); @@ -715,6 +718,9 @@ public class ResourceManager { public static final ResourceLocation file_cabinet_tex = new ResourceLocation(RefStrings.MODID, "textures/models/file_cabinet.png"); public static final ResourceLocation file_cabinet_steel_tex = new ResourceLocation(RefStrings.MODID, "textures/models/file_cabinet_steel.png"); + //TELEX + public static final ResourceLocation telex_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/telex.png"); + ////Obj Items //Shimmer Sledge diff --git a/src/main/java/com/hbm/render/tileentity/RenderTelex.java b/src/main/java/com/hbm/render/tileentity/RenderTelex.java new file mode 100644 index 000000000..5c3601e1a --- /dev/null +++ b/src/main/java/com/hbm/render/tileentity/RenderTelex.java @@ -0,0 +1,57 @@ +package com.hbm.render.tileentity; + +import org.lwjgl.opengl.GL11; + +import com.hbm.blocks.BlockDummyable; +import com.hbm.blocks.ModBlocks; +import com.hbm.main.ResourceManager; +import com.hbm.render.item.ItemRenderBase; + +import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; +import net.minecraft.item.Item; +import net.minecraft.tileentity.TileEntity; +import net.minecraftforge.client.IItemRenderer; + +public class RenderTelex extends TileEntitySpecialRenderer implements IItemRendererProvider { + + @Override + public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float interp) { + GL11.glPushMatrix(); + GL11.glTranslated(x + 0.5, y, z + 0.5); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glEnable(GL11.GL_CULL_FACE); + + switch(tile.getBlockMetadata() - BlockDummyable.offset) { + case 2: GL11.glRotatef(90, 0F, 1F, 0F); break; + case 4: GL11.glRotatef(180, 0F, 1F, 0F); break; + case 3: GL11.glRotatef(270, 0F, 1F, 0F); break; + case 5: GL11.glRotatef(0, 0F, 1F, 0F); break; + } + + GL11.glTranslated(0, 0, 1); + + bindTexture(ResourceManager.telex_tex); + ResourceManager.telex.renderAll(); + + GL11.glPopMatrix(); + } + + @Override + public Item getItemForRenderer() { + return Item.getItemFromBlock(ModBlocks.radio_telex); + } + + @Override + public IItemRenderer getRenderer() { + return new ItemRenderBase( ) { + public void renderInventory() { + GL11.glTranslated(0, -2, 0); + GL11.glScaled(6, 6, 6); + } + public void renderCommon() { + GL11.glTranslated(0, 0, 0.5); + bindTexture(ResourceManager.telex_tex); + ResourceManager.telex.renderAll(); + }}; + } +} diff --git a/src/main/java/com/hbm/tileentity/TileMappings.java b/src/main/java/com/hbm/tileentity/TileMappings.java index ebd4e6c46..7c6f0a484 100644 --- a/src/main/java/com/hbm/tileentity/TileMappings.java +++ b/src/main/java/com/hbm/tileentity/TileMappings.java @@ -384,6 +384,7 @@ public class TileMappings { put(TileEntityRadioTorchSender.class, "tileentity_rtty_sender"); put(TileEntityRadioTorchReceiver.class, "tileentity_rtty_rec"); put(TileEntityRadioTorchCounter.class, "tileentity_rtty_counter"); + put(TileEntityRadioTelex.class, "tileentity_rtty_telex"); } private static void put(Class clazz, String... names) { diff --git a/src/main/java/com/hbm/tileentity/network/TileEntityRadioTelex.java b/src/main/java/com/hbm/tileentity/network/TileEntityRadioTelex.java new file mode 100644 index 000000000..e1b117888 --- /dev/null +++ b/src/main/java/com/hbm/tileentity/network/TileEntityRadioTelex.java @@ -0,0 +1,7 @@ +package com.hbm.tileentity.network; + +import net.minecraft.tileentity.TileEntity; + +public class TileEntityRadioTelex extends TileEntity { + +} diff --git a/src/main/resources/assets/hbm/models/machines/telex.obj b/src/main/resources/assets/hbm/models/machines/telex.obj new file mode 100644 index 000000000..4caa6310e --- /dev/null +++ b/src/main/resources/assets/hbm/models/machines/telex.obj @@ -0,0 +1,86 @@ +# Blender v2.76 (sub 0) OBJ File: 'telex.blend' +# www.blender.org +o Cube_Cube.001 +v -0.500000 0.000000 0.500000 +v -0.500000 1.000000 0.500000 +v -0.500000 0.000000 -1.500000 +v -0.500000 1.000000 -1.500000 +v 0.500000 0.000000 0.500000 +v 0.500000 0.000000 -1.500000 +v 0.500000 0.625000 -1.500000 +v 0.500000 0.625000 0.500000 +v 0.125000 1.000000 -1.500000 +v 0.125000 1.000000 0.500000 +v 0.500000 0.625000 0.125000 +v 0.500000 0.625000 -0.750000 +v 0.125000 1.000000 -0.750000 +v 0.125000 0.625000 -0.750000 +v 0.125000 0.625000 0.125000 +v 0.125000 1.000000 0.125000 +vt -0.000000 0.500000 +vt -0.000000 0.250000 +vt 0.500000 0.250000 +vt 0.843750 0.250000 +vt 0.750000 0.156250 +vt 1.000000 -0.000000 +vt 0.093750 0.250000 +vt 0.093750 0.156250 +vt 0.312500 0.156250 +vt 0.500000 0.000000 +vt 0.656250 0.250000 +vt -0.000000 0.750000 +vt 0.500000 0.500000 +vt 0.500000 0.156250 +vt 0.312500 0.250000 +vt 0.000000 0.156250 +vt -0.000000 0.000000 +vt 0.593750 0.343750 +vt 0.812500 0.343750 +vt 0.593750 0.500000 +vt 0.500000 0.593750 +vt 0.687500 0.500000 +vt 0.687500 0.593750 +vt 0.593750 0.250000 +vt 0.750000 -0.000000 +vt 1.000000 0.250000 +vt 0.500000 0.750000 +vt 1.000000 0.500000 +vt 0.500000 0.343750 +vt 1.000000 0.343750 +vt 0.812500 0.250000 +vn -1.000000 0.000000 0.000000 +vn 0.000000 0.000000 -1.000000 +vn 1.000000 0.000000 0.000000 +vn 0.000000 0.000000 1.000000 +vn 0.000000 -1.000000 0.000000 +vn 0.707100 0.707100 0.000000 +vn 0.000000 1.000000 0.000000 +s off +f 4/1/1 3/2/1 1/3/1 +f 9/4/2 7/5/2 3/6/2 +f 16/7/3 15/8/3 14/9/3 +f 1/10/4 8/5/4 10/11/4 +f 3/12/5 6/1/5 5/13/5 +f 7/14/6 9/3/6 13/15/6 +f 10/2/6 8/16/6 11/8/6 +f 12/9/3 5/17/3 6/10/3 +f 16/18/7 13/19/7 2/13/7 +f 12/20/4 13/21/4 14/13/4 +f 11/20/2 15/22/2 16/23/2 +f 14/19/7 15/18/7 11/24/7 +f 2/13/1 4/1/1 1/3/1 +f 6/25/2 3/6/2 7/5/2 +f 4/26/2 9/4/2 3/6/2 +f 13/15/3 16/7/3 14/9/3 +f 10/11/4 2/3/4 1/10/4 +f 1/10/4 5/25/4 8/5/4 +f 1/27/5 3/12/5 5/13/5 +f 12/9/6 7/14/6 13/15/6 +f 16/7/6 10/2/6 11/8/6 +f 6/10/3 7/14/3 12/9/3 +f 12/9/3 11/8/3 5/17/3 +f 8/16/3 5/17/3 11/8/3 +f 4/28/7 2/13/7 13/19/7 +f 10/29/7 16/18/7 2/13/7 +f 13/19/7 9/30/7 4/28/7 +f 12/31/7 14/19/7 11/24/7 diff --git a/src/main/resources/assets/hbm/textures/gui/machine/gui_telex.png b/src/main/resources/assets/hbm/textures/gui/machine/gui_telex.png new file mode 100644 index 0000000000000000000000000000000000000000..2866b7299c9e258c628e1f81edb2808ac8bee978 GIT binary patch literal 2760 zcmeHJeK^y58~@FYR%Fg{qB7>F$4imqh?(Q%Je)&CokC8CN(tLA*@iW%J(cXRN?yv# zJXGG2h>gimnG^ETi4il+%XZSd46`lf%z3Ws`Rn=n{Po=b-1l{VuJ8AIU-$jJKKJL= zao?YGw03C$0HEXT<#7T4KJ_+XZPZy|@z^74e(W6zuHp2rX(R451(BqGH( zanMaL+x>I$oAko`-hi686~wQmro!=YlXD!s+tfk}(fA3)7F5Azq&V{k?Gy<22ymk} z_bp9|Ryh1Y{4)?@t03xvF;dKY4F67_lA79;W5Z(GqQ`oAe1HA1BtUeJI_v$W?WM-o zu!UDP0#>a%x+A^PA;<=R;ri??kzRWNYR>6lV<%szG}8~@y2d2gi8YYF(V>)Z+--yr z@MhA))d{%!#+`f_*po?J6$4&o5Jf-e_ED&`1Z;92KKT>G?co0p{C!>0*QXQ|6g05o z;|)h%YMMb3PX_`&mi(-qHU_P2kPDwIuK`F0NYOzfZE94(zC30KAo=RV#Dsj2ab{+U6x(l2G8mW3iB$%U3MKEN@k)eC!*9VFZgfka@4ObUl&b-J zpS|?T4FZ9jq{r~t_V#DU&cFB;#NeMwi9w6@&D>(7!Ic>QYH-LMKfu&1LwBE3S`mmu$K}z371Ncw zg76$E2#LZIi923>oJTk1J$zzkX;F!_%V%YwC<&Mfumz$av*taObNF{&c1NYt^=c^M z$?{KkQ_5r}!S zJ4p#$UEPhHGKnOFMi6jZ98}8=y1m(zh326&83AdyQMnR9Zt3^kuh>SJYF2jAvQTqk z@q*uxhHj`znRhep@)B{jdw$>}HOt0f=;`CNwb>C~X_{LB6E{wEGm4!kaCqDU&y>ZU z!Ckp<9}a--(r&GGRrv+$H zM=60V{5x#KNat1cw|}gr+kdp^IA$<MTIlMqb6@py z>xp+W&`pcyGZz-*ip3*kUo6`ac%k?)|GGkI087&7E(}b3k@W8O`YvSI2a*4M#+5Xu%6X}S!0udz6DIjw227jq(xtw(zYwKhQ0Br>7vNyR0X=OzQy4V z^`XYIpsm8lxDy{cQSuJq;div|y;xmes5rHpniNGkC_9@^D~>|T(0z6oQJ5aL6tY-k z(F6V5SmOyHzX?x2cc9E#*&fz6jNY@If}rio^5={~ef`qk?sa+M^86S#g4XI8hd<;f zc}wWwz*ZMoB}mQXsjX zog(|S1y$G-K9sgVE1T8d%g2M=PghA%r16MhG7|u>Ehgw zYVchfkeQie3~QTvIz!m`erIvH^%J(r2CF-ry>Ctr?LM$P`Z>coii;b>Lq8lUbL{In zpU{<%mOH1^pDIe^(##dxiXxw28+`}bf{ju8zB2ej=^AGhfe{rY_(Luys*%V}P5KO% z{Za%Jb$kPeZU0N6TjXa*ankrvOd=D}9wG7JvDemo1%1Q!2IKo`*HW{_rYjlGT#-9G zUdx-lg#P#%mr`_XwsAe|8(2ijM666F8Y#YogKki){TU4sd2R%Qff&xW%~u6X-=Sio zJKJ9BYJ_lJC~a^f!^5}wFV)GMtx8wt#`KZm!h7&NSGLXH4CRDIg0aEP$a+v^&nw); zb^eGcgn#$0de{euwSem9JhEzf^$BlAV*y%2434zY>v;z?WvaTiex`It*MQ_B--T{@3ldE+7J)F1Oj+GUihi!ZGC82RiYyT zcf0huX4rST>ZK)*FmGQeZd0A@^(jnp$<~dkq$tq8|I_^iu6HDhTDoSPHbsxUex(5=UVl)kBUYA5U$;~HCQY?{bnfUjZ aiAvWX>Rz}>3n+Z!L2plAkEcI`UHcPMDIz2Q literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/models/telex.png b/src/main/resources/assets/hbm/textures/models/machines/telex.png similarity index 100% rename from src/main/resources/assets/hbm/textures/models/telex.png rename to src/main/resources/assets/hbm/textures/models/machines/telex.png