Added rendering back, fixed lag issues with cables
This commit is contained in:
parent
acb06afd1f
commit
d53a2aeef1
13 changed files with 35 additions and 38 deletions
|
@ -22,7 +22,6 @@ import techreborn.packets.PacketHandler;
|
|||
import techreborn.proxies.CommonProxy;
|
||||
import techreborn.tiles.idsu.IDSUManager;
|
||||
import techreborn.util.LogHelper;
|
||||
import techreborn.world.DungeonLoot;
|
||||
import techreborn.world.TROreGen;
|
||||
import cpw.mods.fml.client.event.ConfigChangedEvent;
|
||||
import cpw.mods.fml.common.FMLCommonHandler;
|
||||
|
|
|
@ -14,7 +14,6 @@ import net.minecraft.world.World;
|
|||
import techreborn.Core;
|
||||
import techreborn.client.GuiHandler;
|
||||
import techreborn.client.TechRebornCreativeTab;
|
||||
import techreborn.client.TechRebornCreativeTabMisc;
|
||||
import techreborn.tiles.TileQuantumChest;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
|
|
@ -2,11 +2,8 @@ package techreborn.blocks.generator;
|
|||
|
||||
import ic2.api.item.IC2Items;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.Random;
|
||||
|
||||
import net.minecraftforge.fluids.*;
|
||||
import net.minecraft.util.ChatComponentText;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
|
|
|
@ -2,11 +2,8 @@ package techreborn.blocks.generator;
|
|||
|
||||
import ic2.api.item.IC2Items;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.Random;
|
||||
|
||||
import net.minecraftforge.fluids.*;
|
||||
import net.minecraft.util.ChatComponentText;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
|
|
|
@ -1,16 +1,13 @@
|
|||
package techreborn.blocks.machine;
|
||||
|
||||
import ic2.api.item.IC2Items;
|
||||
import ic2.core.Ic2Items;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.IIcon;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
|
|
@ -11,12 +11,10 @@ import net.minecraft.item.Item;
|
|||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.IIcon;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
import techreborn.Core;
|
||||
import techreborn.blocks.BlockMachineBase;
|
||||
import techreborn.client.GuiHandler;
|
||||
import techreborn.tiles.TileBlastFurnace;
|
||||
import techreborn.tiles.TileMachineCasing;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
||||
|
|
|
@ -15,7 +15,6 @@ import net.minecraft.world.World;
|
|||
import techreborn.Core;
|
||||
import techreborn.blocks.BlockMachineBase;
|
||||
import techreborn.client.GuiHandler;
|
||||
import techreborn.tiles.TileCentrifuge;
|
||||
import techreborn.tiles.TileGrinder;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
|
|
@ -15,7 +15,6 @@ import net.minecraft.world.World;
|
|||
import techreborn.Core;
|
||||
import techreborn.blocks.BlockMachineBase;
|
||||
import techreborn.client.GuiHandler;
|
||||
import techreborn.tiles.TileIndustrialElectrolyzer;
|
||||
import techreborn.tiles.TileIndustrialSawmill;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
|
|
@ -11,7 +11,6 @@ import net.minecraft.world.World;
|
|||
import techreborn.Core;
|
||||
import techreborn.blocks.BlockMachineBase;
|
||||
import techreborn.client.GuiHandler;
|
||||
import techreborn.packets.PacketHandler;
|
||||
import techreborn.tiles.TileAesu;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
|
|
@ -15,7 +15,6 @@ import cpw.mods.fml.relauncher.Side;
|
|||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import techreborn.client.GuiHandler;
|
||||
import techreborn.packets.PacketHandler;
|
||||
import techreborn.tiles.TileAesu;
|
||||
import techreborn.tiles.idsu.IDSUManager;
|
||||
import techreborn.tiles.idsu.TileIDSU;
|
||||
|
||||
|
|
|
@ -90,4 +90,5 @@ public class ModPartUtils {
|
|||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -104,11 +104,11 @@ public class FMPModPart extends TMultiPart implements TSlottedPart,
|
|||
return cubes;
|
||||
}
|
||||
|
||||
// @Override
|
||||
// @SideOnly(Side.CLIENT)
|
||||
// public void renderDynamic(Vector3 pos, float frame, int pass) {
|
||||
// iModPart.renderDynamic(new Vecs3d(pos.x, pos.y, pos.z), frame);
|
||||
// }
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void renderDynamic(Vector3 pos, float frame, int pass) {
|
||||
iModPart.renderDynamic(new Vecs3d(pos.x, pos.y, pos.z), frame);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getType() {
|
||||
|
@ -178,14 +178,14 @@ public class FMPModPart extends TMultiPart implements TSlottedPart,
|
|||
super.onRemoved();
|
||||
}
|
||||
|
||||
// @Override
|
||||
// public boolean renderStatic(Vector3 pos, int pass) {
|
||||
// boolean render;
|
||||
// RenderHelper.instance.setRenderCoords(getWorld(), (int) pos.x, (int) pos.y, (int) pos.z);
|
||||
// render = iModPart.renderStatic(new Vecs3d((int) pos.x, (int) pos.y, (int) pos.z), RenderHelper.instance, pass);
|
||||
// RenderHelper.instance.reset();
|
||||
// return render;
|
||||
// }
|
||||
@Override
|
||||
public boolean renderStatic(Vector3 pos, int pass) {
|
||||
boolean render;
|
||||
RenderHelper.instance.setRenderCoords(getWorld(), (int) pos.x, (int) pos.y, (int) pos.z);
|
||||
render = iModPart.renderStatic(new Vecs3d((int) pos.x, (int) pos.y, (int) pos.z), RenderHelper.instance, pass);
|
||||
RenderHelper.instance.reset();
|
||||
return render;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Iterable<ItemStack> getDrops() {
|
||||
|
@ -199,4 +199,13 @@ public class FMPModPart extends TMultiPart implements TSlottedPart,
|
|||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void onPartChanged(TMultiPart part) {
|
||||
super.onPartChanged(part);
|
||||
if (iModPart.world == null || iModPart.location == null) {
|
||||
iModPart.setWorld(world());
|
||||
iModPart.setLocation(new Location(x(), y(), z()));
|
||||
}
|
||||
iModPart.nearByChange();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -42,6 +42,7 @@ public class CablePart extends ModPart implements IEnergyConductor, INetworkTile
|
|||
private boolean[] connections = new boolean[6];
|
||||
public boolean addedToEnergyNet = false;
|
||||
public ItemStack stack;
|
||||
private boolean hasCheckedSinceStartup;
|
||||
|
||||
public int type = 0;//TODO save this to nbt and not use the constructor.
|
||||
|
||||
|
@ -93,12 +94,6 @@ public class CablePart extends ModPart implements IEnergyConductor, INetworkTile
|
|||
|
||||
@Override
|
||||
public void addCollisionBoxesToList(List<Vecs3dCube> boxes, Entity entity) {
|
||||
if (world != null || location != null) {
|
||||
checkConnectedSides();
|
||||
} else {
|
||||
connectedSides = new HashMap<ForgeDirection, TileEntity>();
|
||||
}
|
||||
|
||||
for (ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) {
|
||||
if (connectedSides.containsKey(dir))
|
||||
boxes.add(boundingBoxes[Functions.getIntDirFromDirection(dir)]);
|
||||
|
@ -109,7 +104,6 @@ public class CablePart extends ModPart implements IEnergyConductor, INetworkTile
|
|||
@Override
|
||||
public List<Vecs3dCube> getSelectionBoxes() {
|
||||
List<Vecs3dCube> vec3dCubeList = new ArrayList<Vecs3dCube>();
|
||||
checkConnectedSides();
|
||||
for (ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) {
|
||||
if (connectedSides.containsKey(dir))
|
||||
vec3dCubeList.add(boundingBoxes[Functions
|
||||
|
@ -167,6 +161,13 @@ public class CablePart extends ModPart implements IEnergyConductor, INetworkTile
|
|||
this.addedToEnergyNet = true;
|
||||
nearByChange();
|
||||
}
|
||||
if(worldObj != null){
|
||||
if(worldObj.getTotalWorldTime() % 40 == 0 || hasCheckedSinceStartup == false){
|
||||
checkConnectedSides();
|
||||
hasCheckedSinceStartup = true;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -182,7 +183,7 @@ public class CablePart extends ModPart implements IEnergyConductor, INetworkTile
|
|||
this.addedToEnergyNet = true;
|
||||
nearByChange();
|
||||
}
|
||||
|
||||
checkConnectedSides();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -225,6 +226,9 @@ public class CablePart extends ModPart implements IEnergyConductor, INetworkTile
|
|||
connectedSides.put(dir, te);
|
||||
}
|
||||
}
|
||||
if(te != null){
|
||||
te.getWorldObj().markBlockForUpdate(te.xCoord, te.yCoord, te.zCoord);
|
||||
}
|
||||
}
|
||||
checkConnections(world, getX(), getY(), getZ());
|
||||
getWorld().markBlockForUpdate(getX(), getY(), getZ());
|
||||
|
|
Loading…
Add table
Reference in a new issue