diff options
| author | Jordan Byrne <draknyte1@hotmail.com> | 2018-03-20 20:51:56 +1000 |
|---|---|---|
| committer | Jordan Byrne <draknyte1@hotmail.com> | 2018-03-20 20:51:56 +1000 |
| commit | 15475befd05a42ec990c3ffa3eb2962b495c7628 (patch) | |
| tree | 336b310be822cb1307f5b2382e484c5b98715136 /src/Java/gtPlusPlus/core/block/machine | |
| parent | a623a30b7aa0bf492f5aabfcbe76a69c7a9dc2df (diff) | |
| download | GT5-Unofficial-15475befd05a42ec990c3ffa3eb2962b495c7628.tar.gz GT5-Unofficial-15475befd05a42ec990c3ffa3eb2962b495c7628.tar.bz2 GT5-Unofficial-15475befd05a42ec990c3ffa3eb2962b495c7628.zip | |
+ Added Buffered Dynamos for all Tiers.
+ Added particles to the Mining Pipe and Mining Head blocks.
+ Added a casing block for the BRMPs.
% Made Custom GT Pipes/Wires load prior to the GT Machines.
$ Fixed the Industrial Extruder tooltip, incorrectly stating the Muffler was required at the rear. Tooltip now states the Maint. Hatch is required at the rear.
Diffstat (limited to 'src/Java/gtPlusPlus/core/block/machine')
| -rw-r--r-- | src/Java/gtPlusPlus/core/block/machine/bedrock/Mining_Head_Fake.java | 60 | ||||
| -rw-r--r-- | src/Java/gtPlusPlus/core/block/machine/bedrock/Mining_Pipe_Fake.java | 37 |
2 files changed, 97 insertions, 0 deletions
diff --git a/src/Java/gtPlusPlus/core/block/machine/bedrock/Mining_Head_Fake.java b/src/Java/gtPlusPlus/core/block/machine/bedrock/Mining_Head_Fake.java index cd20c8dab3..b8f9662ac7 100644 --- a/src/Java/gtPlusPlus/core/block/machine/bedrock/Mining_Head_Fake.java +++ b/src/Java/gtPlusPlus/core/block/machine/bedrock/Mining_Head_Fake.java @@ -1,5 +1,7 @@ package gtPlusPlus.core.block.machine.bedrock; +import java.util.Random; + import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -9,13 +11,19 @@ import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.Entity; import net.minecraft.entity.EnumCreatureType; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.util.DamageSource; import net.minecraft.world.Explosion; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; +import gtPlusPlus.api.objects.minecraft.BlockPos; +import gtPlusPlus.api.objects.random.XSTR; import gtPlusPlus.core.creative.AddToCreativeTab; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.Utils; +import gtPlusPlus.core.util.math.MathUtils; +import gtPlusPlus.core.util.minecraft.EntityUtils; public class Mining_Head_Fake extends Block{ @@ -94,6 +102,58 @@ public class Mining_Head_Fake extends Block{ return false; } + @Override + public boolean isCollidable() { + return true; + } + + @Override + public void randomDisplayTick(World world, int posX, int posY, int posZ, + Random rand) { + generateVoidParticlesAroundBlockPos(new BlockPos(posX, posY, posZ, world), 2); + super.randomDisplayTick(world, posX, posY, posZ, rand); + } + + @Override + public void onEntityCollidedWithBlock(World p_149670_1_, int p_149670_2_, int p_149670_3_, int p_149670_4_, + Entity ent) { + EntityUtils.doDamage(ent, DamageSource.outOfWorld, 20); + EntityUtils.setEntityOnFire(ent, 100); + super.onEntityCollidedWithBlock(p_149670_1_, p_149670_2_, p_149670_3_, p_149670_4_, ent); + } + + @Override + protected boolean canSilkHarvest() { + return false; + } + + @Override + public boolean canHarvestBlock(EntityPlayer player, int meta) { + return false; + } + + public static void generateVoidParticlesAroundBlockPos(BlockPos Pos, int range){ + for (BlockPos G : Pos.getSurroundingBlocks()) { + int i1 = G.xPos + MathUtils.randInt(0, range) - MathUtils.randInt(0, range); + int j1 = G.yPos + MathUtils.randInt(0, range) - MathUtils.randInt(0, range); + int k1 = G.zPos + MathUtils.randInt(0, range) - MathUtils.randInt(0, range); + + Block block = Pos.world.getBlock(i1, j1, k1); + + if (block.getMaterial() == Material.air){ + + //lava + if (Pos.yPos <= 7) { + Pos.world.spawnParticle("portal", (double)((float)i1 + CORE.RANDOM.nextFloat()), (double)((float)j1 + CORE.RANDOM.nextFloat()), (double)((float)k1 + CORE.RANDOM.nextFloat()), 0.0D, 0.0D, 0.0D); + Pos.world.spawnParticle("lava", (double)((float)i1 + CORE.RANDOM.nextFloat()), (double)((float)j1 + CORE.RANDOM.nextFloat()), (double)((float)k1 + CORE.RANDOM.nextFloat()), 0.0D, 0.0D, 0.0D); + } + else { + Pos.world.spawnParticle("portal", (double)((float)i1 + CORE.RANDOM.nextFloat()), (double)((float)j1 + CORE.RANDOM.nextFloat()), (double)((float)k1 + CORE.RANDOM.nextFloat()), 0.0D, 0.0D, 0.0D); + } + + } + } + } } diff --git a/src/Java/gtPlusPlus/core/block/machine/bedrock/Mining_Pipe_Fake.java b/src/Java/gtPlusPlus/core/block/machine/bedrock/Mining_Pipe_Fake.java index 64215c0274..bba185a0c1 100644 --- a/src/Java/gtPlusPlus/core/block/machine/bedrock/Mining_Pipe_Fake.java +++ b/src/Java/gtPlusPlus/core/block/machine/bedrock/Mining_Pipe_Fake.java @@ -1,5 +1,7 @@ package gtPlusPlus.core.block.machine.bedrock; +import java.util.Random; + import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -9,13 +11,18 @@ import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.Entity; import net.minecraft.entity.EnumCreatureType; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.util.DamageSource; import net.minecraft.world.Explosion; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; +import gtPlusPlus.api.objects.minecraft.BlockPos; import gtPlusPlus.core.creative.AddToCreativeTab; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.Utils; +import gtPlusPlus.core.util.math.MathUtils; +import gtPlusPlus.core.util.minecraft.EntityUtils; public class Mining_Pipe_Fake extends Block{ @@ -93,6 +100,36 @@ public class Mining_Pipe_Fake extends Block{ public boolean canCreatureSpawn(final EnumCreatureType type, final IBlockAccess world, final int x, final int y, final int z) { return false; } + + @Override + public boolean isCollidable() { + return true; + } + + @Override + public void randomDisplayTick(World world, int posX, int posY, int posZ, + Random rand) { + Mining_Head_Fake.generateVoidParticlesAroundBlockPos(new BlockPos(posX, posY, posZ, world), 2); + super.randomDisplayTick(world, posX, posY, posZ, rand); + } + + @Override + public void onEntityCollidedWithBlock(World p_149670_1_, int p_149670_2_, int p_149670_3_, int p_149670_4_, Entity ent) { + if (MathUtils.randInt(0, 100) < 5) { + EntityUtils.doDamage(ent, DamageSource.outOfWorld, 1); + } + super.onEntityCollidedWithBlock(p_149670_1_, p_149670_2_, p_149670_3_, p_149670_4_, ent); + } + + @Override + protected boolean canSilkHarvest() { + return false; + } + + @Override + public boolean canHarvestBlock(EntityPlayer player, int meta) { + return false; + } |
