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/DetravScannerMod.java2
-rw-r--r--src/main/java/com/detrav/enums/DetravToolDictNames.java1
-rw-r--r--src/main/java/com/detrav/enums/Textures01.java2
-rw-r--r--src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java164
-rw-r--r--src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java5
-rw-r--r--src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java67
-rw-r--r--src/main/java/com/detrav/items/processing/ProcessingDetravToolProPick.java35
-rw-r--r--src/main/java/com/detrav/items/tools/DetravToolLuVElectricProPick.java187
-rw-r--r--src/main/java/com/detrav/items/tools/DetravToolUVElectricProPick.java22
-rw-r--r--src/main/java/com/detrav/items/tools/DetravToolZPMElectricProPick.java21
10 files changed, 204 insertions, 302 deletions
diff --git a/src/main/java/com/detrav/DetravScannerMod.java b/src/main/java/com/detrav/DetravScannerMod.java
index 61b662ef27..5ffaff866c 100644
--- a/src/main/java/com/detrav/DetravScannerMod.java
+++ b/src/main/java/com/detrav/DetravScannerMod.java
@@ -24,7 +24,7 @@ public class DetravScannerMod
{
public static final String MODID = "detravscannermod";
public static final String VERSION = "1.4.2";
-
+ public static final boolean DEBUGBUILD = false;
public static final CreativeTabs TAB_DETRAV = new DetravCreativeTab();
public static final org.apache.logging.log4j.Logger Logger = LogManager.getLogger("GT Scanner Mod");
diff --git a/src/main/java/com/detrav/enums/DetravToolDictNames.java b/src/main/java/com/detrav/enums/DetravToolDictNames.java
index 21c4396720..6f50a385b2 100644
--- a/src/main/java/com/detrav/enums/DetravToolDictNames.java
+++ b/src/main/java/com/detrav/enums/DetravToolDictNames.java
@@ -5,4 +5,5 @@ package com.detrav.enums;
*/
public enum DetravToolDictNames {
craftingToolElectricProPick,
+ craftingToolProPick,
}
diff --git a/src/main/java/com/detrav/enums/Textures01.java b/src/main/java/com/detrav/enums/Textures01.java
index 3c35f730d6..714883934c 100644
--- a/src/main/java/com/detrav/enums/Textures01.java
+++ b/src/main/java/com/detrav/enums/Textures01.java
@@ -9,8 +9,10 @@ import gregtech.api.interfaces.IIconContainer;
public class Textures01 {
public static final IIconContainer[] mTextures = new IIconContainer[]
{
+ new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/PRO_PICK_HEAD"),
new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/ELECTRIC_LuV_PRO_PICK_HEAD"),
new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/ELECTRIC_ZPM_PRO_PICK_HEAD"),
new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/ELECTRIC_UV_PRO_PICK_HEAD"),
+ new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/ELECTRIC_UHV_PRO_PICK_HEAD"),
};
} \ No newline at end of file
diff --git a/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java b/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java
index d50e19d0d7..4c10d28dde 100644
--- a/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java
+++ b/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java
@@ -1,10 +1,13 @@
package com.detrav.items;
+import java.util.List;
+
import com.detrav.DetravScannerMod;
import com.detrav.enums.DetravToolDictNames;
-import com.detrav.items.tools.DetravToolLuVElectricProPick;
-import com.detrav.items.tools.DetravToolUVElectricProPick;
-import com.detrav.items.tools.DetravToolZPMElectricProPick;
+import com.detrav.items.tools.DetravProPick;
+import com.detrav.items.tools.DetravToolElectricProPick;
+
+import gregtech.api.enums.GT_Values;
import gregtech.api.enums.Materials;
import gregtech.api.enums.TC_Aspects;
import gregtech.api.interfaces.IToolStats;
@@ -17,8 +20,6 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumChatFormatting;
import net.minecraftforge.fluids.FluidStack;
-import java.util.List;
-
/**
* Created by wital_000 on 19.03.2016.
*/
@@ -28,14 +29,25 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool {
public DetravMetaGeneratedTool01() {
super("detrav.metatool.01");
INSTANCE = this;
- addTool(100, "Electric Prospector's Scanner (LuV)", "", new DetravToolLuVElectricProPick(), new Object[]{DetravToolDictNames.craftingToolElectricProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L));
- addTool(102, "Electric Prospector's Scanner (ZPM)", "", new DetravToolZPMElectricProPick(), new Object[]{DetravToolDictNames.craftingToolElectricProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L));
- addTool(104, "Electric Prospector's Scanner (UV)", "", new DetravToolUVElectricProPick(), new Object[]{DetravToolDictNames.craftingToolElectricProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L));
-
+ addTool(0,"Prospector's Scanner(ULV)","", new DetravProPick(0), new Object[]{DetravToolDictNames.craftingToolProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.PERFODIO, 4L));
+ addTool(2,"Prospector's Scanner(LV)","", new DetravProPick(1), new Object[]{DetravToolDictNames.craftingToolProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.PERFODIO, 4L));
+ addTool(4,"Prospector's Scanner(MV)","", new DetravProPick(2), new Object[]{DetravToolDictNames.craftingToolProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.PERFODIO, 4L));
+ addTool(6,"Prospector's Scanner(HV)","", new DetravProPick(3), new Object[]{DetravToolDictNames.craftingToolProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.PERFODIO, 4L));
+ addTool(8,"Prospector's Scanner(EV)","", new DetravProPick(4), new Object[]{DetravToolDictNames.craftingToolProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.PERFODIO, 4L));
+ addTool(10,"Prospector's Scanner(IV)","", new DetravProPick(5), new Object[]{DetravToolDictNames.craftingToolProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.PERFODIO, 4L));
+ addTool(12,"Prospector's Scanner(LuV)","", new DetravProPick(6), new Object[]{DetravToolDictNames.craftingToolProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.PERFODIO, 4L));
+ addTool(14,"Prospector's Scanner(ZPM)","", new DetravProPick(7), new Object[]{DetravToolDictNames.craftingToolProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.PERFODIO, 4L));
+ addTool(16,"Prospector's Scanner(UV)","", new DetravProPick(8), new Object[]{DetravToolDictNames.craftingToolProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.PERFODIO, 4L));
+ addTool(18,"Prospector's Scanner(UHV)","", new DetravProPick(9), new Object[]{DetravToolDictNames.craftingToolProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.PERFODIO, 4L));
+ addTool(100, "Electric Prospector's Scanner (LuV)", "", new DetravToolElectricProPick(6), new Object[]{DetravToolDictNames.craftingToolElectricProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L));
+ addTool(102, "Electric Prospector's Scanner (ZPM)", "", new DetravToolElectricProPick(7), new Object[]{DetravToolDictNames.craftingToolElectricProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L));
+ addTool(104, "Electric Prospector's Scanner (UV)", "", new DetravToolElectricProPick(8), new Object[]{DetravToolDictNames.craftingToolElectricProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L));
+ addTool(106, "Electric Prospector's Scanner (UHV)", "", new DetravToolElectricProPick(9), new Object[]{DetravToolDictNames.craftingToolElectricProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L));
setCreativeTab(DetravScannerMod.TAB_DETRAV);
}
-
+
+
public void addAdditionalToolTips(List aList, ItemStack aStack, EntityPlayer aPlayer) {
//getElectricStats()
//super.addAdditionalToolTips();
@@ -48,19 +60,40 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool {
String name = aStack.getUnlocalizedName();
String num = name.substring("gt.detrav.metatool.01.".length());
int meta = Integer.parseInt(num);
- switch (meta) {
- case 0:
- aList.add(tOffset + 0, EnumChatFormatting.WHITE + "Durability: " + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " / " + tMaxDamage + EnumChatFormatting.GRAY);
- aList.add(tOffset + 1, EnumChatFormatting.WHITE + tMaterial.mDefaultLocalName + EnumChatFormatting.YELLOW + " lvl " + getHarvestLevel(aStack, "") + EnumChatFormatting.GRAY);
- aList.add(tOffset + 2, "Right click on rock for prospecting current chunk!");
- aList.add(tOffset + 3, "Right click on bedrock for prospecting oil!");
- aList.add(tOffset + 4, "Traces: 1-9");
+ if (meta<100) {
+ aList.add(tOffset + 0, EnumChatFormatting.WHITE + "Durability: " + EnumChatFormatting.GREEN + Long.toString(tMaxDamage - getToolDamage(aStack)) + " / " + Long.toString(tMaxDamage) + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 1, EnumChatFormatting.WHITE + tMaterial.mDefaultLocalName + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 2, EnumChatFormatting.WHITE + "Chunks: " + Integer.toString(getHarvestLevel(aStack, "")+(meta/4))+ "x"+Integer.toString(getHarvestLevel(aStack, "")+(meta/4)) + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 3, EnumChatFormatting.ITALIC+ "Right click on rock for prospecting current chunk!" + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 4, EnumChatFormatting.ITALIC+ "Right click on bedrock for prospecting oil!" + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 5, EnumChatFormatting.ITALIC+ "Chance of a successful scan: "+EnumChatFormatting.RESET+Integer.toString(((((1+meta)*7) <= 100)? ((1+meta)*7) : 100))+EnumChatFormatting.GRAY+"%");
+ /*aList.add(tOffset + 4, "Traces: 1-9");
aList.add(tOffset + 5, "Small: 10-29");
aList.add(tOffset + 6, "Medium: 30-59");
aList.add(tOffset + 7, "Large: 60-99");
- aList.add(tOffset + 8, "Very large: 100-***");
+ aList.add(tOffset + 8, "Very large: 100-***");*/
+ }else if (meta >=100 && meta<200) {
+ aList.add(tOffset + 0, EnumChatFormatting.WHITE + "Durability: " + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " / " + tMaxDamage + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 1, EnumChatFormatting.WHITE + tMaterial.mDefaultLocalName + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 2, EnumChatFormatting.WHITE + "Chunks: " + EnumChatFormatting.YELLOW + (getHarvestLevel(aStack, "") * 2 + 1) + "x" + (getHarvestLevel(aStack, "") * 2 + 1) + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 3, EnumChatFormatting.ITALIC+ "Right click on rock for prospecting current chunk!");
+ aList.add(tOffset + 4, EnumChatFormatting.ITALIC+ "Right click on bedrock for prospecting oil!");
+ aList.add(tOffset + 5, EnumChatFormatting.ITALIC+ "Right click for scanning!");
+ }
+
+ /* unused
+ case 106:
+ case 107:
+ aList.add(tOffset + 0, EnumChatFormatting.WHITE + "Loss/Tick EU: " + EnumChatFormatting.GREEN + getElectricStatsLoss(aStack) + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 1, EnumChatFormatting.WHITE + "Durability: " + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " / " + tMaxDamage + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 2, "Can use as normal battery");
+ aList.add(tOffset + 3, "x4 charge speed for tools");
+ aList.add(tOffset + 4, "Right click to open GUI");
+ break;
+ case 108:
+ aList.add(tOffset + 0, EnumChatFormatting.WHITE + "It can configure any programmed circuit" + EnumChatFormatting.GRAY);
break;
- case 2:
+ case 200:
int count;
count = ((int)(getLevel(aStack,0)*100)); if(count > 0) {aList.add(tOffset, "Bonus 0 level: +" + count + "%");tOffset++;}
count = ((int)(getLevel(aStack,1)*100)); if(count > 0) {aList.add(tOffset, "Bonus 1 level: +" + count + "%");tOffset++;}
@@ -72,9 +105,7 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool {
count = ((int)(getLevel(aStack,7)*100)); if(count > 0) {aList.add(tOffset, "Bonus 7 level: +" + count + "%");tOffset++;}
count = ((int)(getLevel(aStack,8)*100)); if(count > 0) {aList.add(tOffset, "Bonus 8 level: +" + count + "%");tOffset++;}
break;
- case 4:
- case 6:
- case 8:
+ case 220:
aList.add(tOffset + 0, EnumChatFormatting.WHITE + "Durability: " + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " / " + tMaxDamage + EnumChatFormatting.GRAY);
aList.add(tOffset + 1, EnumChatFormatting.WHITE + tMaterial.mDefaultLocalName + EnumChatFormatting.YELLOW + " lvl " + getHarvestLevel(aStack, "") + EnumChatFormatting.GRAY);
aList.add(tOffset + 2, "It can suck in fluid");
@@ -88,31 +119,9 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool {
aList.add(tOffset +3, "Fluid: empty");
}
break;
- case 100:
- case 101:
- case 102:
- case 103:
- case 104:
- case 105:
- aList.add(tOffset + 0, EnumChatFormatting.WHITE + "Durability: " + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " / " + tMaxDamage + EnumChatFormatting.GRAY);
- aList.add(tOffset + 1, EnumChatFormatting.WHITE + tMaterial.mDefaultLocalName + EnumChatFormatting.GRAY);
- aList.add(tOffset + 2, EnumChatFormatting.WHITE + "Chunks: " + EnumChatFormatting.YELLOW + (getHarvestLevel(aStack, "") * 2 + 1) + "x" + (getHarvestLevel(aStack, "") * 2 + 1) + EnumChatFormatting.GRAY);
- aList.add(tOffset + 3, "Right click on rock for prospecting current chunk!");
- aList.add(tOffset + 4, "Right click on bedrock for prospecting oil!");
- aList.add(tOffset + 5, "Right click for scanning!");
- break;
- case 106:
- case 107:
- aList.add(tOffset + 0, EnumChatFormatting.WHITE + "Loss/Tick EU: " + EnumChatFormatting.GREEN + getElectricStatsLoss(aStack) + EnumChatFormatting.GRAY);
- aList.add(tOffset + 1, EnumChatFormatting.WHITE + "Durability: " + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " / " + tMaxDamage + EnumChatFormatting.GRAY);
- aList.add(tOffset + 2, "Can use as normal battery");
- aList.add(tOffset + 3, "x4 charge speed for tools");
- aList.add(tOffset + 4, "Right click to open GUI");
- break;
- case 108:
- aList.add(tOffset + 0, EnumChatFormatting.WHITE + "It can configure any programmed circuit" + EnumChatFormatting.GRAY);
- break;
- }
+
+ }
+ */
}
}
@@ -275,19 +284,72 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool {
return FluidStack.loadFluidStackFromNBT(detravData);
}
+ //SubItems TODO
public void getDetravSubItems(Item item, CreativeTabs detravCreativeTab, List list) {
ItemStack dStack;
- //Electric Scanners TODO
- dStack = getToolWithStats(100, 1, Materials.Iridium, Materials.TungstenSteel, new long[]{102400000L, 32768L, 6L, -1L});
+
+ //Materials at tiers
+ dStack = getToolWithStats(0,1,Materials.Polycaprolactam,Materials.Polycaprolactam, null);
+ list.add(dStack);
+ dStack = getToolWithStats(2,1,Materials.Steel,Materials.Steel, null);
+ list.add(dStack);
+ dStack = getToolWithStats(2,1,Materials.Bronze,Materials.Steel, null);
+ list.add(dStack);
+ dStack = getToolWithStats(4,1,Materials.Manyullyn,Materials.Aluminium, null);
+ list.add(dStack);
+ dStack = getToolWithStats(6,1,Materials.DamascusSteel,Materials.DamascusSteel, null);
+ list.add(dStack);
+ dStack = getToolWithStats(8,1,Materials.Titanium,Materials.Titanium, null);
+ list.add(dStack);
+ dStack = getToolWithStats(10,1,Materials.TungstenSteel,Materials.TungstenSteel, null);
+ list.add(dStack);
+ dStack = getToolWithStats(12,1,Materials.Iridium,Materials.Iridium, null);
+ list.add(dStack);
+ dStack = getToolWithStats(12,1,Materials.Osmium,Materials.Osmium, null);
+ list.add(dStack);
+ dStack = getToolWithStats(14,1,Materials.Neutronium,Materials.Neutronium, null);
+ list.add(dStack);
+ dStack = getToolWithStats(16,1,Materials.InfinityCatalyst,Materials.InfinityCatalyst, null);
+ list.add(dStack);
+ dStack = getToolWithStats(18,1,Materials.Infinity,Materials.Infinity, null);
+ list.add(dStack);
+
+ //Steel for comparison
+ dStack = getToolWithStats(0,1,Materials.Steel,Materials.Steel, null);
+ list.add(dStack);
+ dStack = getToolWithStats(2,1,Materials.Steel,Materials.Steel, null);
+ list.add(dStack);
+ dStack = getToolWithStats(4,1,Materials.Steel,Materials.Steel, null);
+ list.add(dStack);
+ dStack = getToolWithStats(6,1,Materials.Steel,Materials.Steel, null);
+ list.add(dStack);
+ dStack = getToolWithStats(8,1,Materials.Steel,Materials.Steel, null);
+ list.add(dStack);
+ dStack = getToolWithStats(10,1,Materials.Steel,Materials.Steel, null);
+ list.add(dStack);
+ dStack = getToolWithStats(12,1,Materials.Steel,Materials.Steel, null);
+ list.add(dStack);
+ dStack = getToolWithStats(14,1,Materials.Steel,Materials.Steel, null);
+ list.add(dStack);
+ dStack = getToolWithStats(16,1,Materials.Steel,Materials.Steel, null);
+ list.add(dStack);
+ dStack = getToolWithStats(18,1,Materials.Steel,Materials.Steel, null);
+ list.add(dStack);
+
+ //Electric Scanners
+ dStack = getToolWithStats(100, 1, Materials.Iridium, Materials.TungstenSteel, new long[]{102400000L, GT_Values.V[6], 6L, -1L});
setCharge(dStack,102400000L);
list.add(dStack);
- dStack = getToolWithStats(102, 1, Materials.Neutronium, Materials.TungstenSteel, new long[]{409600000L, 131072L, 7L, -1L});
+ dStack = getToolWithStats(102, 1, Materials.Neutronium, Materials.TungstenSteel, new long[]{409600000L, GT_Values.V[7], 7L, -1L});
setCharge(dStack,409600000L);
list.add(dStack);
- dStack = getToolWithStats(104, 1, Materials.Osmium, Materials.TungstenSteel, new long[]{1638400000L, 524288L, 8L, -1L});
+ dStack = getToolWithStats(104, 1, Materials.InfinityCatalyst, Materials.TungstenSteel, new long[]{1638400000L, GT_Values.V[8], 8L, -1L});
setCharge(dStack,1638400000L);
list.add(dStack);
+ dStack = getToolWithStats(106, 1, Materials.Infinity, Materials.TungstenSteel, new long[]{6553600000L, GT_Values.V[9], 9L, -1L});
+ setCharge(dStack,6553600000L);
+ list.add(dStack);
}
}
diff --git a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java
index 3a588aa74f..74234eca0b 100644
--- a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java
+++ b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java
@@ -2,9 +2,8 @@ package com.detrav.items.behaviours;
import java.util.ArrayList;
import java.util.List;
-import java.util.Random;
+import java.util.SplittableRandom;
-import com.detrav.DetravScannerMod;
import com.detrav.items.DetravMetaGeneratedTool01;
import com.detrav.net.DetravNetwork;
import com.detrav.net.DetravProPickPacket00;
@@ -195,7 +194,7 @@ public class BehaviourDetravToolElectricProPick extends BehaviourDetravToolProPi
else {
//if (aWorld.getBlock(aX, aY, aZ).getMaterial() == Material.rock || aWorld.getBlock(aX, aY, aZ) == GregTech_API.sBlockOres1) {
if (!aWorld.isRemote) {
- processOreProspecting((DetravMetaGeneratedTool01) aItem, aStack, aPlayer, aWorld.getChunkFromBlockCoords(aX, aZ), aWorld.getTileEntity(aX, aY, aZ), GT_OreDictUnificator.getAssociation(new ItemStack(aWorld.getBlock(aX, aY, aZ), 1, aWorld.getBlockMetadata(aX, aY, aZ))), new Random(aWorld.getSeed() + 3547 * aX + 1327 * aZ + 9973 * aY), 1000);
+ processOreProspecting((DetravMetaGeneratedTool01) aItem, aStack, aPlayer, aWorld.getChunkFromBlockCoords(aX, aZ), aWorld.getTileEntity(aX, aY, aZ), GT_OreDictUnificator.getAssociation(new ItemStack(aWorld.getBlock(aX, aY, aZ), 1, aWorld.getBlockMetadata(aX, aY, aZ))), new SplittableRandom(), 1000);
return true;
}
return true;
diff --git a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java
index 5dd8ddd55d..ffd8122380 100644
--- a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java
+++ b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java
@@ -2,7 +2,9 @@ package com.detrav.items.behaviours;
import java.util.HashMap;
import java.util.Random;
+import java.util.SplittableRandom;
+import com.detrav.DetravScannerMod;
import com.detrav.items.DetravMetaGeneratedTool01;
import gregtech.api.GregTech_API;
@@ -24,6 +26,7 @@ import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ChatComponentText;
+import net.minecraft.util.EnumChatFormatting;
import net.minecraft.world.World;
import net.minecraft.world.chunk.Chunk;
import net.minecraftforge.fluids.FluidStack;
@@ -47,22 +50,61 @@ public class BehaviourDetravToolProPick extends Behaviour_None {
public BehaviourDetravToolProPick(int aCosts) {
mCosts = aCosts;
}
-
+
public boolean onItemUse(GT_MetaBase_Item aItem, ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, int aSide, float hitX, float hitY, float hitZ) {
-
+
+ SplittableRandom aRandom =new SplittableRandom();
+ int chance = ((1+aStack.getItemDamage())*7) > 100 ? 100 :(1+aStack.getItemDamage())*7;
+ if (aWorld.isRemote)
+ return false;
+
if(aWorld.getBlock(aX,aY,aZ) == Blocks.bedrock)
{
- if (!aWorld.isRemote) {
+ if (!aWorld.isRemote && aRandom.nextInt(100) < chance) {
FluidStack fStack = GT_UndergroundOil.undergroundOil(aWorld.getChunkFromBlockCoords(aX, aZ), -1);
- addChatMassageByValue(aPlayer,fStack.amount/5000,fStack.getLocalizedName());
+ addChatMassageByValue(aPlayer,fStack.amount/2,"a Fluid");//fStack.getLocalizedName());
+ /*boolean fluid = GT_UndergroundOil.undergroundOil(aWorld.getChunkFromBlockCoords(aX, aZ), -1)!=null &&GT_UndergroundOil.undergroundOil(aWorld.getChunkFromBlockCoords(aX, aZ), -1).getFluid()!=null;
+ if (fluid)
+ aPlayer.addChatMessage(new ChatComponentText(EnumChatFormatting.GREEN+"You found some liquid."));
+ else
+ aPlayer.addChatMessage(new ChatComponentText(EnumChatFormatting.RED+"You found no liquid."));*/
if (!aPlayer.capabilities.isCreativeMode)
((DetravMetaGeneratedTool01)aItem).doDamage(aStack, this.mCosts);
}
return true;
}
- if (aWorld.getBlock(aX, aY, aZ).getMaterial() == Material.rock || aWorld.getBlock(aX, aY, aZ) == GregTech_API.sBlockOres1) {
+ if (aWorld.getBlock(aX, aY, aZ).getMaterial() == Material.rock || aWorld.getBlock(aX, aY, aZ).getMaterial() == Material.ground || aWorld.getBlock(aX, aY, aZ) == GregTech_API.sBlockOres1) {
if (!aWorld.isRemote) {
- processOreProspecting((DetravMetaGeneratedTool01) aItem, aStack, aPlayer, aWorld.getChunkFromBlockCoords(aX, aZ), aWorld.getTileEntity(aX, aY, aZ),GT_OreDictUnificator.getAssociation(new ItemStack(aWorld.getBlock(aX, aY, aZ), 1, aWorld.getBlockMetadata(aX, aY, aZ))), new Random(aWorld.getSeed() + 3547 * aX + 1327 * aZ + 9973 * aY),40);
+ int bX = aX;
+ int bZ = aZ;
+
+ int chunks = (((DetravMetaGeneratedTool01)aItem).getHarvestLevel(aStack, "")+(aStack.getItemDamage()/4));
+ int half = chunks/2;
+
+ aPlayer.addChatMessage(new ChatComponentText(EnumChatFormatting.GOLD+"Start of Prospectoring"));
+ for (int x = -half; x<half;++x)
+ for (int z = -half; z<half;++z) {
+ aX=aX+(x*16);
+ aZ=aZ+(z*16);
+ if (DetravScannerMod.DEBUGBUILD)
+ aPlayer.addChatMessage(new ChatComponentText(EnumChatFormatting.YELLOW+"Chunk at "+ aX +"|"+aZ+" to "+(aX+16)+"|"+(aZ+16)));
+ processOreProspecting((DetravMetaGeneratedTool01) aItem, aStack, aPlayer, aWorld.getChunkFromBlockCoords(aX, aZ), aWorld.getTileEntity(aX, aY, aZ),GT_OreDictUnificator.getAssociation(new ItemStack(aWorld.getBlock(aX, aY, aZ), 1, aWorld.getBlockMetadata(aX, aY, aZ))), aRandom, chance);
+ }
+
+ /*for (byte b = 0; b<chunks;++b) {
+ aX=aX+(b*16);
+ aZ=aZ+(b*16);
+ bX=bX-(b*16);
+ bZ=bZ-(b*16);
+ if (DetravScannerMod.DEBUGBUILD)
+ aPlayer.addChatMessage(new ChatComponentText(EnumChatFormatting.YELLOW+"Chunk at "+ aX +"|"+aZ+" to "+(aX+16)+"|"+(aZ+16)));
+ processOreProspecting((DetravMetaGeneratedTool01) aItem, aStack, aPlayer, aWorld.getChunkFromBlockCoords(aX, aZ), aWorld.getTileEntity(aX, aY, aZ),GT_OreDictUnificator.getAssociation(new ItemStack(aWorld.getBlock(aX, aY, aZ), 1, aWorld.getBlockMetadata(aX, aY, aZ))), aRandom, chance);
+ if (bX!=aX && bZ != aZ) {
+ if (DetravScannerMod.DEBUGBUILD)
+ aPlayer.addChatMessage(new ChatComponentText(EnumChatFormatting.YELLOW+"Chunk at "+ bX +"|"+bZ+" to "+(bX+16)+"|"+(bZ+16)));
+ processOreProspecting((DetravMetaGeneratedTool01) aItem, aStack, aPlayer, aWorld.getChunkFromBlockCoords(bX, bZ), aWorld.getTileEntity(bX, aY, bZ),GT_OreDictUnificator.getAssociation(new ItemStack(aWorld.getBlock(bX, aY, bZ), 1, aWorld.getBlockMetadata(bX, aY, bZ))), aRandom, chance);
+ }
+ }*/
return true;
}
return true;
@@ -70,9 +112,8 @@ public class BehaviourDetravToolProPick extends Behaviour_None {
return false;
}
- protected void processOreProspecting(DetravMetaGeneratedTool01 aItem, ItemStack aStack, EntityPlayer aPlayer, Chunk aChunk, TileEntity aTileEntity, ItemData tAssotiation, Random aRandom, int chance)//TileEntity aTileEntity)
+ protected void processOreProspecting(DetravMetaGeneratedTool01 aItem, ItemStack aStack, EntityPlayer aPlayer, Chunk aChunk, TileEntity aTileEntity, ItemData tAssotiation, SplittableRandom aRandom, int chance)//TileEntity aTileEntity)
{
- aRandom.nextInt();
if (aTileEntity != null) {
if (aTileEntity instanceof GT_TileEntity_Ores) {
GT_TileEntity_Ores gt_entity = (GT_TileEntity_Ores) aTileEntity;
@@ -83,8 +124,7 @@ public class BehaviourDetravToolProPick extends Behaviour_None {
aItem.doDamage(aStack, this.mCosts);
return;
}
- } else if (tAssotiation!=null)
- {
+ } else if (tAssotiation!=null){
//if (aTileEntity instanceof GT_TileEntity_Ores) {
try {
GT_TileEntity_Ores gt_entity = (GT_TileEntity_Ores) aTileEntity;
@@ -197,7 +237,12 @@ public class BehaviourDetravToolProPick extends Behaviour_None {
}
return;
}
- addChatMassageByValue(aPlayer,0,null);
+ else if (aRandom.nextInt(100) > chance) {
+ aPlayer.addChatMessage(new ChatComponentText(EnumChatFormatting.RED+"You had no luck this time."));
+ if (!aPlayer.capabilities.isCreativeMode)
+ aItem.doDamage(aStack, this.mCosts/4);
+ }
+ // addChatMassageByValue(aPlayer,0,null);
}
void addChatMassageByValue(EntityPlayer aPlayer, int value, String name) {
diff --git a/src/main/java/com/detrav/items/processing/ProcessingDetravToolProPick.java b/src/main/java/com/detrav/items/processing/ProcessingDetravToolProPick.java
index 79acd999e3..ad92dd8932 100644
--- a/src/main/java/com/detrav/items/processing/ProcessingDetravToolProPick.java
+++ b/src/main/java/com/detrav/items/processing/ProcessingDetravToolProPick.java
@@ -2,26 +2,49 @@ package com.detrav.items.processing;
import com.detrav.items.DetravMetaGeneratedTool01;
import com.dreammaster.gthandler.CustomItemList;
+
+import gregtech.api.enums.GT_Values;
import gregtech.api.enums.ItemList;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.util.GT_ModHandler;
+import gtPlusPlus.core.util.minecraft.ItemUtils;
+import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
+import net.minecraftforge.oredict.OreDictionary;
/**
* Created by wital_000 on 18.03.2016.
*/
-public class ProcessingDetravToolProPick implements gregtech.api.interfaces.IOreRecipeRegistrator {
+public class ProcessingDetravToolProPick implements gregtech.api.interfaces.IOreRecipeRegistrator {
public ProcessingDetravToolProPick() {
OrePrefixes.toolHeadPickaxe.add(this);
+
}
public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
- if(!aPrefix.doGenerateItem(aMaterial)) return;;
-
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(100, 1, aMaterial, Materials.Iridium, new long[]{102400000L, 32768L, 6L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_LuV, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial),Character.valueOf('E'), ItemList.Emitter_LuV,Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Master), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Iridium), Character.valueOf('B'), CustomItemList.BatteryHull_LuV_Full.get(1L, new Object[0])});
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(102, 1, aMaterial, Materials.Osmium, new long[]{409600000L, 131072L, 7L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_ZPM, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_ZPM,Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Ultimate), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Osmium), Character.valueOf('B'), CustomItemList.BatteryHull_ZPM_Full.get(1L, new Object[0])});
- GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(104, 1, aMaterial, Materials.Neutronium, new long[]{1638400000L, 524288L, 8L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_UV, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_UV,Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Superconductor), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Neutronium), Character.valueOf('B'), CustomItemList.BatteryHull_UV_Full.get(1L, new Object[0])});
+ if(!aPrefix.doGenerateItem(aMaterial))
+ return;
+
+ //ULV disabled
+ //GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(0, 1, aMaterial, Materials.Lead, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellSulfuricAcid").get(0),'S',OreDictionary.getOres("cellHydroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Primitive),'X',gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList.Sensor_ULV});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(2, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellSulfuricAcid").get(0),'S',OreDictionary.getOres("cellHydroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Basic),'X',ItemList.Sensor_LV});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(4, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellSulfuricAcid").get(0),'S',OreDictionary.getOres("cellHydroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Good),'X',ItemList.Sensor_MV});
+
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(6, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellNitricAcid").get(0),'S',OreDictionary.getOres("cellSodiumPersulfate").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Advanced),'X',ItemList.Sensor_HV});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(8, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellNitricAcid").get(0),'S',OreDictionary.getOres("cellSodiumPersulfate").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Data),'X',ItemList.Sensor_EV});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(10, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellNitricAcid").get(0),'S',OreDictionary.getOres("cellSodiumPersulfate").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Elite),'X',ItemList.Sensor_IV});
+
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(12, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellHydrofluoricAcid").get(0),'S',OreDictionary.getOres("cellLithiumPeroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Master),'X',ItemList.Sensor_LuV});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(14, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellHydrofluoricAcid").get(0),'S',OreDictionary.getOres("cellLithiumPeroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Ultimate),'X',ItemList.Sensor_ZPM});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(16, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellHydrofluoricAcid").get(0),'S',OreDictionary.getOres("cellLithiumPeroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Superconductor),'X',ItemList.Sensor_UV});
+
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(18, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellHydrofluoricAcid").get(0),'S',OreDictionary.getOres("cellHydrogenPeroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Infinite),'X',ItemList.Sensor_UHV});
+
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(100, 1, aMaterial, Materials.Iridium, new long[]{102400000L, GT_Values.V[6], 6L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_LuV, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial),Character.valueOf('E'), ItemList.Emitter_LuV,Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Master), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Iridium), Character.valueOf('B'), CustomItemList.BatteryHull_LuV_Full.get(1L)});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(102, 1, aMaterial, Materials.Osmium, new long[]{409600000L, GT_Values.V[7], 7L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_ZPM, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_ZPM,Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Ultimate), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Osmium), Character.valueOf('B'), CustomItemList.BatteryHull_ZPM_Full.get(1L)});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(104, 1, aMaterial, Materials.Neutronium, new long[]{1638400000L, GT_Values.V[8], 8L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_UV, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_UV,Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Superconductor), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Neutronium), Character.valueOf('B'), CustomItemList.BatteryHull_UV_Full.get(1L)});
+ GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(106, 1, aMaterial, Materials.Infinity, new long[]{6553600000L, GT_Values.V[9], 9L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_UHV, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_UHV,Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Infinite), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Infinity), Character.valueOf('B'), CustomItemList.BatteryHull_UHV_Full.get(1L)});
}
diff --git a/src/main/java/com/detrav/items/tools/DetravToolLuVElectricProPick.java b/src/main/java/com/detrav/items/tools/DetravToolLuVElectricProPick.java
deleted file mode 100644
index 6ccbff924e..0000000000
--- a/src/main/java/com/detrav/items/tools/DetravToolLuVElectricProPick.java
+++ /dev/null
@@ -1,187 +0,0 @@
-package com.detrav.items.tools;
-
-import com.detrav.enums.Textures01;
-import com.detrav.items.behaviours.BehaviourDetravToolElectricProPick;
-import gregtech.GT_Mod;
-import gregtech.api.GregTech_API;
-import gregtech.api.damagesources.GT_DamageSources;
-import gregtech.api.interfaces.IIconContainer;
-import gregtech.api.interfaces.IToolStats;
-import gregtech.api.items.GT_MetaGenerated_Tool;
-import net.minecraft.block.Block;
-import net.minecraft.enchantment.Enchantment;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraft.stats.AchievementList;
-import net.minecraft.util.ChatComponentText;
-import net.minecraft.util.DamageSource;
-import net.minecraft.util.EnumChatFormatting;
-import net.minecraft.util.IChatComponent;
-import net.minecraft.world.World;
-import net.minecraftforge.event.world.BlockEvent;
-
-import java.util.List;
-
-/**
- * Created by wital_000 on 19.03.2016.
- */
-public class DetravToolLuVElectricProPick implements IToolStats {
- public int getToolDamagePerBlockBreak() {
- return GT_Mod.gregtechproxy.mHardRock ? 50 : 100;
- }
-
- public int getToolDamagePerDropConversion() {
- return 100;
- }
-
- public int getToolDamagePerContainerCraft() {
- return 100;
- }
-
- public int getToolDamagePerEntityAttack() {
- return 2000;
- }
-
- public int getBaseQuality() {
- return 0;
- }
-
- public float getBaseDamage() {
- return 1.0F;
- }
-
- @Override
- public int getHurtResistanceTime(int i, Entity entity) {
- return i;
- }
-
- public float getSpeedMultiplier() {
- return 1.0F;
- }
-
- public float getMaxDurabilityMultiplier() {
- return 1.0F;
- }
-
- @Override
- public DamageSource getDamageSource(EntityLivingBase aPlayer, Entity aEntity) {
- return GT_DamageSources.getCombatDamage((aPlayer instanceof EntityPlayer) ? "player" : "mob", aPlayer, (aEntity instanceof EntityLivingBase) ? getDeathMessage(aPlayer, (EntityLivingBase) aEntity) : null);
- }
-
- public String getCraftingSound() {
- return null;
- }
-
- public String getEntityHitSound() {
- return null;
- }
-
- public String getBreakingSound() {
- return (String) GregTech_API.sSoundList.get(Integer.valueOf(0));
- }
-
- @Override
- public Enchantment[] getEnchantments(ItemStack itemStack) {
- return new Enchantment[0];
- }
-
- @Override
- public int[] getEnchantmentLevels(ItemStack itemStack) {
- return new int[0];
- }
-
- public String getMiningSound() {
- return null;
- }
-
- public boolean canBlock() {
- return false;
- }
-
- public boolean isCrowbar() {
- return false;
- }
-
- @Override
- public boolean isGrafter() {
- return false;
- }
-
- @Override
- public boolean isChainsaw() {
- return false;
- }
-
- @Override
- public boolean isWrench() {
- return false;
- }
-
- @Override
- public boolean isWeapon() {
- return false;
- }
-
- @Override
- public boolean isRangedWeapon() {
- return false;
- }
-
- @Override
- public boolean isMiningTool() {
- return false;
- }
-
- public boolean isMinableBlock(Block aBlock, byte aMetaData) {
-
- return false;
- }
-
- @Override
- public int convertBlockDrops(List<ItemStack> list, ItemStack itemStack, EntityPlayer entityPlayer, Block block, int i, int i1, int i2, byte b, int i3, boolean b1, BlockEvent.HarvestDropsEvent harvestDropsEvent) {
- return 0;
- }
-
- public ItemStack getBrokenItem(ItemStack aStack) {
- return null;
- }
-
- @Override
- public float getNormalDamageAgainstEntity(float v, Entity entity, ItemStack itemStack, EntityPlayer entityPlayer) {
- return v;
- }
-
- @Override
- public float getMagicDamageAgainstEntity(float v, Entity entity, ItemStack itemStack, EntityPlayer entityPlayer) {
- return v;
- }
-
- public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
- return Textures01.mTextures[0];
- }
-
- public short[] getRGBa(boolean aIsToolHead, ItemStack aStack) {
- return aIsToolHead ? GT_MetaGenerated_Tool.getPrimaryMaterial(aStack).mRGBa : GT_MetaGenerated_Tool.getSecondaryMaterial(aStack).mRGBa;
- }
-
- public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID) {
- aItem.addItemBehavior(aID, new BehaviourDetravToolElectricProPick(getToolDamagePerBlockBreak()));
- }
-
- public void onToolCrafted(ItemStack aStack, EntityPlayer aPlayer) {
-
- aPlayer.triggerAchievement(AchievementList.openInventory);
- aPlayer.triggerAchievement(AchievementList.mineWood);
- aPlayer.triggerAchievement(AchievementList.buildWorkBench);
- }
-
- public IChatComponent getDeathMessage(EntityLivingBase aPlayer, EntityLivingBase aEntity) {
- return new ChatComponentText(EnumChatFormatting.RED + aEntity.getCommandSenderName() + EnumChatFormatting.WHITE + " got Pick Up'ed by " + EnumChatFormatting.GREEN + aPlayer.getCommandSenderName() + EnumChatFormatting.WHITE);
- }
-
- public float getMiningSpeed(Block aBlock, byte aMetaData, float aDefault, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ) {
- return aDefault;
- }
-} \ No newline at end of file
diff --git a/src/main/java/com/detrav/items/tools/DetravToolUVElectricProPick.java b/src/main/java/com/detrav/items/tools/DetravToolUVElectricProPick.java
deleted file mode 100644
index 7711a8901d..0000000000
--- a/src/main/java/com/detrav/items/tools/DetravToolUVElectricProPick.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.detrav.items.tools;
-
-import com.detrav.enums.Textures01;
-import gregtech.api.interfaces.IIconContainer;
-import net.minecraft.item.ItemStack;
-
-/**
- * Created by wital_000 on 19.03.2016.
- */
-public class DetravToolUVElectricProPick extends DetravToolZPMElectricProPick {
- public int getBaseQuality() {
- return 2;
- }
-
- public float getMaxDurabilityMultiplier() {
- return 4.0F;
- }
-
- public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
- return Textures01.mTextures[2];
- }
-}
diff --git a/src/main/java/com/detrav/items/tools/DetravToolZPMElectricProPick.java b/src/main/java/com/detrav/items/tools/DetravToolZPMElectricProPick.java
deleted file mode 100644
index c04747f529..0000000000
--- a/src/main/java/com/detrav/items/tools/DetravToolZPMElectricProPick.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package com.detrav.items.tools;
-
-import com.detrav.enums.Textures01;
-import gregtech.api.interfaces.IIconContainer;
-import net.minecraft.item.ItemStack;
-
-/**
- * Created by wital_000 on 19.03.2016.
- */
-public class DetravToolZPMElectricProPick extends DetravToolLuVElectricProPick {
- public int getBaseQuality() {
- return 1;
- }
- public float getMaxDurabilityMultiplier() {
- return 2.0F;
- }
-
- public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
- return Textures01.mTextures[1];
- }
-}