diff options
| author | Technus <daniel112092@gmail.com> | 2017-06-15 21:03:42 +0200 |
|---|---|---|
| committer | Technus <daniel112092@gmail.com> | 2017-06-15 21:03:42 +0200 |
| commit | 3605aa71567128b0f441f2f1ef1e2d677da40674 (patch) | |
| tree | e1bc832d18e0dddf104dcf1cba492b8c2eb3aef2 /src/main/java/gregtech/common/tileentities/machines/basic | |
| parent | e25a9416d44c1c69ab9434af9f0e2ba643308d38 (diff) | |
| parent | 30b6d22d8134215452f7310d9952cc3054252a73 (diff) | |
| download | GT5-Unofficial-3605aa71567128b0f441f2f1ef1e2d677da40674.tar.gz GT5-Unofficial-3605aa71567128b0f441f2f1ef1e2d677da40674.tar.bz2 GT5-Unofficial-3605aa71567128b0f441f2f1ef1e2d677da40674.zip | |
Merge branch 'unstable_BLOOD' into reMerge
# Conflicts:
# build.properties
# src/main/java/gregtech/GT_Mod.java
# src/main/java/gregtech/api/enums/Textures.java
# src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java
# src/main/java/gregtech/api/interfaces/tileentity/IEnergyConnected.java
# src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java
# src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java
# src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java
# src/main/java/gregtech/api/metatileentity/MetaTileEntity.java
# src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java
# src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java
# src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Muffler.java
# src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java
# src/main/java/gregtech/api/objects/GT_UO_DimensionList.java
# src/main/java/gregtech/api/util/GT_Utility.java
# src/main/java/gregtech/common/GT_Client.java
# src/main/java/gregtech/common/GT_Pollution.java
# src/main/java/gregtech/common/GT_Proxy.java
# src/main/java/gregtech/common/GT_UndergroundOil.java
# src/main/java/gregtech/common/GT_Worldgenerator.java
# src/main/java/gregtech/common/blocks/GT_Block_Machines.java
# src/main/java/gregtech/common/blocks/GT_Material_Casings.java
# src/main/java/gregtech/common/covers/GT_Cover_Arm.java
# src/main/java/gregtech/common/covers/GT_Cover_ControlsWork.java
# src/main/java/gregtech/common/covers/GT_Cover_Conveyor.java
# src/main/java/gregtech/common/covers/GT_Cover_DoesWork.java
# src/main/java/gregtech/common/covers/GT_Cover_Drain.java
# src/main/java/gregtech/common/covers/GT_Cover_EUMeter.java
# src/main/java/gregtech/common/covers/GT_Cover_EnergyOnly.java
# src/main/java/gregtech/common/covers/GT_Cover_PlayerDetector.java
# src/main/java/gregtech/common/covers/GT_Cover_Pump.java
# src/main/java/gregtech/common/covers/GT_Cover_RedstoneConductor.java
# src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverInternal.java
# src/main/java/gregtech/common/covers/GT_Cover_RedstoneSignalizer.java
# src/main/java/gregtech/common/covers/GT_Cover_RedstoneWirelessBase.java
# src/main/java/gregtech/common/covers/GT_Cover_Shutter.java
# src/main/java/gregtech/common/covers/GT_Cover_Vent.java
# src/main/java/gregtech/common/gui/GT_Container_ChestBuffer.java
# src/main/java/gregtech/common/gui/GT_Container_Filter.java
# src/main/java/gregtech/common/gui/GT_Container_SuperBuffer.java
# src/main/java/gregtech/common/gui/GT_Container_TypeFilter.java
# src/main/java/gregtech/common/items/behaviors/Behaviour_None.java
# src/main/java/gregtech/common/items/behaviors/Behaviour_Prospecting.java
# src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Steel.java
# src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_LightningRod.java
# src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_MicrowaveEnergyTransmitter.java
# src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Teleporter.java
# src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java
# src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java
# src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java
# src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java
# src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Bronze.java
# src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Steel.java
# src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_TungstenSteel.java
# src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilDrill.java
# src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java
# src/main/java/gregtech/loaders/load/GT_FuelLoader.java
# src/main/java/gregtech/loaders/misc/GT_CoverLoader.java
# src/main/java/gregtech/loaders/oreprocessing/ProcessingPlate.java
# src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java
# src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java
# src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java
Diffstat (limited to 'src/main/java/gregtech/common/tileentities/machines/basic')
2 files changed, 54 insertions, 12 deletions
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_MicrowaveEnergyTransmitter.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_MicrowaveEnergyTransmitter.java index 4d98998c3f..ec3228f209 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_MicrowaveEnergyTransmitter.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_MicrowaveEnergyTransmitter.java @@ -16,6 +16,7 @@ import gregtech.common.gui.GT_Container_MicrowaveEnergyTransmitter; import gregtech.common.gui.GT_GUIContainer_MicrowaveEnergyTransmitter; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.InventoryPlayer; +import net.minecraft.init.Blocks; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.EnumChatFormatting; diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Teleporter.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Teleporter.java index 8b74e6c2fa..f24cfb64eb 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Teleporter.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Teleporter.java @@ -1,12 +1,14 @@ package gregtech.common.tileentities.machines.basic; import gregtech.api.enums.ConfigCategories; +import gregtech.api.enums.Materials; import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicTank; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.objects.XSTR; import gregtech.api.util.GT_Config; import gregtech.api.util.GT_Utility; import gregtech.common.gui.GT_Container_Teleporter; @@ -20,11 +22,13 @@ import net.minecraft.entity.boss.EntityDragonPart; import net.minecraft.entity.effect.EntityWeatherEffect; import net.minecraft.entity.item.*; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.entity.projectile.EntityArrow; import net.minecraft.entity.projectile.EntityFireball; import net.minecraft.entity.projectile.EntityFishHook; import net.minecraft.entity.projectile.EntityThrowable; +import net.minecraft.init.Blocks; import net.minecraft.inventory.IInventory; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; @@ -33,7 +37,6 @@ import net.minecraft.util.EnumChatFormatting; import net.minecraft.world.World; import net.minecraftforge.common.DimensionManager; import net.minecraftforge.fluids.FluidStack; - import static gregtech.api.enums.GT_Values.V; public class GT_MetaTileEntity_Teleporter extends GT_MetaTileEntity_BasicTank { @@ -45,8 +48,9 @@ public class GT_MetaTileEntity_Teleporter extends GT_MetaTileEntity_BasicTank { public int mTargetX = 0; public int mTargetY = 0; public int mTargetZ = 0; - public int mTargetD = Integer.MIN_VALUE; + public int mTargetD = Integer.MIN_VALUE;//0 public boolean mDebug = false; + //public boolean hasEgg = false; public GT_MetaTileEntity_Teleporter(int aID, String aName, String aNameRegional, int aTier) { super(aID, aName, aNameRegional, aTier, 3, "Teleport long distances with this little device."); @@ -142,6 +146,7 @@ public class GT_MetaTileEntity_Teleporter extends GT_MetaTileEntity_BasicTank { @Override public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) { if (aBaseMetaTileEntity.isClientSide()) return true; + //this.hasEgg = checkForEgg(); aBaseMetaTileEntity.openGUI(aPlayer); return true; } @@ -211,15 +216,34 @@ public class GT_MetaTileEntity_Teleporter extends GT_MetaTileEntity_BasicTank { @Override public void onFirstTick(IGregTechTileEntity aBaseMetaTileEntity) { - if (aBaseMetaTileEntity.isServerSide() && (this.mTargetX == 0) && (this.mTargetY == 0) && (this.mTargetZ == 0) && (this.mTargetD == Integer.MIN_VALUE)) { - this.mTargetX = aBaseMetaTileEntity.getXCoord(); - this.mTargetY = aBaseMetaTileEntity.getYCoord(); - this.mTargetZ = aBaseMetaTileEntity.getZCoord(); - this.mTargetD = aBaseMetaTileEntity.getWorld().provider.dimensionId; + if (getBaseMetaTileEntity().isServerSide()) { + if ((this.mTargetX == 0) && (this.mTargetY == 0) && (this.mTargetZ == 0) && (this.mTargetD == Integer.MIN_VALUE)) { + this.mTargetX = aBaseMetaTileEntity.getXCoord(); + this.mTargetY = aBaseMetaTileEntity.getYCoord(); + this.mTargetZ = aBaseMetaTileEntity.getZCoord(); + this.mTargetD = aBaseMetaTileEntity.getWorld().provider.dimensionId; + } + //this.hasEgg = checkForEgg(); } } - public boolean hasDimensionalTeleportCapability() {return true;} + //public boolean checkForEgg() { + // for (byte i = -5; i <= 5; i = (byte) (i + 1)) { + // for (byte j = -5; j <= 5; j = (byte) (j + 1)) { + // for (byte k = -5; k <= 5; k = (byte) (k + 1)) { + // if (getBaseMetaTileEntity().getBlockOffset(i, j, k) == Blocks.dragon_egg) { + // return true; + // } + // } + // } + // } + // return false; + //} + + public boolean hasDimensionalTeleportCapability() { + //return (this.mDebug) || (this.hasEgg) || (mFluid.isFluidEqual(Materials.Nitrogen.getPlasma(1)) && mFluid.amount >= 10); + return true; + } public boolean isDimensionalTeleportAvailable() { return (this.mDebug) || ((GT_Utility.isRealDimension(this.mTargetD)) && (GT_Utility.isRealDimension(getBaseMetaTileEntity().getWorld().provider.dimensionId))); @@ -227,11 +251,22 @@ public class GT_MetaTileEntity_Teleporter extends GT_MetaTileEntity_BasicTank { @Override public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { - if (mFluid != null) mFluid=null; + if (mFluid != null) {//Was if null -> Materials.Nitrogen.getPlasma(0); + mFluid = null; + } super.onPostTick(aBaseMetaTileEntity, aTick); if (getBaseMetaTileEntity().isServerSide()) { + //if (getBaseMetaTileEntity().getTimer() % 100L == 50L) { + // this.hasEgg = checkForEgg(); + //} if ((getBaseMetaTileEntity().isAllowedToWork()) && (getBaseMetaTileEntity().getRedstone())) { if (getBaseMetaTileEntity().decreaseStoredEnergyUnits(sPassiveEnergyDrain, false)) { + //if (hasDimensionalTeleportCapability() && this.mTargetD != getBaseMetaTileEntity().getWorld().provider.dimensionId && (hasEgg || mFluid.isFluidEqual(Materials.Nitrogen.getPlasma(1)))&& new XSTR().nextInt(10)==0) { + // mFluid.amount--; + // if (mFluid.amount < 1) { + // mFluid = null; + // } + //} int tDistance = distanceCalculation(); if (mInventory[0] != null) { TileEntity tTile = null; @@ -247,7 +282,7 @@ public class GT_MetaTileEntity_Teleporter extends GT_MetaTileEntity_BasicTank { int tStacksize = mInventory[0].stackSize; GT_Utility.moveOneItemStack(this, tTile, (byte) 0, (byte) 0, null, false, (byte) 64, (byte) 1, (byte) 64, (byte) 1); if (mInventory[0] == null || mInventory[0].stackSize < tStacksize) { - getBaseMetaTileEntity().decreaseStoredEnergyUnits((long) (Math.pow(tDistance, 1.5) * (tStacksize - (mInventory[0] == null ? 0 : mInventory[0].stackSize)) * sFPowerMultiplyer), false); + getBaseMetaTileEntity().decreaseStoredEnergyUnits((long) (Math.pow(tDistance, 1.5) * tDistance * (tStacksize - (mInventory[0] == null ? 0 : mInventory[0].stackSize)) * sFPowerMultiplyer), false); } } @@ -255,8 +290,14 @@ public class GT_MetaTileEntity_Teleporter extends GT_MetaTileEntity_BasicTank { for (Object tObject : getBaseMetaTileEntity().getWorld().getEntitiesWithinAABB(Entity.class, AxisAlignedBB.getBoundingBox(getBaseMetaTileEntity().getOffsetX(getBaseMetaTileEntity().getFrontFacing(), 2) - 1, getBaseMetaTileEntity().getOffsetY(getBaseMetaTileEntity().getFrontFacing(), 2) - 1, getBaseMetaTileEntity().getOffsetZ(getBaseMetaTileEntity().getFrontFacing(), 2) - 1, getBaseMetaTileEntity().getOffsetX(getBaseMetaTileEntity().getFrontFacing(), 2) + 2, getBaseMetaTileEntity().getOffsetY(getBaseMetaTileEntity().getFrontFacing(), 2) + 2, getBaseMetaTileEntity().getOffsetZ(getBaseMetaTileEntity().getFrontFacing(), 2) + 2))) { if (((tObject instanceof Entity)) && (!((Entity) tObject).isDead)) { Entity tEntity = (Entity) tObject; - //System.out.println("teleport"+(Math.pow(tDistance, 1.5))); - if (getBaseMetaTileEntity().decreaseStoredEnergyUnits((long) ((long)Math.pow(tDistance, 1.5) * weightCalculation(tEntity) * sFPowerMultiplyer), false)) { +// System.out.println("teleport"+(Math.pow(tDistance, 1.5))); + if (getBaseMetaTileEntity().decreaseStoredEnergyUnits((long) (Math.pow(tDistance, 1.5) * weightCalculation(tEntity) * sFPowerMultiplyer), false)) { + //if (hasDimensionalTeleportCapability() && this.mTargetD != getBaseMetaTileEntity().getWorld().provider.dimensionId && (hasEgg || mFluid.isFluidEqual(Materials.Nitrogen.getPlasma(1)))) { + // mFluid.amount = mFluid.amount - ((int) Math.min(10, (Math.pow(tDistance, 1.5) * weightCalculation(tEntity) / 8192))); + // if (mFluid.amount < 1) { + // mFluid = null; + // } + //} if (tEntity.ridingEntity != null) { tEntity.mountEntity(null); } |
