aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/java/gregtech/api/objects/GT_UO_DimensionList.java16
-rw-r--r--src/main/java/gregtech/api/util/GT_Utility.java8
-rw-r--r--src/main/java/gregtech/common/GT_UndergroundOil.java14
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_SeismicProspector.java3
4 files changed, 23 insertions, 18 deletions
diff --git a/src/main/java/gregtech/api/objects/GT_UO_DimensionList.java b/src/main/java/gregtech/api/objects/GT_UO_DimensionList.java
index 1e4f54eb12..e34ea1d4dd 100644
--- a/src/main/java/gregtech/api/objects/GT_UO_DimensionList.java
+++ b/src/main/java/gregtech/api/objects/GT_UO_DimensionList.java
@@ -12,13 +12,14 @@ public class GT_UO_DimensionList {
private String fCategory;
private BiMap<String, GT_UO_Dimension> fDimensionList;
- public int[] BlackList;
+ public int[] blackList =new int[0];
public GT_UO_DimensionList() {
fDimensionList = HashBiMap.create();
}
public GT_UO_Dimension GetDimension(int aDimension) {
+ if(CheckBlackList(aDimension)) return null;
if (fDimensionList.containsKey(Integer.toString(aDimension)))
return fDimensionList.get(Integer.toString(aDimension));
for (BiMap.Entry <String, GT_UO_Dimension> dl : fDimensionList.entrySet())
@@ -26,12 +27,12 @@ public class GT_UO_DimensionList {
return dl.getValue();
return fDimensionList.get("Default");
}
-
+
public boolean CheckBlackList(int aDimensionId){
try {
- if (java.util.Arrays.binarySearch(BlackList, aDimensionId) >= 0) return true;
- else return false;
+ return java.util.Arrays.binarySearch(blackList, aDimensionId) >= 0;
} catch (Exception e) {
+ e.printStackTrace();
return false;
}
}
@@ -68,14 +69,13 @@ public class GT_UO_DimensionList {
fConfig.setCategoryComment(fCategory+".Overworld", "Set Overworld Generating");
fConfig.setCategoryComment(fCategory+".Moon", "Set Moon Generating");
- int[] BlackList = {-1,1};
- BlackList = aConfig.get(fCategory, "DimBlackList", BlackList, "Dimension IDs Black List").getIntList();
- java.util.Arrays.sort(BlackList);
+ blackList = new int[]{-1,1};
+ blackList = aConfig.get(fCategory, "DimBlackList", blackList, "Dimension IDs Black List").getIntList();
+ java.util.Arrays.sort(blackList);
for (int i = 0 ; i < fConfig.getCategory(fCategory).getChildren().size(); i++) {
GT_UO_Dimension Dimension = new GT_UO_Dimension((ConfigCategory)fConfig.getCategory(fCategory).getChildren().toArray()[i]);
fDimensionList.put(Dimension.Dimension, Dimension);
}
}
-
}
diff --git a/src/main/java/gregtech/api/util/GT_Utility.java b/src/main/java/gregtech/api/util/GT_Utility.java
index 17e2f3d0c4..57a115973e 100644
--- a/src/main/java/gregtech/api/util/GT_Utility.java
+++ b/src/main/java/gregtech/api/util/GT_Utility.java
@@ -1946,10 +1946,10 @@ public class GT_Utility {
}
public static String joinListToString(List<String> list) {
- String result = "";
+ StringBuilder result = new StringBuilder(32);
for (String s : list)
- result += (result.isEmpty() ? "" : "|") + s;
- return result;
+ result.append(result.length()==0?s:'|'+s);
+ return result.toString();
}
public static ItemStack getIntegratedCircuit(int config){
@@ -2067,7 +2067,7 @@ public class GT_Utility {
return tNBT.getString("author");
}
- public static void setProspectionData(ItemStack aStack, int aX, int aY, int aZ, int aDim, FluidStack aFluid, String[] aOres) {
+ public static void setProspectionData(ItemStack aStack, int aX, int aY, int aZ, int aDim, FluidStack aFluid, String... aOres) {
NBTTagCompound tNBT = getNBT(aStack);
String tData = aX + "," + aY + "," + aZ + "," + aDim + ",";
if (aFluid!=null)
diff --git a/src/main/java/gregtech/common/GT_UndergroundOil.java b/src/main/java/gregtech/common/GT_UndergroundOil.java
index 21c7a4aa0f..98cf09fe88 100644
--- a/src/main/java/gregtech/common/GT_UndergroundOil.java
+++ b/src/main/java/gregtech/common/GT_UndergroundOil.java
@@ -2,6 +2,7 @@ package gregtech.common;
import gregtech.GT_Mod;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.api.objects.GT_UO_Dimension;
import gregtech.api.objects.GT_UO_Fluid;
import gregtech.api.objects.XSTR;
import net.minecraft.world.ChunkCoordIntPair;
@@ -36,14 +37,15 @@ public class GT_UndergroundOil {
//Returns whole content for information purposes -> when drainSpeedCoeff < 0
//Else returns extracted fluidStack if amount > 0, or null otherwise
public static FluidStack undergroundOil(Chunk chunk, float readOrDrainCoefficient) {
- if (GT_Mod.gregtechproxy.mUndergroundOil.CheckBlackList(chunk.worldObj.provider.dimensionId)) return null;
World aWorld = chunk.worldObj;
+ int dimensionId=aWorld.provider.dimensionId;
+ if (GT_Mod.gregtechproxy.mUndergroundOil.CheckBlackList(dimensionId)) return null;
//Read hash map
- HashMap<ChunkCoordIntPair, int[]> chunkData = dimensionWiseChunkData.get(aWorld.provider.dimensionId);
+ HashMap<ChunkCoordIntPair, int[]> chunkData = dimensionWiseChunkData.get(dimensionId);
if(chunkData==null){
chunkData=new HashMap<>(1024);
- dimensionWiseChunkData.put(aWorld.provider.dimensionId,chunkData);
+ dimensionWiseChunkData.put(dimensionId,chunkData);
}
int[] tInts = chunkData.get(chunk.getChunkCoordIntPair());
@@ -55,10 +57,12 @@ public class GT_UndergroundOil {
}
//GEN IT TO GET OBJECT...
- final XSTR tRandom = new XSTR(aWorld.getSeed() + aWorld.provider.dimensionId * 2 +
+ final XSTR tRandom = new XSTR(aWorld.getSeed() + dimensionId * 2 +
(chunk.getChunkCoordIntPair().chunkXPos>>3) +
8267 * (chunk.getChunkCoordIntPair().chunkZPos>>3));
- GT_UO_Fluid uoFluid = GT_Mod.gregtechproxy.mUndergroundOil.GetDimension(aWorld.provider.dimensionId).getRandomFluid(tRandom);
+
+ GT_UO_Dimension dimension=GT_Mod.gregtechproxy.mUndergroundOil.GetDimension(dimensionId);
+ GT_UO_Fluid uoFluid = dimension.getRandomFluid(tRandom);
//Fluid stack holder
FluidStack fluidInChunk;
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_SeismicProspector.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_SeismicProspector.java
index 7054e194f7..5d96f05afd 100644
--- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_SeismicProspector.java
+++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_SeismicProspector.java
@@ -51,11 +51,12 @@ public class GT_MetaTileEntity_SeismicProspector extends GT_MetaTileEntity_Basic
public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {
if (aBaseMetaTileEntity.isServerSide()) {
ItemStack aStack = aPlayer.getCurrentEquippedItem();
+ ItemData stackData= GT_OreDictUnificator.getItemData(aStack);
if (!ready && (aStack != null) && (
(aStack.getItem() == Item.getItemFromBlock(Blocks.tnt) && aStack.stackSize > 1 ) ||
(aStack.getItem() == Ic2Items.industrialTnt.getItem() && aStack.stackSize > 0 ) ||
(aStack.getItem() == Ic2Items.dynamite.getItem() && aStack.stackSize > 3 ) ||
- (GT_OreDictUnificator.getItemData(aStack).mMaterial.mMaterial == Materials.Glyceryl && aStack.stackSize > 0 ) ||
+ (stackData!=null && stackData.mMaterial.mMaterial == Materials.Glyceryl && aStack.stackSize > 0 ) ||
(aStack.getItem() == ItemList.Block_Powderbarrel.getItem() && aStack.getItemDamage()==ItemList.Block_Powderbarrel.get(1).getItemDamage() && aStack.stackSize > 7 )
) ) {
if ((!aPlayer.capabilities.isCreativeMode) && (aStack.stackSize != 111)) {