mirror of
https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
synced 2026-01-25 10:32:49 +00:00
large door, some more fixes
This commit is contained in:
parent
bc98b85c19
commit
85165e0621
@ -15,7 +15,6 @@ import net.minecraft.block.material.Material;
|
|||||||
import net.minecraft.entity.EntityLivingBase;
|
import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.entity.item.EntityItem;
|
import net.minecraft.entity.item.EntityItem;
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.init.Blocks;
|
|
||||||
import net.minecraft.inventory.ISidedInventory;
|
import net.minecraft.inventory.ISidedInventory;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
|||||||
@ -13,7 +13,6 @@ import net.minecraft.entity.EntityLivingBase;
|
|||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.AxisAlignedBB;
|
import net.minecraft.util.AxisAlignedBB;
|
||||||
import net.minecraft.util.EnumFacing;
|
|
||||||
import net.minecraft.world.IBlockAccess;
|
import net.minecraft.world.IBlockAccess;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.common.util.ForgeDirection;
|
import net.minecraftforge.common.util.ForgeDirection;
|
||||||
@ -74,6 +73,8 @@ public class BlockDoorGeneric extends BlockDummyable {
|
|||||||
AxisAlignedBB box = getCollisionBoundingBoxFromPool(worldIn, x, y, z);
|
AxisAlignedBB box = getCollisionBoundingBoxFromPool(worldIn, x, y, z);
|
||||||
if(box.minY == 0 && box.maxY == 0)
|
if(box.minY == 0 && box.maxY == 0)
|
||||||
return;
|
return;
|
||||||
|
if(hasExtra(worldIn.getBlockMetadata(x, y, z)))
|
||||||
|
return;
|
||||||
super.addCollisionBoxesToList( worldIn, x, y, z, entityBox, collidingBoxes, entityIn);
|
super.addCollisionBoxesToList( worldIn, x, y, z, entityBox, collidingBoxes, entityIn);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -107,15 +108,11 @@ public class BlockDoorGeneric extends BlockDummyable {
|
|||||||
ForgeDirection dir = ForgeDirection.getOrientation(te2.getBlockMetadata() - BlockDummyable.offset);
|
ForgeDirection dir = ForgeDirection.getOrientation(te2.getBlockMetadata() - BlockDummyable.offset);
|
||||||
AxisAlignedBB box = type.getBlockBound(x - core[0], y - core[1], z - core[2], open ); //.rotate(dir.getBlockRotation().add(Rotation.COUNTERCLOCKWISE_90)), open); TODO: add rotation
|
AxisAlignedBB box = type.getBlockBound(x - core[0], y - core[1], z - core[2], open ); //.rotate(dir.getBlockRotation().add(Rotation.COUNTERCLOCKWISE_90)), open); TODO: add rotation
|
||||||
//System.out.println(te2.getBlockMetadata()-offset);
|
//System.out.println(te2.getBlockMetadata()-offset);
|
||||||
switch(te2.getBlockMetadata()-offset){
|
switch(te2.getBlockMetadata() - offset){
|
||||||
case 2:
|
case 2: return AxisAlignedBB.getBoundingBox(1 - box.minX, box.minY, 1 - box.minZ, 1 - box.maxX, box.maxY, 1 - box.maxZ);
|
||||||
return AxisAlignedBB.getBoundingBox(1-box.minX, box.minY, 1-box.minZ, 1-box.maxX, box.maxY, 1-box.maxZ);
|
case 4: return AxisAlignedBB.getBoundingBox(1 - box.minZ, box.minY, box.minX, 1 - box.maxZ, box.maxY, box.maxX);
|
||||||
case 4:
|
case 3: return AxisAlignedBB.getBoundingBox(box.minX, box.minY, box.minZ, box.maxX, box.maxY, box.maxZ);
|
||||||
return AxisAlignedBB.getBoundingBox(1-box.minZ, box.minY, box.minX, 1-box.maxZ, box.maxY, box.maxX);
|
case 5: return AxisAlignedBB.getBoundingBox(box.minZ, box.minY, 1 - box.minX, box.maxZ, box.maxY, 1 - box.maxX);
|
||||||
case 3:
|
|
||||||
return AxisAlignedBB.getBoundingBox(box.minX, box.minY, box.minZ, box.maxX, box.maxY, box.maxZ);
|
|
||||||
case 5:
|
|
||||||
return AxisAlignedBB.getBoundingBox(box.minZ, box.minY, 1-box.minX, box.maxZ, box.maxY, 1-box.maxX);
|
|
||||||
}
|
}
|
||||||
return AxisAlignedBB.getBoundingBox(0, 0, 0, 1, 1, 1);
|
return AxisAlignedBB.getBoundingBox(0, 0, 0, 1, 1, 1);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1269,6 +1269,21 @@ public class ItemRenderLibrary {
|
|||||||
bindTexture(ResourceManager.substation_tex); ResourceManager.substation.renderAll();
|
bindTexture(ResourceManager.substation_tex); ResourceManager.substation.renderAll();
|
||||||
GL11.glShadeModel(GL11.GL_FLAT);
|
GL11.glShadeModel(GL11.GL_FLAT);
|
||||||
}});
|
}});
|
||||||
|
|
||||||
|
renderers.put(Item.getItemFromBlock(ModBlocks.charger), new ItemRenderBase( ) {
|
||||||
|
public void renderInventory() {
|
||||||
|
GL11.glTranslated(0, -7, 0);
|
||||||
|
GL11.glScaled(10, 10, 10);
|
||||||
|
}
|
||||||
|
public void renderCommon() {
|
||||||
|
GL11.glScaled(2, 2, 2);
|
||||||
|
GL11.glTranslated(0.5, 0, 0);
|
||||||
|
GL11.glShadeModel(GL11.GL_SMOOTH);
|
||||||
|
bindTexture(ResourceManager.charger_tex);
|
||||||
|
ResourceManager.charger.renderPart("Base");
|
||||||
|
ResourceManager.charger.renderPart("Slide");
|
||||||
|
GL11.glShadeModel(GL11.GL_FLAT);
|
||||||
|
}});
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void bindTexture(ResourceLocation res) {
|
private static void bindTexture(ResourceLocation res) {
|
||||||
|
|||||||
@ -91,7 +91,7 @@ public class TileEntityDoorGeneric extends TileEntityLockableBase implements IAn
|
|||||||
if(finalPos.equals(pos)) {
|
if(finalPos.equals(pos)) {
|
||||||
this.shouldUseBB = false;
|
this.shouldUseBB = false;
|
||||||
} else {
|
} else {
|
||||||
((BlockDummyable)getBlockType()).removeExtra(worldObj, finalPos.getX(), finalPos.getY(), finalPos.getZ());
|
((BlockDummyable)getBlockType()).makeExtra(worldObj, finalPos.getX(), finalPos.getY(), finalPos.getZ());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -19,8 +19,8 @@ public class TileEntityCharger extends TileEntityLoadedBase implements IEnergyUs
|
|||||||
|
|
||||||
private List<EntityPlayer> players = new ArrayList();
|
private List<EntityPlayer> players = new ArrayList();
|
||||||
private long charge = 0;
|
private long charge = 0;
|
||||||
|
private int lastOp = 0;
|
||||||
|
|
||||||
long lastOp = 0;
|
|
||||||
boolean particles = false;
|
boolean particles = false;
|
||||||
|
|
||||||
public int usingTicks;
|
public int usingTicks;
|
||||||
@ -52,10 +52,12 @@ public class TileEntityCharger extends TileEntityLoadedBase implements IEnergyUs
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
particles = worldObj.getTotalWorldTime() - lastOp < 4;
|
particles = lastOp > 0;
|
||||||
|
|
||||||
if(particles) {
|
if(particles) {
|
||||||
|
|
||||||
|
lastOp--;
|
||||||
|
|
||||||
if(worldObj.getTotalWorldTime() % 20 == 0)
|
if(worldObj.getTotalWorldTime() % 20 == 0)
|
||||||
worldObj.playSoundEffect(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5, "random.fizz", 0.2F, 0.5F);
|
worldObj.playSoundEffect(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5, "random.fizz", 0.2F, 0.5F);
|
||||||
}
|
}
|
||||||
@ -116,8 +118,6 @@ public class TileEntityCharger extends TileEntityLoadedBase implements IEnergyUs
|
|||||||
if(this.usingTicks < delay || power == 0)
|
if(this.usingTicks < delay || power == 0)
|
||||||
return power;
|
return power;
|
||||||
|
|
||||||
lastOp = worldObj.getTotalWorldTime();
|
|
||||||
|
|
||||||
for(EntityPlayer player : players) {
|
for(EntityPlayer player : players) {
|
||||||
|
|
||||||
for(int i = 0; i < 5; i++) {
|
for(int i = 0; i < 5; i++) {
|
||||||
@ -131,6 +131,8 @@ public class TileEntityCharger extends TileEntityLoadedBase implements IEnergyUs
|
|||||||
toCharge = Math.min(toCharge, power / 5);
|
toCharge = Math.min(toCharge, power / 5);
|
||||||
battery.chargeBattery(stack, toCharge);
|
battery.chargeBattery(stack, toCharge);
|
||||||
power -= toCharge;
|
power -= toCharge;
|
||||||
|
|
||||||
|
lastOp = 4;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -227,10 +227,10 @@ public class TileEntityMachineChemplant extends TileEntityMachineBase implements
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void setupTanks(ChemRecipe recipe) {
|
private void setupTanks(ChemRecipe recipe) {
|
||||||
if(recipe.inputFluids[0] != null) tanks[0].setTankType(recipe.inputFluids[0].type);
|
if(recipe.inputFluids[0] != null) tanks[0].setTankType(recipe.inputFluids[0].type); else tanks[0].setTankType(Fluids.NONE);
|
||||||
if(recipe.inputFluids[1] != null) tanks[1].setTankType(recipe.inputFluids[1].type);
|
if(recipe.inputFluids[1] != null) tanks[1].setTankType(recipe.inputFluids[1].type); else tanks[1].setTankType(Fluids.NONE);
|
||||||
if(recipe.outputFluids[0] != null) tanks[2].setTankType(recipe.outputFluids[0].type);
|
if(recipe.outputFluids[0] != null) tanks[2].setTankType(recipe.outputFluids[0].type); else tanks[2].setTankType(Fluids.NONE);
|
||||||
if(recipe.outputFluids[1] != null) tanks[3].setTankType(recipe.outputFluids[1].type);
|
if(recipe.outputFluids[1] != null) tanks[3].setTankType(recipe.outputFluids[1].type); else tanks[3].setTankType(Fluids.NONE);
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean hasRequiredFluids(ChemRecipe recipe) {
|
private boolean hasRequiredFluids(ChemRecipe recipe) {
|
||||||
|
|||||||
@ -218,14 +218,17 @@ public class TileEntityMachinePress extends TileEntity implements ISidedInventor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(burnTime > 0 || preheated) {
|
if(preheated)
|
||||||
|
power += 2;
|
||||||
|
|
||||||
|
if(burnTime > 0) {
|
||||||
this.burnTime--;
|
this.burnTime--;
|
||||||
this.power++;
|
this.power++;
|
||||||
if(power > maxPower) {
|
if(power > maxPower) {
|
||||||
power = maxPower;
|
power = maxPower;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if(power > 0 && !preheated) {
|
if(power > 0) {
|
||||||
power--;
|
power--;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user