aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com/detrav
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/detrav')
-rw-r--r--src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java28
-rw-r--r--src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java3
-rw-r--r--src/main/java/com/detrav/net/DetravProPickPacket00.java34
3 files changed, 45 insertions, 20 deletions
diff --git a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java
index cee11d7907..d14323139f 100644
--- a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java
+++ b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java
@@ -32,9 +32,9 @@ public class BehaviourDetravToolElectricProPick extends BehaviourDetravToolProPi
public ItemStack onItemRightClick(GT_MetaBase_Item aItem, ItemStack aStack, World aWorld, EntityPlayer aPlayer) {
if (!aWorld.isRemote) {
+ long data = DetravMetaGeneratedTool01.INSTANCE.getToolGTDetravData(aStack);
//Проверяем если нажат шифт
if (aPlayer.isSneaking()) {
- long data = DetravMetaGeneratedTool01.INSTANCE.getToolGTDetravData(aStack);
if (data == 0) {
aPlayer.addChatMessage(new ChatComponentText("Set Mode: Oil, Any Block"));
DetravMetaGeneratedTool01.INSTANCE.setToolGTDetravData(aStack, 1);
@@ -69,17 +69,25 @@ public class BehaviourDetravToolElectricProPick extends BehaviourDetravToolProPi
for (int z = 0; z < 16; z++) {
int ySize = c.getHeightValue(x, z);
for (int y = 1; y < ySize; y++) {
- Block b = c.getBlock(x, y, z);
- if (b == GregTech_API.sBlockOres1) {
- TileEntity entity = c.getTileEntityUnsafe(x, y, z);
- if (entity != null && entity instanceof GT_TileEntity_Ores) {
- GT_TileEntity_Ores gt_entity = (GT_TileEntity_Ores) entity;
- String name = GT_LanguageManager.getTranslation(
- b.getUnlocalizedName() + "." + gt_entity.getMetaData() + ".name");
- if (name.startsWith("Small")) continue;
- packet.addBlock(c.xPosition * 16 + x, y, c.zPosition * 16 + z, gt_entity.getMetaData());
+ if(data == 0) {
+ Block b = c.getBlock(x, y, z);
+ if (b == GregTech_API.sBlockOres1) {
+ TileEntity entity = c.getTileEntityUnsafe(x, y, z);
+ if (entity != null && entity instanceof GT_TileEntity_Ores) {
+ GT_TileEntity_Ores gt_entity = (GT_TileEntity_Ores) entity;
+ String name = GT_LanguageManager.getTranslation(
+ b.getUnlocalizedName() + "." + gt_entity.getMetaData() + ".name");
+ if (name.startsWith("Small")) continue;
+ packet.addBlock(c.xPosition * 16 + x, y, c.zPosition * 16 + z, gt_entity.getMetaData());
+ }
}
}
+ else {
+ FluidStack fStack = getUndergroundOil(aWorld, c.xPosition * 16 + x, c.zPosition * 16 + z);
+ if (fStack.amount > 50000)
+ packet.addBlock(c.xPosition * 16 + x, y, c.zPosition * 16 + z, (short)-fStack.getFluidID());
+ break;
+ }
}
}
}
diff --git a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java
index 7b9987edbf..9e7a97752a 100644
--- a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java
+++ b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java
@@ -159,11 +159,12 @@ public class BehaviourDetravToolProPick extends Behaviour_None {
ChunkPosition tPos = new ChunkPosition(aX / 16, 1, aZ / 16);
if(GT_Proxy.chunkData.containsKey(tPos)) {
int[] tInts = (int[])GT_Proxy.chunkData.get(tPos);
- if(tInts.length > 0 && tInts[0] >= 0) {
+ if(tInts.length > 0 && tInts[0] > 0) {
tAmount = tInts[0];
}
}
tAmount -= 5;
+
return new FluidStack(tFluid, tAmount);
}
} \ No newline at end of file
diff --git a/src/main/java/com/detrav/net/DetravProPickPacket00.java b/src/main/java/com/detrav/net/DetravProPickPacket00.java
index d2e9ed57b6..f691896621 100644
--- a/src/main/java/com/detrav/net/DetravProPickPacket00.java
+++ b/src/main/java/com/detrav/net/DetravProPickPacket00.java
@@ -127,15 +127,31 @@ public class DetravProPickPacket00 extends DetravPacket {
else
{
for(short meta : map[i][j].values()) {
- //Пока только по одному буду
- Materials tMaterial = GregTech_API.sGeneratedMaterials[meta% 1000];
- short[] rgba = tMaterial.getRGBA();
- raster.setSample(i,j,0,rgba[0]);
- raster.setSample(i,j,1,rgba[1]);
- raster.setSample(i,j,2,rgba[2]);
- raster.setSample(i,j,3,255);
- //ores.put(GT_Ore)
- String name = GT_LanguageManager.getTranslation("gt.blockores." + meta + ".name");
+ String name;
+ short[] rgba;
+ if(meta>=0) {
+ //Пока только по одному буду
+ Materials tMaterial = GregTech_API.sGeneratedMaterials[meta % 1000];
+ rgba = tMaterial.getRGBA();
+ //ores.put(GT_Ore)
+ name = GT_LanguageManager.getTranslation("gt.blockores." + meta + ".name");
+ }
+ else
+ {
+ name = String.valueOf(meta);
+ rgba = new short[4];
+ rgba[0] =(short)( 255/(-meta + 1));
+ rgba[1] =(short)( 255/(-meta + 1));
+ rgba[2] =(short)( 255/(-meta + 1));
+ rgba[3] =(short)( 255 );
+
+
+ }
+
+ raster.setSample(i, j, 0, rgba[0]);
+ raster.setSample(i, j, 1, rgba[1]);
+ raster.setSample(i, j, 2, rgba[2]);
+ raster.setSample(i, j, 3, 255);
if(!ores.containsKey(name))
ores.put(name,(0xFF << 24) + ((rgba[0]&0xFF)<<16)+((rgba[1]&0xFF)<<8)+((rgba[2]&0xFF)));
}