aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.idea/uiDesigner.xml124
-rw-r--r--mods/bartworks[1.7.10]-0.5.13_pre10.jar (renamed from mods/bartworks[1.7.10]-0.5.13_pre10.jars)bin885812 -> 885812 bytes
-rw-r--r--src/main/java/client/renderer/ConduitRenderer.java (renamed from src/main/java/render/ConduitRenderer.java)5
-rw-r--r--src/main/java/client/renderer/TetherRenderer.java81
-rw-r--r--src/main/java/common/Blocks.java4
-rw-r--r--src/main/java/common/blocks/Block_ItemProxyCable.java8
-rw-r--r--src/main/java/common/blocks/Block_SpaceElevator.java12
-rw-r--r--src/main/java/common/blocks/Block_SpaceElevatorCapacitor.java49
-rw-r--r--src/main/java/common/blocks/Block_SpaceElevatorTether.java70
-rw-r--r--src/main/java/common/tileentities/TE_SpaceElevatorTether.java7
-rw-r--r--src/main/java/kekztech/KekzCore.java6
-rw-r--r--src/main/resources/assets/kekztech/lang/en_US.lang4
-rw-r--r--src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorBase_side.pngbin203 -> 242 bytes
-rw-r--r--src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorBase_top.pngbin242 -> 203 bytes
-rw-r--r--src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorCapacitor_side_0.pngbin0 -> 184 bytes
-rw-r--r--src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorCapacitor_side_fullbase.pngbin0 -> 183 bytes
-rw-r--r--src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorCapacitor_top_fullbase.pngbin0 -> 213 bytes
-rw-r--r--src/main/resources/assets/kekztech/textures/blocks/Tether_side.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/kekztech/textures/blocks/Tether_top.pngbin0 -> 224 bytes
-rw-r--r--src/main/resources/assets/kekztech/textures/effects/Tether_beam.pngbin0 -> 195 bytes
20 files changed, 352 insertions, 18 deletions
diff --git a/.idea/uiDesigner.xml b/.idea/uiDesigner.xml
new file mode 100644
index 0000000000..e96534fb27
--- /dev/null
+++ b/.idea/uiDesigner.xml
@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="Palette2">
+ <group name="Swing">
+ <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
+ </item>
+ <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
+ </item>
+ <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
+ <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
+ <initial-values>
+ <property name="text" value="Button" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="RadioButton" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="CheckBox" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="Label" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+ <preferred-size width="200" height="200" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+ <preferred-size width="200" height="200" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
+ </item>
+ <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
+ <preferred-size width="-1" height="20" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
+ </item>
+ <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
+ </item>
+ </group>
+ </component>
+</project> \ No newline at end of file
diff --git a/mods/bartworks[1.7.10]-0.5.13_pre10.jars b/mods/bartworks[1.7.10]-0.5.13_pre10.jar
index b1a8b4322f..b1a8b4322f 100644
--- a/mods/bartworks[1.7.10]-0.5.13_pre10.jars
+++ b/mods/bartworks[1.7.10]-0.5.13_pre10.jar
Binary files differ
diff --git a/src/main/java/render/ConduitRenderer.java b/src/main/java/client/renderer/ConduitRenderer.java
index e1b083004c..9619a73241 100644
--- a/src/main/java/render/ConduitRenderer.java
+++ b/src/main/java/client/renderer/ConduitRenderer.java
@@ -1,16 +1,13 @@
-package render;
+package client.renderer;
import common.tileentities.TE_ItemProxyCable;
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
import cpw.mods.fml.client.registry.RenderingRegistry;
import net.minecraft.block.Block;
import net.minecraft.client.renderer.RenderBlocks;
-import net.minecraft.client.renderer.Tessellator;
import net.minecraft.tileentity.TileEntity;
-import net.minecraft.util.IIcon;
import net.minecraft.world.IBlockAccess;
import net.minecraftforge.common.util.ForgeDirection;
-import org.lwjgl.opengl.GL11;
public class ConduitRenderer implements ISimpleBlockRenderingHandler {
diff --git a/src/main/java/client/renderer/TetherRenderer.java b/src/main/java/client/renderer/TetherRenderer.java
new file mode 100644
index 0000000000..6484da7cef
--- /dev/null
+++ b/src/main/java/client/renderer/TetherRenderer.java
@@ -0,0 +1,81 @@
+package client.renderer;
+
+import common.tileentities.TE_SpaceElevatorTether;
+import kekztech.KekzCore;
+import net.minecraft.client.renderer.OpenGlHelper;
+import net.minecraft.client.renderer.Tessellator;
+import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
+import net.minecraft.tileentity.TileEntity;
+import net.minecraft.util.MathHelper;
+import net.minecraft.util.ResourceLocation;
+import org.lwjgl.opengl.GL11;
+
+public class TetherRenderer extends TileEntitySpecialRenderer {
+
+ private static final ResourceLocation tetherBeamTexture = new ResourceLocation(KekzCore.MODID, "textures/effects/Tether_beam.png");
+
+ public void renderTileEntityAt(TE_SpaceElevatorTether teTether, double x, double y, double z, float partialTick) {
+ float sthBeamLength = 1.0F; // 0.1F is about 30 or so blocks?
+ GL11.glAlphaFunc(GL11.GL_GREATER, 0.1F);
+
+ // Get Tessellator instance
+ final Tessellator tessellator = Tessellator.instance;
+ // Bind beam texture and set texture params
+ super.bindTexture(tetherBeamTexture);
+ GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_S, 10497.0F);
+ GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_T, 10497.0F);
+ // Set render flags for inner beam
+ GL11.glDisable(GL11.GL_LIGHTING);
+ GL11.glDisable(GL11.GL_CULL_FACE);
+ GL11.glDisable(GL11.GL_BLEND);
+ GL11.glDepthMask(true);
+ OpenGlHelper.glBlendFunc(770, 1, 1, 0);
+ // Prepare Tessellator
+ tessellator.startDrawingQuads();
+ tessellator.setColorRGBA(255, 255, 255, 32);
+ // Variables stuff II
+ double halfBeamWidth = 0.38D;
+ double d_rot1 = 0.5D + Math.cos(2.356194490192345D) * halfBeamWidth; // rotates the beam...
+ double d_rot2 = 0.5D + Math.sin(2.356194490192345D) * halfBeamWidth;
+ double d_rot3 = 0.5D + Math.cos((Math.PI / 4D)) * halfBeamWidth;
+ double d_rot4 = 0.5D + Math.sin((Math.PI / 4D)) * halfBeamWidth;
+ double d_rot5 = 0.5D + Math.cos(3.9269908169872414D) * halfBeamWidth;
+ double d_rot6 = 0.5D + Math.sin(3.9269908169872414D) * halfBeamWidth;
+ double d_rot7 = 0.5D + Math.cos(5.497787143782138D) * halfBeamWidth;
+ double d_rot8 = 0.5D + Math.sin(5.497787143782138D) * halfBeamWidth; // ...until here
+ double d23 = 256.0F * sthBeamLength;
+ double uv_x1 = 0.0D;
+ double uv_x2 = 1.0D;
+ double uv_y1 = -1.0D; // This makes the beam stream upwards if you add a time sensitive number to it
+ double uv_y2 = (double)(256.0F * sthBeamLength) * (0.5D / halfBeamWidth) + uv_y1;
+ // Construct mesh with texture
+ tessellator.addVertexWithUV(x + d_rot1, y + d23, z + d_rot2, uv_x2, uv_y2);
+ tessellator.addVertexWithUV(x + d_rot1, y, z + d_rot2, uv_x2, uv_y1);
+ tessellator.addVertexWithUV(x + d_rot3, y, z + d_rot4, uv_x1, uv_y1);
+ tessellator.addVertexWithUV(x + d_rot3, y + d23, z + d_rot4, uv_x1, uv_y2);
+ tessellator.addVertexWithUV(x + d_rot7, y + d23, z + d_rot8, uv_x2, uv_y2);
+ tessellator.addVertexWithUV(x + d_rot7, y, z + d_rot8, uv_x2, uv_y1);
+ tessellator.addVertexWithUV(x + d_rot5, y, z + d_rot6, uv_x1, uv_y1);
+ tessellator.addVertexWithUV(x + d_rot5, y + d23, z + d_rot6, uv_x1, uv_y2);
+ tessellator.addVertexWithUV(x + d_rot3, y + d23, z + d_rot4, uv_x2, uv_y2);
+ tessellator.addVertexWithUV(x + d_rot3, y, z + d_rot4, uv_x2, uv_y1);
+ tessellator.addVertexWithUV(x + d_rot7, y, z + d_rot8, uv_x1, uv_y1);
+ tessellator.addVertexWithUV(x + d_rot7, y + d23, z + d_rot8, uv_x1, uv_y2);
+ tessellator.addVertexWithUV(x + d_rot5, y + d23, z + d_rot6, uv_x2, uv_y2);
+ tessellator.addVertexWithUV(x + d_rot5, y, z + d_rot6, uv_x2, uv_y1);
+ tessellator.addVertexWithUV(x + d_rot1, y, z + d_rot2, uv_x1, uv_y1);
+ tessellator.addVertexWithUV(x + d_rot1, y + d23, z + d_rot2, uv_x1, uv_y2);
+ // Draw!
+ tessellator.draw();
+
+ // Reset render flags
+ GL11.glEnable(GL11.GL_LIGHTING);
+ GL11.glEnable(GL11.GL_TEXTURE_2D);
+ GL11.glDepthMask(true);
+ }
+
+ @Override
+ public void renderTileEntityAt(TileEntity te, double p_147500_2_, double p_147500_4_, double p_147500_6_, float p_147500_8_) {
+ this.renderTileEntityAt((TE_SpaceElevatorTether) te, p_147500_2_, p_147500_4_, p_147500_6_, p_147500_8_);
+ }
+}
diff --git a/src/main/java/common/Blocks.java b/src/main/java/common/Blocks.java
index 4b26ddc133..18725b6000 100644
--- a/src/main/java/common/Blocks.java
+++ b/src/main/java/common/Blocks.java
@@ -35,6 +35,8 @@ public class Blocks {
public static Block lscLapotronicEnergyUnit;
public static Block spaceElevatorStructure;
+ public static Block spaceElevatorCapacitor;
+ public static Block spaceElevatorTether;
public static void preInit() {
KekzCore.LOGGER.info("Registering blocks...");
@@ -95,6 +97,8 @@ public class Blocks {
private static void registerBlocks_SpaceElevator() {
spaceElevatorStructure = Block_SpaceElevator.registerBlock();
+ spaceElevatorCapacitor = Block_SpaceElevatorCapacitor.registerBlock();
+ spaceElevatorTether = Block_SpaceElevatorTether.registerBlock();
}
}
diff --git a/src/main/java/common/blocks/Block_ItemProxyCable.java b/src/main/java/common/blocks/Block_ItemProxyCable.java
index 8682a2a6dc..ce2f1e9820 100644
--- a/src/main/java/common/blocks/Block_ItemProxyCable.java
+++ b/src/main/java/common/blocks/Block_ItemProxyCable.java
@@ -2,7 +2,6 @@ package common.blocks;
import common.itemBlocks.IB_ItemProxyCable;
import common.tileentities.TE_ItemProxyCable;
-import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -12,7 +11,7 @@ import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
-import render.ConduitRenderer;
+import client.renderer.ConduitRenderer;
public class Block_ItemProxyCable extends Block {
@@ -57,10 +56,7 @@ public class Block_ItemProxyCable extends Block {
@Override
public int getRenderType() {
- if (FMLCommonHandler.instance().getSide().isClient()) {
- return ConduitRenderer.RID;
- } else
- return 0;
+ return ConduitRenderer.RID;
}
@Override
diff --git a/src/main/java/common/blocks/Block_SpaceElevator.java b/src/main/java/common/blocks/Block_SpaceElevator.java
index 39e8fdaf28..524f34ba46 100644
--- a/src/main/java/common/blocks/Block_SpaceElevator.java
+++ b/src/main/java/common/blocks/Block_SpaceElevator.java
@@ -29,7 +29,6 @@ public class Block_SpaceElevator extends BaseGTUpdateableBlock {
final String blockName = "kekztech_spaceelevator_block";
INSTANCE.setBlockName(blockName);
INSTANCE.setCreativeTab(CreativeTabs.tabMisc);
- INSTANCE.setBlockTextureName(KekzCore.MODID + ":" + "ControlRod");
INSTANCE.setHardness(7.0f);
INSTANCE.setResistance(10.0f);
GameRegistry.registerBlock(INSTANCE, IB_SpaceElevator.class, blockName);
@@ -39,8 +38,8 @@ public class Block_SpaceElevator extends BaseGTUpdateableBlock {
@Override
public void registerBlockIcons(IIconRegister ir) {
- baseTop = ir.registerIcon("kekztech:SpaceElevatorBase_side");
- baseSide = ir.registerIcon("kekztech:SpaceElevatorBase_top");
+ baseTop = ir.registerIcon("kekztech:SpaceElevatorBase_top");
+ baseSide = ir.registerIcon("kekztech:SpaceElevatorBase_side");
coilHolder = ir.registerIcon("kekztech:CoilHolder");
}
@@ -53,9 +52,10 @@ public class Block_SpaceElevator extends BaseGTUpdateableBlock {
@Override
public IIcon getIcon(int side, int meta) {
- switch(meta) {
- case 0: return (side < 2) ? baseTop : baseSide;
- default: return coilHolder;
+ if(meta == 0) {
+ return (side < 2) ? baseTop : baseSide;
+ } else {
+ return coilHolder;
}
}
}
diff --git a/src/main/java/common/blocks/Block_SpaceElevatorCapacitor.java b/src/main/java/common/blocks/Block_SpaceElevatorCapacitor.java
new file mode 100644
index 0000000000..1e8bde9d40
--- /dev/null
+++ b/src/main/java/common/blocks/Block_SpaceElevatorCapacitor.java
@@ -0,0 +1,49 @@
+package common.blocks;
+
+import common.itemBlocks.IB_SpaceElevator;
+import cpw.mods.fml.common.registry.GameRegistry;
+import kekztech.KekzCore;
+import net.minecraft.block.Block;
+import net.minecraft.block.material.Material;
+import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.util.IIcon;
+
+public class Block_SpaceElevatorCapacitor extends BaseGTUpdateableBlock {
+
+ private static final Block_SpaceElevatorCapacitor INSTANCE = new Block_SpaceElevatorCapacitor();
+
+ private IIcon top;
+ private IIcon side;
+
+ private Block_SpaceElevatorCapacitor() {
+ super(Material.iron);
+ }
+
+ public static Block registerBlock() {
+ final String blockName = "kekztech_spaceelevatorcapacitor_block";
+ INSTANCE.setBlockName(blockName);
+ INSTANCE.setCreativeTab(CreativeTabs.tabMisc);
+ INSTANCE.setHardness(5.0f);
+ INSTANCE.setResistance(3.0f);
+ GameRegistry.registerBlock(INSTANCE, blockName);
+
+ return INSTANCE;
+ }
+
+ @Override
+ public void registerBlockIcons(IIconRegister ir) {
+ top = ir.registerIcon("kekztech:SpaceElevatorCapacitor_top_fullbase");
+ side = ir.registerIcon("kekztech:SpaceElevatorCapacitor_side_fullbase");
+ }
+
+ @Override
+ public IIcon getIcon(int side, int meta) {
+ return (side < 2) ? this.top : this.side;
+ }
+
+ @Override
+ public int getLightValue() {
+ return 2;
+ }
+}
diff --git a/src/main/java/common/blocks/Block_SpaceElevatorTether.java b/src/main/java/common/blocks/Block_SpaceElevatorTether.java
new file mode 100644
index 0000000000..3031cd8a12
--- /dev/null
+++ b/src/main/java/common/blocks/Block_SpaceElevatorTether.java
@@ -0,0 +1,70 @@
+package common.blocks;
+
+import common.tileentities.TE_ItemProxyCable;
+import common.tileentities.TE_SpaceElevatorTether;
+import cpw.mods.fml.common.registry.GameRegistry;
+import kekztech.KekzCore;
+import net.minecraft.block.Block;
+import net.minecraft.block.material.Material;
+import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.tileentity.TileEntity;
+import net.minecraft.util.IIcon;
+import net.minecraft.world.World;
+
+public class Block_SpaceElevatorTether extends BaseGTUpdateableBlock {
+
+ private static final Block_SpaceElevatorTether INSTANCE = new Block_SpaceElevatorTether();
+
+ private IIcon top;
+ private IIcon side;
+
+ private Block_SpaceElevatorTether() {
+ super(Material.glass);
+ }
+
+ public static Block registerBlock() {
+ final String blockName = "kekztech_spaceelevatortether_block";
+ INSTANCE.setBlockName(blockName);
+ INSTANCE.setCreativeTab(CreativeTabs.tabMisc);
+ INSTANCE.setHardness(15.0f);
+ INSTANCE.setResistance(15.0f);
+ GameRegistry.registerBlock(INSTANCE, blockName);
+
+ return INSTANCE;
+ }
+
+ @Override
+ public void registerBlockIcons(IIconRegister ir) {
+ top = ir.registerIcon("kekztech:Tether_top");
+ side = ir.registerIcon("kekztech:Tether_side");
+ }
+
+ @Override
+ public IIcon getIcon(int side, int meta) {
+ return (side < 2) ? this.top : this.side;
+ }
+
+ @Override
+ public TileEntity createTileEntity(World world, int p_149915_2_) {
+ return new TE_SpaceElevatorTether();
+ }
+
+ @Override
+ public boolean hasTileEntity(int metadata) {
+ return true;
+ }
+
+ @Override
+ public boolean isOpaqueCube()
+ {
+ return false;
+ }
+
+ @Override
+ public boolean renderAsNormalBlock()
+ {
+ return false;
+ }
+
+}
diff --git a/src/main/java/common/tileentities/TE_SpaceElevatorTether.java b/src/main/java/common/tileentities/TE_SpaceElevatorTether.java
new file mode 100644
index 0000000000..83a2f566ce
--- /dev/null
+++ b/src/main/java/common/tileentities/TE_SpaceElevatorTether.java
@@ -0,0 +1,7 @@
+package common.tileentities;
+
+import net.minecraft.tileentity.TileEntity;
+
+public class TE_SpaceElevatorTether extends TileEntity {
+
+}
diff --git a/src/main/java/kekztech/KekzCore.java b/src/main/java/kekztech/KekzCore.java
index cc46b25fd8..a160c3b7e7 100644
--- a/src/main/java/kekztech/KekzCore.java
+++ b/src/main/java/kekztech/KekzCore.java
@@ -1,9 +1,11 @@
package kekztech;
+import client.renderer.TetherRenderer;
import common.Blocks;
import common.Recipes;
import common.Researches;
import common.tileentities.*;
+import cpw.mods.fml.client.registry.ClientRegistry;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
@@ -67,13 +69,15 @@ public class KekzCore {
GameRegistry.registerTileEntity(TE_ItemProxyCable.class, "kekztech_itemproxycable_tile");
GameRegistry.registerTileEntity(TE_ItemProxySource.class, "kekztech_itemproxysource_tile");
GameRegistry.registerTileEntity(TE_ItemProxyEndpoint.class, "kekztech_itemproxyendpoint_tile");
-
GameRegistry.registerTileEntity(TE_ThaumiumReinforcedJar.class, "kekztech_thaumiumreinforcedjar");
GameRegistry.registerTileEntity(TE_IchorJar.class, "kekztech_ichorjar");
// Register guis
NetworkRegistry.INSTANCE.registerGuiHandler(instance, new GuiHandler());
+ // Register TESR
+ ClientRegistry.bindTileEntitySpecialRenderer(TE_SpaceElevatorTether.class, new TetherRenderer());
+
Researches.preInit();
}
diff --git a/src/main/resources/assets/kekztech/lang/en_US.lang b/src/main/resources/assets/kekztech/lang/en_US.lang
index 537823ee70..f922219b1c 100644
--- a/src/main/resources/assets/kekztech/lang/en_US.lang
+++ b/src/main/resources/assets/kekztech/lang/en_US.lang
@@ -179,4 +179,6 @@ kekztech.research_page.ICHORJAR.0=This is it!<BR><BR>By infusing a jar with just
# -------- Space Elevator: Block
tile.kekztech_spaceelevator_block.0.name=Space Elevator Base
tile.kekztech_spaceelevator_block.1.name=Space Elevator Coil Holder
-tile.kekztech_spaceelevator_block.desc=Part of the Space Elevator Base Station \ No newline at end of file
+tile.kekztech_spaceelevator_block.desc=Part of the Space Elevator Base Station
+tile.kekztech_spaceelevatorcapacitor_block.name=Space Elevator Capacitor
+tile.kekztech_spaceelevatortether_block.name=Space Elevator Tether \ No newline at end of file
diff --git a/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorBase_side.png b/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorBase_side.png
index 05afd9318a..876c26f8cb 100644
--- a/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorBase_side.png
+++ b/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorBase_side.png
Binary files differ
diff --git a/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorBase_top.png b/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorBase_top.png
index 876c26f8cb..05afd9318a 100644
--- a/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorBase_top.png
+++ b/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorBase_top.png
Binary files differ
diff --git a/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorCapacitor_side_0.png b/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorCapacitor_side_0.png
new file mode 100644
index 0000000000..4715a813ed
--- /dev/null
+++ b/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorCapacitor_side_0.png
Binary files differ
diff --git a/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorCapacitor_side_fullbase.png b/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorCapacitor_side_fullbase.png
new file mode 100644
index 0000000000..84f5909b9e
--- /dev/null
+++ b/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorCapacitor_side_fullbase.png
Binary files differ
diff --git a/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorCapacitor_top_fullbase.png b/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorCapacitor_top_fullbase.png
new file mode 100644
index 0000000000..f1c045b5af
--- /dev/null
+++ b/src/main/resources/assets/kekztech/textures/blocks/SpaceElevatorCapacitor_top_fullbase.png
Binary files differ
diff --git a/src/main/resources/assets/kekztech/textures/blocks/Tether_side.png b/src/main/resources/assets/kekztech/textures/blocks/Tether_side.png
new file mode 100644
index 0000000000..4cf0b8dda9
--- /dev/null
+++ b/src/main/resources/assets/kekztech/textures/blocks/Tether_side.png
Binary files differ
diff --git a/src/main/resources/assets/kekztech/textures/blocks/Tether_top.png b/src/main/resources/assets/kekztech/textures/blocks/Tether_top.png
new file mode 100644
index 0000000000..987ebcba5c
--- /dev/null
+++ b/src/main/resources/assets/kekztech/textures/blocks/Tether_top.png
Binary files differ
diff --git a/src/main/resources/assets/kekztech/textures/effects/Tether_beam.png b/src/main/resources/assets/kekztech/textures/effects/Tether_beam.png
new file mode 100644
index 0000000000..ca8274820b
--- /dev/null
+++ b/src/main/resources/assets/kekztech/textures/effects/Tether_beam.png
Binary files differ