diff options
Diffstat (limited to 'src/main/java/gregtech/common')
9 files changed, 82 insertions, 61 deletions
diff --git a/src/main/java/gregtech/common/GT_MinableOreGenerator.java b/src/main/java/gregtech/common/GT_MinableOreGenerator.java index 9f97880ffe..c5249f1f25 100644 --- a/src/main/java/gregtech/common/GT_MinableOreGenerator.java +++ b/src/main/java/gregtech/common/GT_MinableOreGenerator.java @@ -29,36 +29,45 @@ public class GT_MinableOreGenerator } public boolean generate(World par1World, Random par2Random, int par3, int par4, int par5) { - float var6 = par2Random.nextFloat() * 3.141593F; - double var7 = par3 + 8 + MathHelper.sin(var6) * this.numberOfBlocks / 8.0F; - double var9 = par3 + 8 - MathHelper.sin(var6) * this.numberOfBlocks / 8.0F; - double var11 = par5 + 8 + MathHelper.cos(var6) * this.numberOfBlocks / 8.0F; - double var13 = par5 + 8 - MathHelper.cos(var6) * this.numberOfBlocks / 8.0F; - double var15 = par4 + par2Random.nextInt(3) - 2; - double var17 = par4 + par2Random.nextInt(3) - 2; + float math_pi = 3.141593F;//FB: CNT - CNT_ROUGH_CONSTANT_VALUE + float var6 = par2Random.nextFloat() * math_pi; + float var1s = this.numberOfBlocks / 8.0F; + int var4s = par4 - 2;int var5s = par3 + 8;int var6s = par5 + 8; + float var7s = this.numberOfBlocks / 16.0F; + float var8s = math_pi / this.numberOfBlocks; + float mh_s_0 = MathHelper.sin(var6) * var1s;float mh_c_0 = MathHelper.cos(var6) * var1s; + float var7 = var5s + mh_s_0; + float var11 = var6s + mh_c_0; + int var15r = par2Random.nextInt(3);int var17r = par2Random.nextInt(3); + int mh_n_4=var17r - var15r; + int var15 = var4s + var15r; + float mh_n_0 = -2*mh_s_0;float mh_n_1 = -2*mh_c_0; for (int var19 = 0; var19 <= this.numberOfBlocks; var19++) { - double var20 = var7 + (var9 - var7) * var19 / this.numberOfBlocks; - double var22 = var15 + (var17 - var15) * var19 / this.numberOfBlocks; - double var24 = var11 + (var13 - var11) * var19 / this.numberOfBlocks; - double var26 = par2Random.nextDouble() * this.numberOfBlocks / 16.0D; - double var28 = (MathHelper.sin(var19 * 3.141593F / this.numberOfBlocks) + 1.0F) * var26 + 1.0D; - double var30 = (MathHelper.sin(var19 * 3.141593F / this.numberOfBlocks) + 1.0F) * var26 + 1.0D; - int var32 = MathHelper.floor_double(var20 - var28 / 2.0D); - int var33 = MathHelper.floor_double(var22 - var30 / 2.0D); - int var34 = MathHelper.floor_double(var24 - var28 / 2.0D); - int var35 = MathHelper.floor_double(var20 + var28 / 2.0D); - int var36 = MathHelper.floor_double(var22 + var30 / 2.0D); - int var37 = MathHelper.floor_double(var24 + var28 / 2.0D); + float mh_n_2 = var19 / this.numberOfBlocks; + float var20 = var7 + mh_n_0 * mh_n_2; + float var22 = var15 + mh_n_4 * mh_n_2; + float var24 = var11 + mh_n_1 * mh_n_2; + float var26 = par2Random.nextFloat() * var7s; + float var1c = var19 * var8s; + float var28 = ((MathHelper.sin(var1c) + 1.0F) * var26 + 1.0F) / 2.0F; + int var32 = MathHelper.floor_float(var20 - var28); + int var33 = MathHelper.floor_float(var22 - var28); + int var34 = MathHelper.floor_float(var24 - var28); + int var35 = MathHelper.floor_float(var20 + var28); + int var36 = MathHelper.floor_float(var22 + var28); + int var37 = MathHelper.floor_float(var24 + var28); for (int var38 = var32; var38 <= var35; var38++) { - double var39 = (var38 + 0.5D - var20) / (var28 / 2.0D); - if (var39 * var39 < 1.0D) { + float var39 = (var38 + 0.5F - var20) / (var28); + float var5c = var39 * var39; + if (var5c < 1.0F) { for (int var41 = var33; var41 <= var36; var41++) { - double var42 = (var41 + 0.5D - var22) / (var30 / 2.0D); - if (var39 * var39 + var42 * var42 < 1.0D) { + float var42 = (var41 + 0.5F - var22) / (var28); + float var7c = var5c + var42 * var42; + if (var7c < 1.0F) { for (int var44 = var34; var44 <= var37; var44++) { - double var45 = (var44 + 0.5D - var24) / (var28 / 2.0D); + float var45 = (var44 + 0.5F - var24) / (var28); Block block = par1World.getBlock(var38, var41, var44); - if ((var39 * var39 + var42 * var42 + var45 * var45 < 1.0D) && (((this.allowVoid) && (par1World.getBlock(var38, var41, var44) == Blocks.air)) || ((block != null) && (block.isReplaceableOreGen(par1World, var38, var41, var44, this.mBlock))))) { + if ((var7c + var45 * var45 < 1.0F) && (((this.allowVoid) && (par1World.getBlock(var38, var41, var44) == Blocks.air)) || ((block != null) && (block.isReplaceableOreGen(par1World, var38, var41, var44, this.mBlock))))) { par1World.setBlock(var38, var41, var44, this.minableBlockId, this.minableBlockMeta, 0); } } diff --git a/src/main/java/gregtech/common/GT_Worldgen_GT_Ore_Layer.java b/src/main/java/gregtech/common/GT_Worldgen_GT_Ore_Layer.java index 51fefe1a0a..0de97a95be 100644 --- a/src/main/java/gregtech/common/GT_Worldgen_GT_Ore_Layer.java +++ b/src/main/java/gregtech/common/GT_Worldgen_GT_Ore_Layer.java @@ -6,6 +6,7 @@ import gregtech.api.enums.Materials; import gregtech.api.world.GT_Worldgen; import gregtech.common.blocks.GT_TileEntity_Ores; import gregtech.loaders.misc.GT_Achievements; +import net.minecraft.util.MathHelper; import net.minecraft.world.World; import net.minecraft.world.chunk.IChunkProvider; @@ -73,22 +74,22 @@ public class GT_Worldgen_GT_Ore_Layer for (int tZ = cZ; tZ <= eZ; tZ++) { if (this.mSecondaryMeta > 0) { for (int i = tMinY - 1; i < tMinY + 2; i++) { - if ((aRandom.nextInt(Math.max(1, Math.max(Math.abs(cZ - tZ), Math.abs(eZ - tZ)) / this.mDensity)) == 0) || (aRandom.nextInt(Math.max(1, Math.max(Math.abs(cX - tX), Math.abs(eX - tX)) / this.mDensity)) == 0)) { + if ((aRandom.nextInt(Math.max(1, Math.max(MathHelper.abs_int(cZ - tZ), MathHelper.abs_int(eZ - tZ)) / this.mDensity)) == 0) || (aRandom.nextInt(Math.max(1, Math.max(MathHelper.abs_int(cX - tX), MathHelper.abs_int(eX - tX)) / this.mDensity)) == 0)) { GT_TileEntity_Ores.setOreBlock(aWorld, tX, i, tZ, this.mSecondaryMeta, false); } } } - if ((this.mBetweenMeta > 0) && ((aRandom.nextInt(Math.max(1, Math.max(Math.abs(cZ - tZ), Math.abs(eZ - tZ)) / this.mDensity)) == 0) || (aRandom.nextInt(Math.max(1, Math.max(Math.abs(cX - tX), Math.abs(eX - tX)) / this.mDensity)) == 0))) { + if ((this.mBetweenMeta > 0) && ((aRandom.nextInt(Math.max(1, Math.max(MathHelper.abs_int(cZ - tZ), MathHelper.abs_int(eZ - tZ)) / this.mDensity)) == 0) || (aRandom.nextInt(Math.max(1, Math.max(MathHelper.abs_int(cX - tX), MathHelper.abs_int(eX - tX)) / this.mDensity)) == 0))) { GT_TileEntity_Ores.setOreBlock(aWorld, tX, tMinY + 2 + aRandom.nextInt(2), tZ, this.mBetweenMeta, false); } if (this.mPrimaryMeta > 0) { for (int i = tMinY + 3; i < tMinY + 6; i++) { - if ((aRandom.nextInt(Math.max(1, Math.max(Math.abs(cZ - tZ), Math.abs(eZ - tZ)) / this.mDensity)) == 0) || (aRandom.nextInt(Math.max(1, Math.max(Math.abs(cX - tX), Math.abs(eX - tX)) / this.mDensity)) == 0)) { + if ((aRandom.nextInt(Math.max(1, Math.max(MathHelper.abs_int(cZ - tZ), MathHelper.abs_int(eZ - tZ)) / this.mDensity)) == 0) || (aRandom.nextInt(Math.max(1, Math.max(MathHelper.abs_int(cX - tX), MathHelper.abs_int(eX - tX)) / this.mDensity)) == 0)) { GT_TileEntity_Ores.setOreBlock(aWorld, tX, i, tZ, this.mPrimaryMeta, false); } } } - if ((this.mSporadicMeta > 0) && ((aRandom.nextInt(Math.max(1, Math.max(Math.abs(cZ - tZ), Math.abs(eZ - tZ)) / this.mDensity)) == 0) || (aRandom.nextInt(Math.max(1, Math.max(Math.abs(cX - tX), Math.abs(eX - tX)) / this.mDensity)) == 0))) { + if ((this.mSporadicMeta > 0) && ((aRandom.nextInt(Math.max(1, Math.max(MathHelper.abs_int(cZ - tZ), MathHelper.abs_int(eZ - tZ)) / this.mDensity)) == 0) || (aRandom.nextInt(Math.max(1, Math.max(MathHelper.abs_int(cX - tX), MathHelper.abs_int(eX - tX)) / this.mDensity)) == 0))) { GT_TileEntity_Ores.setOreBlock(aWorld, tX, tMinY - 1 + aRandom.nextInt(7), tZ, this.mSporadicMeta, false); } } diff --git a/src/main/java/gregtech/common/GT_Worldgen_Stone.java b/src/main/java/gregtech/common/GT_Worldgen_Stone.java index d2d3a18f3d..c22585d26a 100644 --- a/src/main/java/gregtech/common/GT_Worldgen_Stone.java +++ b/src/main/java/gregtech/common/GT_Worldgen_Stone.java @@ -27,40 +27,45 @@ public class GT_Worldgen_Stone int tY = this.mMinY + aRandom.nextInt(this.mMaxY - this.mMinY); int tZ = aChunkZ + aRandom.nextInt(16); if ((this.mAllowToGenerateinVoid) || (!aWorld.getBlock(tX, tY, tZ).isAir(aWorld, tX, tY, tZ))) { - float var6 = aRandom.nextFloat() * 3.141593F; - double var7 = tX + 8 + MathHelper.sin(var6) * this.mSize / 8.0F; - double var9 = tX + 8 - MathHelper.sin(var6) * this.mSize / 8.0F; - double var11 = tZ + 8 + MathHelper.cos(var6) * this.mSize / 8.0F; - double var13 = tZ + 8 - MathHelper.cos(var6) * this.mSize / 8.0F; - double var15 = tY + aRandom.nextInt(3) - 2; - double var17 = tY + aRandom.nextInt(3) - 2; + float math_pi = 3.141593F;//FB: CNT - CNT_ROUGH_CONSTANT_VALUE + float var6 = aRandom.nextFloat() * math_pi; + float var1d = this.mSize / 8.0F;int var2d = tX + 8;int var3d = tZ + 8;int var4d = tY - 2; + float mh_s_0 = MathHelper.sin(var6) * var1d;float mh_c_0 = MathHelper.cos(var6) * var1d; + float var7 = var2d + mh_s_0; + float var11 = var3d + mh_c_0; + int var15r = aRandom.nextInt(3);int var17r = aRandom.nextInt(3); + int var15 = var4d + var15r; + int mh_n_4=var17r - var15r; + float mh_n_0 = -2*mh_s_0;float mh_n_1 = -2*mh_c_0; for (int var19 = 0; var19 <= this.mSize; var19++) { - double var20 = var7 + (var9 - var7) * var19 / this.mSize; - double var22 = var15 + (var17 - var15) * var19 / this.mSize; - double var24 = var11 + (var13 - var11) * var19 / this.mSize; - double var26 = aRandom.nextDouble() * this.mSize / 16.0D; - double var28 = (MathHelper.sin(var19 * 3.141593F / this.mSize) + 1.0F) * var26 + 1.0D; - double var30 = (MathHelper.sin(var19 * 3.141593F / this.mSize) + 1.0F) * var26 + 1.0D; - int tMinX = MathHelper.floor_double(var20 - var28 / 2.0D); - int tMinY = MathHelper.floor_double(var22 - var30 / 2.0D); - int tMinZ = MathHelper.floor_double(var24 - var28 / 2.0D); - int tMaxX = MathHelper.floor_double(var20 + var28 / 2.0D); - int tMaxY = MathHelper.floor_double(var22 + var30 / 2.0D); - int tMaxZ = MathHelper.floor_double(var24 + var28 / 2.0D); + float var5d = var19 / this.mSize; + float var20 = var7 + mh_n_0 * var5d; + float var22 = var15 + mh_n_4 * var5d; + float var24 = var11 + mh_n_1 * var5d; + float var6d = var19 * math_pi / this.mSize; + float var26 = aRandom.nextFloat() * this.mSize / 16.0F; + float var28 = ((MathHelper.sin(var6d) + 1.0F) * var26 + 1.0F) / 2.0F; + int tMinX = MathHelper.floor_float(var20 - var28); + int tMinY = MathHelper.floor_float(var22 - var28); + int tMinZ = MathHelper.floor_float(var24 - var28); + int tMaxX = MathHelper.floor_float(var20 + var28); + int tMaxY = MathHelper.floor_float(var22 + var28); + int tMaxZ = MathHelper.floor_float(var24 + var28); for (int eX = tMinX; eX <= tMaxX; eX++) { - double var39 = (eX + 0.5D - var20) / (var28 / 2.0D); - if (var39 * var39 < 1.0D) { + float var39 = (eX + 0.5F - var20) / (var28); + float var10d = var39 * var39; + if (var10d < 1.0F) { for (int eY = tMinY; eY <= tMaxY; eY++) { - double var42 = (eY + 0.5D - var22) / (var30 / 2.0D); - if (var39 * var39 + var42 * var42 < 1.0D) { + float var42 = (eY + 0.5F - var22) / (var28); + float var12d = var10d + var42 * var42; + if (var12d < 1.0F) { for (int eZ = tMinZ; eZ <= tMaxZ; eZ++) { - double var45 = (eZ + 0.5D - var24) / (var28 / 2.0D); - if (var39 * var39 + var42 * var42 + var45 * var45 < 1.0D) { + float var45 = (eZ + 0.5F - var24) / (var28); + if (var12d + var45 * var45 < 1.0F) { Block tTargetedBlock = aWorld.getBlock(eX, eY, eZ); if (tTargetedBlock instanceof GT_Block_Ores_Abstract) { TileEntity tTileEntity = aWorld.getTileEntity(eX, eY, eZ); if ((tTileEntity instanceof GT_TileEntity_Ores)) { - short aMeta = ((GT_TileEntity_Ores) tTileEntity).mMetaData; if (tTargetedBlock != GregTech_API.sBlockOres1) { ((GT_TileEntity_Ores) tTileEntity).convertOreBlock(aWorld, eX, eY, eZ); } diff --git a/src/main/java/gregtech/common/GT_Worldgenerator.java b/src/main/java/gregtech/common/GT_Worldgenerator.java index c87b0ab2cb..16872e9c21 100644 --- a/src/main/java/gregtech/common/GT_Worldgenerator.java +++ b/src/main/java/gregtech/common/GT_Worldgenerator.java @@ -3,6 +3,7 @@ package gregtech.common; import cpw.mods.fml.common.IWorldGenerator; import cpw.mods.fml.common.registry.GameRegistry; import gregtech.api.GregTech_API; +import gregtech.api.objects.XSTR; import gregtech.api.util.GT_Log; import gregtech.api.world.GT_Worldgen; import gregtech.common.blocks.GT_TileEntity_Ores; @@ -40,7 +41,7 @@ public class GT_Worldgenerator } public void generate(Random aRandom, int aX, int aZ, World aWorld, IChunkProvider aChunkGenerator, IChunkProvider aChunkProvider) { - this.mList.add(new WorldGenContainer(new Random(aRandom.nextInt()), aX * 16, aZ * 16, ((aChunkGenerator instanceof ChunkProviderEnd)) || (aWorld.getBiomeGenForCoords(aX * 16 + 8, aZ * 16 + 8) == BiomeGenBase.sky) ? 1 : ((aChunkGenerator instanceof ChunkProviderHell)) || (aWorld.getBiomeGenForCoords(aX * 16 + 8, aZ * 16 + 8) == BiomeGenBase.hell) ? -1 : 0, aWorld, aChunkGenerator, aChunkProvider, aWorld.getBiomeGenForCoords(aX * 16 + 8, aZ * 16 + 8).biomeName)); + this.mList.add(new WorldGenContainer(new XSTR(aRandom.nextInt()), aX * 16, aZ * 16, ((aChunkGenerator instanceof ChunkProviderEnd)) || (aWorld.getBiomeGenForCoords(aX * 16 + 8, aZ * 16 + 8) == BiomeGenBase.sky) ? 1 : ((aChunkGenerator instanceof ChunkProviderHell)) || (aWorld.getBiomeGenForCoords(aX * 16 + 8, aZ * 16 + 8) == BiomeGenBase.hell) ? -1 : 0, aWorld, aChunkGenerator, aChunkProvider, aWorld.getBiomeGenForCoords(aX * 16 + 8, aZ * 16 + 8).biomeName)); if (!this.mIsGenerating) { this.mIsGenerating = true; for (int i = 0; i < this.mList.size(); i++) { diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Machines.java b/src/main/java/gregtech/common/blocks/GT_Block_Machines.java index c5fdc17d4f..f6f6ac51ed 100644 --- a/src/main/java/gregtech/common/blocks/GT_Block_Machines.java +++ b/src/main/java/gregtech/common/blocks/GT_Block_Machines.java @@ -12,6 +12,7 @@ import gregtech.api.items.GT_Generic_Block; import gregtech.api.metatileentity.BaseMetaPipeEntity; import gregtech.api.metatileentity.BaseMetaTileEntity; import gregtech.api.metatileentity.BaseTileEntity; +import gregtech.api.objects.XSTR; import gregtech.api.util.GT_BaseCrop; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_Utility; @@ -308,7 +309,7 @@ public class GT_Block_Machines TileEntity tTileEntity = aWorld.getTileEntity(aX, aY, aZ); if ((tTileEntity instanceof IGregTechTileEntity)) { IGregTechTileEntity tGregTechTileEntity = (IGregTechTileEntity) tTileEntity; - Random tRandom = new Random(); + Random tRandom = new XSTR(); mTemporaryTileEntity.set(tGregTechTileEntity); for (int i = 0; i < tGregTechTileEntity.getSizeInventory(); i++) { ItemStack tItem = tGregTechTileEntity.getStackInSlot(i); diff --git a/src/main/java/gregtech/common/blocks/GT_TileEntity_Ores.java b/src/main/java/gregtech/common/blocks/GT_TileEntity_Ores.java index 1d87ba875b..1913c34378 100644 --- a/src/main/java/gregtech/common/blocks/GT_TileEntity_Ores.java +++ b/src/main/java/gregtech/common/blocks/GT_TileEntity_Ores.java @@ -9,6 +9,7 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ITexturedTileEntity; import gregtech.api.objects.GT_CopiedBlockTexture; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.objects.XSTR; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -194,7 +195,7 @@ public class GT_TileEntity_Ores extends TileEntity implements ITexturedTileEntit aFortune = 0; } if (aMaterial != null) { - Random tRandom = new Random(this.xCoord ^ this.yCoord ^ this.zCoord); + Random tRandom = new XSTR(this.xCoord ^ this.yCoord ^ this.zCoord); ArrayList<ItemStack> tSelector = new ArrayList(); diff --git a/src/main/java/gregtech/common/items/behaviors/Behaviour_Prospecting.java b/src/main/java/gregtech/common/items/behaviors/Behaviour_Prospecting.java index 533b7fafc2..4dcdf2696b 100644 --- a/src/main/java/gregtech/common/items/behaviors/Behaviour_Prospecting.java +++ b/src/main/java/gregtech/common/items/behaviors/Behaviour_Prospecting.java @@ -5,6 +5,7 @@ import gregtech.api.enums.Materials; import gregtech.api.items.GT_MetaBase_Item; import gregtech.api.items.GT_MetaGenerated_Tool; import gregtech.api.objects.ItemData; +import gregtech.api.objects.XSTR; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; @@ -87,7 +88,7 @@ public class Behaviour_Prospecting break; } } - Random tRandom = new Random(aX ^ aY ^ aZ ^ aSide); + Random tRandom = new XSTR(aX ^ aY ^ aZ ^ aSide); i = 0; for (int j = 9 + 2 * tQuality; i < j; i++) { tX = aX - 4 - tQuality + tRandom.nextInt(j); diff --git a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler.java b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler.java index 04be6888a4..bdfad2408b 100644 --- a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler.java +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler.java @@ -7,6 +7,7 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicTank; import gregtech.api.objects.GT_ItemStack; +import gregtech.api.objects.XSTR; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; @@ -255,7 +256,7 @@ public abstract class GT_MetaTileEntity_Boiler if (aIndex == 1) { GT_Utility.doSoundAtClient((String) GregTech_API.sSoundList.get(Integer.valueOf(4)), 2, 1.0F, aX, aY, aZ); for (int l = 0; l < 8; l++) { - getBaseMetaTileEntity().getWorld().spawnParticle("largesmoke", aX - 0.5D + Math.random(), aY, aZ - 0.5D + Math.random(), 0.0D, 0.0D, 0.0D); + getBaseMetaTileEntity().getWorld().spawnParticle("largesmoke", aX - 0.5D + (new XSTR()).nextFloat(), aY, aZ - 0.5D + (new XSTR()).nextFloat(), 0.0D, 0.0D, 0.0D); } } } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java index 1350521e62..1518915b39 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java @@ -10,6 +10,7 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.objects.GT_ItemStack; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.objects.XSTR; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; import gregtech.common.gui.GT_Container_BronzeBlastFurnace; @@ -185,7 +186,7 @@ public class GT_MetaTileEntity_BronzeBlastFurnace public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTimer) { if ((aBaseMetaTileEntity.isClientSide()) && (aBaseMetaTileEntity.isActive())) { - aBaseMetaTileEntity.getWorld().spawnParticle("largesmoke", aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1) + Math.random(), aBaseMetaTileEntity.getOffsetY(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1) + Math.random(), 0.0D, 0.3D, 0.0D); + aBaseMetaTileEntity.getWorld().spawnParticle("largesmoke", aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1) + (new XSTR()).nextFloat(), aBaseMetaTileEntity.getOffsetY(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1) + (new XSTR()).nextFloat(), 0.0D, 0.3D, 0.0D); } if (aBaseMetaTileEntity.isServerSide()) { if (this.mUpdate-- == 0) { |