mirror of
https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
synced 2026-01-25 10:32:49 +00:00
donuts
This commit is contained in:
parent
9386e9d186
commit
bc1073f734
@ -8,6 +8,7 @@ import com.hbm.blocks.generic.*;
|
||||
import com.hbm.blocks.generic.BlockHazard.ExtDisplayEffect;
|
||||
import com.hbm.blocks.machine.*;
|
||||
import com.hbm.blocks.machine.albion.*;
|
||||
import com.hbm.blocks.machine.fusion.MachineFusionTorus;
|
||||
import com.hbm.blocks.machine.pile.*;
|
||||
import com.hbm.blocks.machine.rbmk.*;
|
||||
import com.hbm.blocks.network.*;
|
||||
@ -903,8 +904,9 @@ public class ModBlocks {
|
||||
|
||||
public static Block iter;
|
||||
public static Block plasma_heater;
|
||||
|
||||
|
||||
public static Block fusion_component;
|
||||
public static Block fusion_torus;
|
||||
|
||||
public static Block machine_icf_press;
|
||||
public static Block icf_component;
|
||||
@ -2046,6 +2048,7 @@ public class ModBlocks {
|
||||
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");
|
||||
fusion_torus = new MachineFusionTorus().setBlockName("fusion_torus").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel");
|
||||
|
||||
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");
|
||||
@ -3429,6 +3432,7 @@ public class ModBlocks {
|
||||
GameRegistry.registerBlock(plasma_heater, plasma_heater.getUnlocalizedName());
|
||||
|
||||
register(fusion_component);
|
||||
register(fusion_torus);
|
||||
|
||||
register(watz_element);
|
||||
register(watz_cooler);
|
||||
|
||||
@ -0,0 +1,159 @@
|
||||
package com.hbm.blocks.machine.fusion;
|
||||
|
||||
import com.hbm.blocks.BlockDummyable;
|
||||
import com.hbm.tileentity.TileEntityProxyCombo;
|
||||
import com.hbm.tileentity.machine.fusion.TileEntityFusionTorus;
|
||||
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
|
||||
public class MachineFusionTorus extends BlockDummyable {
|
||||
|
||||
public static final int[][][] layout = new int[][][] {
|
||||
|
||||
new int[][] {
|
||||
new int[] {0,0,0,0,3,3,3,3,3,3,3,0,0,0,0},
|
||||
new int[] {0,0,0,3,1,1,1,1,1,1,1,3,0,0,0},
|
||||
new int[] {0,0,3,1,1,1,1,1,1,1,1,1,3,0,0},
|
||||
new int[] {0,3,1,1,1,1,1,1,1,1,1,1,1,3,0},
|
||||
new int[] {3,1,1,1,1,3,3,3,3,3,1,1,1,1,3},
|
||||
new int[] {3,1,1,1,3,3,3,3,3,3,3,1,1,1,3},
|
||||
new int[] {3,1,1,1,3,3,3,3,3,3,3,1,1,1,3},
|
||||
new int[] {3,1,1,1,3,3,3,3,3,3,3,1,1,1,3},
|
||||
new int[] {3,1,1,1,3,3,3,3,3,3,3,1,1,1,3},
|
||||
new int[] {3,1,1,1,3,3,3,3,3,3,3,1,1,1,3},
|
||||
new int[] {3,1,1,1,1,3,3,3,3,3,1,1,1,1,3},
|
||||
new int[] {0,3,1,1,1,1,1,1,1,1,1,1,1,3,0},
|
||||
new int[] {0,0,3,1,1,1,1,1,1,1,1,1,3,0,0},
|
||||
new int[] {0,0,0,3,1,1,1,1,1,1,1,3,0,0,0},
|
||||
new int[] {0,0,0,0,3,3,3,3,3,3,3,0,0,0,0},
|
||||
},
|
||||
new int[][] {
|
||||
new int[] {0,0,0,0,1,1,3,3,3,1,1,0,0,0,0},
|
||||
new int[] {0,0,0,1,1,1,1,1,1,1,1,1,0,0,0},
|
||||
new int[] {0,0,1,1,2,2,2,2,2,2,2,1,1,0,0},
|
||||
new int[] {0,1,1,2,1,1,1,1,1,1,1,2,1,1,0},
|
||||
new int[] {1,1,2,1,1,1,1,1,1,1,1,1,2,1,1},
|
||||
new int[] {1,1,2,1,1,3,3,3,3,3,1,1,2,1,1},
|
||||
new int[] {3,1,2,1,1,3,3,3,3,3,1,1,2,1,3},
|
||||
new int[] {3,1,2,1,1,3,3,3,3,3,1,1,2,1,3},
|
||||
new int[] {3,1,2,1,1,3,3,3,3,3,1,1,2,1,3},
|
||||
new int[] {1,1,2,1,1,3,3,3,3,3,1,1,2,1,1},
|
||||
new int[] {1,1,2,1,1,1,1,1,1,1,1,1,2,1,1},
|
||||
new int[] {0,1,1,2,1,1,1,1,1,1,1,2,1,1,0},
|
||||
new int[] {0,0,1,1,2,2,2,2,2,2,2,1,1,0,0},
|
||||
new int[] {0,0,0,1,1,1,1,1,1,1,1,1,0,0,0},
|
||||
new int[] {0,0,0,0,1,1,3,3,3,1,1,0,0,0,0},
|
||||
},
|
||||
new int[][] {
|
||||
new int[] {0,0,0,0,1,1,3,3,3,1,1,0,0,0,0},
|
||||
new int[] {0,0,0,1,2,2,2,2,2,2,2,1,0,0,0},
|
||||
new int[] {0,0,1,2,2,2,2,2,2,2,2,2,1,0,0},
|
||||
new int[] {0,1,2,2,2,2,2,2,2,2,2,2,2,1,0},
|
||||
new int[] {1,2,2,2,1,1,1,1,1,1,1,2,2,2,1},
|
||||
new int[] {1,2,2,2,1,3,3,3,3,3,1,2,2,2,1},
|
||||
new int[] {3,2,2,2,1,3,3,3,3,3,1,2,2,2,3},
|
||||
new int[] {3,2,2,2,1,3,3,3,3,3,1,2,2,2,3},
|
||||
new int[] {3,2,2,2,1,3,3,3,3,3,1,2,2,2,3},
|
||||
new int[] {1,2,2,2,1,3,3,3,3,3,1,2,2,2,1},
|
||||
new int[] {1,2,2,2,1,1,1,1,1,1,1,2,2,2,1},
|
||||
new int[] {0,1,2,2,2,2,2,2,2,2,2,2,2,1,0},
|
||||
new int[] {0,0,1,2,2,2,2,2,2,2,2,2,1,0,0},
|
||||
new int[] {0,0,0,1,2,2,2,2,2,2,2,1,0,0,0},
|
||||
new int[] {0,0,0,0,1,1,3,3,3,1,1,0,0,0,0},
|
||||
}
|
||||
};
|
||||
|
||||
public MachineFusionTorus() {
|
||||
super(Material.iron);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TileEntity createNewTileEntity(World world, int meta) {
|
||||
if(meta >= 12) return new TileEntityFusionTorus();
|
||||
if(meta >= 6) return new TileEntityProxyCombo().inventory().power().fluid();
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int[] getDimensions() {
|
||||
return new int[] { 4, 0, 7, 7, 7, 7 };
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getOffset() {
|
||||
return 7;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkRequirement(World world, int x, int y, int z, ForgeDirection dir, int o) {
|
||||
|
||||
x = x + dir.offsetX * o;
|
||||
z = z + dir.offsetZ * o;
|
||||
|
||||
for(int iy = 0; iy < 5; iy++) {
|
||||
|
||||
int l = iy > 2 ? 4 - iy : iy;
|
||||
int[][] layer = layout[l];
|
||||
|
||||
for(int ix = 0; ix < layer.length; ix++) {
|
||||
|
||||
for(int iz = 0; iz < layer.length; iz++) {
|
||||
|
||||
int ex = ix - layer.length / 2;
|
||||
int ez = iz - layer.length / 2;
|
||||
|
||||
if(!world.getBlock(x + ex, y + iy, z + ez).canPlaceBlockAt(world, x + ex, y + iy, z + ez)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillSpace(World world, int x, int y, int z, ForgeDirection dir, int o) {
|
||||
|
||||
x = x + dir.offsetX * o;
|
||||
z = z + dir.offsetZ * o;
|
||||
|
||||
for(int iy = 0; iy < 5; iy++) {
|
||||
|
||||
int l = iy > 2 ? 4 - iy : iy;
|
||||
int[][] layer = layout[l];
|
||||
|
||||
for(int ix = 0; ix < layer.length; ix++) {
|
||||
|
||||
for(int iz = 0; iz < layer[0].length; iz++) {
|
||||
|
||||
int ex = ix - layer.length / 2;
|
||||
int ez = iz - layer.length / 2;
|
||||
|
||||
int meta = 0;
|
||||
|
||||
if(iy > 0) {
|
||||
meta = ForgeDirection.UP.ordinal();
|
||||
} else if(ex < 0) {
|
||||
meta = ForgeDirection.WEST.ordinal();
|
||||
} else if(ex > 0) {
|
||||
meta = ForgeDirection.EAST.ordinal();
|
||||
} else if(ez < 0) {
|
||||
meta = ForgeDirection.NORTH.ordinal();
|
||||
} else if(ez > 0) {
|
||||
meta = ForgeDirection.SOUTH.ordinal();
|
||||
} else {
|
||||
continue;
|
||||
}
|
||||
|
||||
if(layout[l][ix][iz] > 0)
|
||||
world.setBlock(x + ex, y + iy, z + ez, this, meta, 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -75,6 +75,7 @@ import com.hbm.tileentity.bomb.*;
|
||||
import com.hbm.tileentity.deco.*;
|
||||
import com.hbm.tileentity.machine.*;
|
||||
import com.hbm.tileentity.machine.albion.*;
|
||||
import com.hbm.tileentity.machine.fusion.*;
|
||||
import com.hbm.tileentity.machine.oil.*;
|
||||
import com.hbm.tileentity.machine.rbmk.*;
|
||||
import com.hbm.tileentity.machine.storage.*;
|
||||
@ -422,6 +423,8 @@ public class ClientProxy extends ServerProxy {
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachinePlasmaHeater.class, new RenderPlasmaHeater());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityICF.class, new RenderICF());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityICFController.class, new RenderICFController());
|
||||
//Fusion
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityFusionTorus.class, new RenderFusionTorus());
|
||||
//Watz
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityWatz.class, new RenderWatz());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityWatzPump.class, new RenderWatzPump());
|
||||
|
||||
@ -248,6 +248,7 @@ public class ResourceManager {
|
||||
|
||||
//ITER
|
||||
public static final IModelCustom iter = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/reactors/iter.obj")).asVBO();
|
||||
public static final IModelCustom fusion_torus = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/fusion/torus.obj")).asVBO();
|
||||
|
||||
//ICF
|
||||
public static final IModelCustom icf = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/reactors/icf.obj")).asVBO();
|
||||
@ -698,6 +699,7 @@ public class ResourceManager {
|
||||
public static final ResourceLocation iter_torus_desh = new ResourceLocation(RefStrings.MODID, "textures/models/iter/torus_desh.png");
|
||||
public static final ResourceLocation iter_torus_chlorophyte = new ResourceLocation(RefStrings.MODID, "textures/models/iter/torus_chlorophyte.png");
|
||||
public static final ResourceLocation iter_torus_vaporwave = new ResourceLocation(RefStrings.MODID, "textures/models/iter/torus_vaporwave.png");
|
||||
public static final ResourceLocation fusion_torus_tex = new ResourceLocation(RefStrings.MODID, "textures/models/fusion/torus.png");
|
||||
|
||||
//ICF
|
||||
public static final ResourceLocation icf_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/icf.png");
|
||||
|
||||
@ -0,0 +1,51 @@
|
||||
package com.hbm.render.tileentity;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
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 RenderFusionTorus 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);
|
||||
|
||||
GL11.glShadeModel(GL11.GL_SMOOTH);
|
||||
bindTexture(ResourceManager.fusion_torus_tex);
|
||||
ResourceManager.fusion_torus.renderAll();
|
||||
GL11.glShadeModel(GL11.GL_FLAT);
|
||||
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Item getItemForRenderer() {
|
||||
return Item.getItemFromBlock(ModBlocks.fusion_torus);
|
||||
}
|
||||
|
||||
@Override
|
||||
public IItemRenderer getRenderer() {
|
||||
return new ItemRenderBase() {
|
||||
public void renderInventory() {
|
||||
GL11.glScaled(2, 2, 2);
|
||||
}
|
||||
public void renderCommon() {
|
||||
GL11.glScaled(0.5, 0.5, 0.5);
|
||||
GL11.glRotatef(90, 0F, 1F, 0F);
|
||||
GL11.glShadeModel(GL11.GL_SMOOTH);
|
||||
bindTexture(ResourceManager.fusion_torus_tex);
|
||||
ResourceManager.fusion_torus.renderAll();
|
||||
GL11.glShadeModel(GL11.GL_FLAT);
|
||||
}};
|
||||
}
|
||||
}
|
||||
@ -48,6 +48,7 @@ import com.hbm.tileentity.bomb.*;
|
||||
import com.hbm.tileentity.deco.*;
|
||||
import com.hbm.tileentity.machine.*;
|
||||
import com.hbm.tileentity.machine.albion.*;
|
||||
import com.hbm.tileentity.machine.fusion.*;
|
||||
import com.hbm.tileentity.machine.oil.*;
|
||||
import com.hbm.tileentity.machine.pile.*;
|
||||
import com.hbm.tileentity.machine.rbmk.*;
|
||||
@ -253,6 +254,7 @@ public class TileMappings {
|
||||
putMachines();
|
||||
putPile();
|
||||
putRBMK();
|
||||
putFusion();
|
||||
|
||||
TileEntityMachineRadarNT.registerEntityClasses();
|
||||
TileEntityMachineRadarNT.registerConverters();
|
||||
@ -410,6 +412,10 @@ public class TileMappings {
|
||||
put(TileEntityRBMKAutoloader.class, "tileentity_rbmk_autoloader");
|
||||
}
|
||||
|
||||
private static void putFusion() {
|
||||
put(TileEntityFusionTorus.class, "tileentity_fusion_torus");
|
||||
}
|
||||
|
||||
private static void putNetwork() {
|
||||
put(TileEntityCableBaseNT.class, "tileentity_cable", "tileentity_wirecoated");
|
||||
put(TileEntityCablePaintable.class, "tileentity_cable_paintable");
|
||||
|
||||
@ -0,0 +1,60 @@
|
||||
package com.hbm.tileentity.machine.fusion;
|
||||
|
||||
import com.hbm.tileentity.machine.albion.TileEntityCooledBase;
|
||||
import com.hbm.util.fauxpointtwelve.DirPos;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
|
||||
public class TileEntityFusionTorus extends TileEntityCooledBase {
|
||||
|
||||
public TileEntityFusionTorus() {
|
||||
super(3);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "container.fusionTorus";
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateEntity() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getMaxPower() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DirPos[] getConPos() {
|
||||
return null;
|
||||
}
|
||||
|
||||
AxisAlignedBB bb = null;
|
||||
|
||||
@Override
|
||||
public AxisAlignedBB getRenderBoundingBox() {
|
||||
|
||||
if(bb == null) {
|
||||
bb = AxisAlignedBB.getBoundingBox(
|
||||
xCoord - 8,
|
||||
yCoord,
|
||||
zCoord - 8,
|
||||
xCoord + 9,
|
||||
yCoord + 5,
|
||||
zCoord + 9
|
||||
);
|
||||
}
|
||||
|
||||
return bb;
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public double getMaxRenderDistanceSquared() {
|
||||
return 65536.0D;
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 4.9 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 4.9 KiB |
Loading…
x
Reference in New Issue
Block a user