aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core
diff options
context:
space:
mode:
authorAlkalus <draknyte1@hotmail.com>2017-09-10 00:11:09 +1000
committerAlkalus <draknyte1@hotmail.com>2017-09-10 00:11:09 +1000
commit258c257722f8728c3b5119b8b09c6932938d0efe (patch)
treef6c1f7540178dd93fc2f71cecb6efed75dabc5b1 /src/Java/gtPlusPlus/core
parent07881ec4484b594855014a9194c0ac7d98042e1d (diff)
downloadGT5-Unofficial-258c257722f8728c3b5119b8b09c6932938d0efe.tar.gz
GT5-Unofficial-258c257722f8728c3b5119b8b09c6932938d0efe.tar.bz2
GT5-Unofficial-258c257722f8728c3b5119b8b09c6932938d0efe.zip
+ Added a debug item for clearing big areas.
+ Started using BlockPos. % Changed some loading of blocks. ^ Version Bump.
Diffstat (limited to 'src/Java/gtPlusPlus/core')
-rw-r--r--src/Java/gtPlusPlus/core/item/ModItems.java4
-rw-r--r--src/Java/gtPlusPlus/core/item/general/ItemAreaClear.java90
-rw-r--r--src/Java/gtPlusPlus/core/lib/CORE.java2
-rw-r--r--src/Java/gtPlusPlus/core/util/array/BlockPos.java15
-rw-r--r--src/Java/gtPlusPlus/core/util/entity/EntityUtils.java8
-rw-r--r--src/Java/gtPlusPlus/core/world/darkworld/Dimension_DarkWorld.java16
6 files changed, 118 insertions, 17 deletions
diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java
index 30d85628b9..624edbe743 100644
--- a/src/Java/gtPlusPlus/core/item/ModItems.java
+++ b/src/Java/gtPlusPlus/core/item/ModItems.java
@@ -218,6 +218,8 @@ public final class ModItems {
public static Item itemCoalCoke;
public static CoreItem itemCircuitLFTR;
+
+ public static Item itemDebugAreaClear;
@@ -233,6 +235,8 @@ public final class ModItems {
if (CORE.DEBUG){
DEBUG_INIT.registerItems();
}
+
+ itemDebugAreaClear = new ItemAreaClear();
//Some Simple forms of materials
diff --git a/src/Java/gtPlusPlus/core/item/general/ItemAreaClear.java b/src/Java/gtPlusPlus/core/item/general/ItemAreaClear.java
new file mode 100644
index 0000000000..8e841aa284
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/item/general/ItemAreaClear.java
@@ -0,0 +1,90 @@
+package gtPlusPlus.core.item.general;
+
+import com.mojang.realmsclient.gui.ChatFormatting;
+
+import gtPlusPlus.core.creative.AddToCreativeTab;
+import gtPlusPlus.core.item.base.CoreItem;
+import gtPlusPlus.core.lib.CORE;
+import gtPlusPlus.core.util.array.BlockPos;
+import gtPlusPlus.core.util.entity.EntityUtils;
+import gtPlusPlus.core.util.math.MathUtils;
+import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.init.Blocks;
+import net.minecraft.item.EnumRarity;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.EnumChatFormatting;
+import net.minecraft.util.IIcon;
+import net.minecraft.world.World;
+
+public class ItemAreaClear extends CoreItem {
+
+ public IIcon[] mIcon = new IIcon[1];
+
+ public ItemAreaClear() {
+ super("itemDebugClearing", AddToCreativeTab.tabMachines, 1, 100, ChatFormatting.OBFUSCATED+"F A M C Y N A M E", EnumRarity.rare,
+ EnumChatFormatting.BOLD, false, null);
+ }
+
+ @Override
+ public void registerIcons(IIconRegister reg) {
+ this.mIcon[0] = reg.registerIcon(CORE.MODID + ":" + "itemLavaFilter");
+ }
+
+ @Override
+ public IIcon getIconFromDamage(int meta) {
+ return this.mIcon[0];
+ }
+
+ @Override
+ public String getItemStackDisplayName(ItemStack tItem) {
+ return "Debug Square";
+ }
+
+ public boolean removeBlocks(World world, BlockPos pos){
+ int x1 = pos.xPos;
+ int y1 = pos.yPos;
+ int z1 = pos.zPos;
+
+ int x2 = (x1-12);
+ int y2 = (y1-5);
+ int z2 = (z1-12);
+
+ removeBlockColumn(world, new BlockPos(x2, y2, z2));
+ return true;
+ }
+
+ public boolean removeBlockColumn(World world, BlockPos pos){
+ for (int i=0; i<25; i++){
+ removeBlockRow(world, new BlockPos(pos.xPos, pos.yPos, pos.zPos+i));
+ }
+ return true;
+ }
+
+ public boolean removeBlockRow(World world, BlockPos pos){
+ for (int j=0; j<10; j++){
+ for (int i=0; i<25; i++){
+ if (!world.isAirBlock(pos.xPos+i, pos.yPos+j, pos.zPos) &&
+ world.getBlock(pos.xPos+i, pos.yPos+j, pos.zPos) != Blocks.bedrock &&
+ world.getBlock(pos.xPos+i, pos.yPos+j, pos.zPos) != Blocks.glowstone){
+ int chance = MathUtils.randInt(0, 100);
+ if (chance <= 0){
+ world.setBlock(pos.xPos+i, pos.yPos+j, pos.zPos, Blocks.glowstone);
+ }
+ else {
+ world.setBlock(pos.xPos+i, pos.yPos+j, pos.zPos, Blocks.air);
+ }
+ }
+ }
+ }
+ return true;
+ }
+
+ @Override
+ public ItemStack onItemRightClick(ItemStack thisItem, World world, EntityPlayer parEntity) {
+ BlockPos groundBlock = EntityUtils.findBlockPosUnderEntity(parEntity);
+ removeBlocks(world, groundBlock);
+ return super.onItemRightClick(thisItem, world, parEntity);
+ }
+
+}
diff --git a/src/Java/gtPlusPlus/core/lib/CORE.java b/src/Java/gtPlusPlus/core/lib/CORE.java
index 37f9894e05..1381afb9e9 100644
--- a/src/Java/gtPlusPlus/core/lib/CORE.java
+++ b/src/Java/gtPlusPlus/core/lib/CORE.java
@@ -32,7 +32,7 @@ public class CORE {
public static final String name = "GT++";
public static final String MODID = "miscutils";
- public static final String VERSION = "1.5.9-release";
+ public static final String VERSION = "1.6.0-release";
public static String MASTER_VERSION = NetworkUtils.getContentFromURL("https://raw.githubusercontent.com/draknyte1/GTplusplus/master/Recommended.txt").toLowerCase();
public static String USER_COUNTRY = GeoUtils.determineUsersCountry();
public static boolean isModUpToDate = Utils.isModUpToDate();
diff --git a/src/Java/gtPlusPlus/core/util/array/BlockPos.java b/src/Java/gtPlusPlus/core/util/array/BlockPos.java
new file mode 100644
index 0000000000..32f74ff514
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/util/array/BlockPos.java
@@ -0,0 +1,15 @@
+package gtPlusPlus.core.util.array;
+
+public class BlockPos {
+
+ public final int xPos;
+ public final int yPos;
+ public final int zPos;
+
+ public BlockPos(int x, int y, int z){
+ this.xPos = x;
+ this.yPos = y;
+ this.zPos = z;
+ }
+
+}
diff --git a/src/Java/gtPlusPlus/core/util/entity/EntityUtils.java b/src/Java/gtPlusPlus/core/util/entity/EntityUtils.java
index a10c0ce4d1..60b05a308f 100644
--- a/src/Java/gtPlusPlus/core/util/entity/EntityUtils.java
+++ b/src/Java/gtPlusPlus/core/util/entity/EntityUtils.java
@@ -2,6 +2,7 @@ package gtPlusPlus.core.util.entity;
import cpw.mods.fml.common.registry.EntityRegistry;
import gregtech.api.util.GT_Utility;
+import gtPlusPlus.core.util.array.BlockPos;
import ic2.core.IC2Potion;
import ic2.core.item.armor.ItemArmorHazmat;
import net.minecraft.block.Block;
@@ -35,6 +36,13 @@ public class EntityUtils {
final int blockZ = MathHelper.floor_double(parEntity.posZ);
return parEntity.worldObj.getBlock(blockX, blockY, blockZ);
}
+
+ public static BlockPos findBlockPosUnderEntity(final Entity parEntity){
+ final int blockX = MathHelper.floor_double(parEntity.posX);
+ final int blockY = MathHelper.floor_double(parEntity.boundingBox.minY)-1;
+ final int blockZ = MathHelper.floor_double(parEntity.posZ);
+ return new BlockPos(blockX, blockY, blockZ);
+ }
//TODO
public static void registerEntityToBiomeSpawns(final Class<EntityLiving> classy, final EnumCreatureType EntityType, final BiomeGenBase baseBiomeGen){
diff --git a/src/Java/gtPlusPlus/core/world/darkworld/Dimension_DarkWorld.java b/src/Java/gtPlusPlus/core/world/darkworld/Dimension_DarkWorld.java
index bcaeccafc1..71d0e59492 100644
--- a/src/Java/gtPlusPlus/core/world/darkworld/Dimension_DarkWorld.java
+++ b/src/Java/gtPlusPlus/core/world/darkworld/Dimension_DarkWorld.java
@@ -34,22 +34,6 @@ public class Dimension_DarkWorld {
public static Block blockPortalFrame;
static {
-
- DIMID = DimensionManager.getNextFreeDimId();
- portalBlock = new blockDarkWorldPortal();
- portalItem = (itemDarkWorldPortalTrigger) (new itemDarkWorldPortalTrigger().setUnlocalizedName("dimensionDarkWorld_trigger"));
- Item.itemRegistry.addObject(423, "dimensionDarkWorld_trigger", portalItem);
- blockTopLayer = new blockDarkWorldGround();
- blockSecondLayer = new blockDarkWorldPollutedDirt();
- GameRegistry.registerBlock(blockTopLayer, "blockDarkWorldGround");
- GameRegistry.registerBlock(blockSecondLayer, "blockDarkWorldGround2");
- Blocks.fire.setFireInfo(blockTopLayer, 30, 20);
- blockPortalFrame = new blockDarkWorldPortalFrame();
- GameRegistry.registerBlock(blockPortalFrame, "blockDarkWorldPortalFrame");
-
- if (LoadedMods.BuildCraft){
- //blockFluidLakes =
- }
}