aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDetrav <witalyezep@gmail.com>2016-03-19 16:19:31 +0300
committerDetrav <witalyezep@gmail.com>2016-03-19 16:19:31 +0300
commitf0ffeaaa2ac0fdec49e1274930529e74980c85e6 (patch)
tree66fef2f96fc54a2d6baea5b9b1dd26596e5ab975
parent6616c456d6efb845991e8843257a70046922a2f4 (diff)
downloadGT5-Unofficial-f0ffeaaa2ac0fdec49e1274930529e74980c85e6.tar.gz
GT5-Unofficial-f0ffeaaa2ac0fdec49e1274930529e74980c85e6.tar.bz2
GT5-Unofficial-f0ffeaaa2ac0fdec49e1274930529e74980c85e6.zip
Complete && UpdateVersion
-rw-r--r--build.properties2
-rw-r--r--src/main/java/com/detrav/DetravScannerMod.java4
-rw-r--r--src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java2
-rw-r--r--src/main/java/com/detrav/tools/BehaviourDetravToolProPick.java102
-rw-r--r--src/main/java/com/detrav/tools/DetravToolProPick.java1
5 files changed, 104 insertions, 7 deletions
diff --git a/build.properties b/build.properties
index ad88305209..1c2f71dc4d 100644
--- a/build.properties
+++ b/build.properties
@@ -1,7 +1,7 @@
minecraft.version=1.7.10
forge.version=10.13.4.1614-1.7.10
-detravscanner.version=0.4
+detravscanner.version=0.5
ae2.version=rv2-beta-33
applecore.version=1.7.10-1.2.1+107.59407
diff --git a/src/main/java/com/detrav/DetravScannerMod.java b/src/main/java/com/detrav/DetravScannerMod.java
index 15ab843e91..648bb64293 100644
--- a/src/main/java/com/detrav/DetravScannerMod.java
+++ b/src/main/java/com/detrav/DetravScannerMod.java
@@ -17,7 +17,7 @@ import net.minecraft.init.Blocks;
public class DetravScannerMod
{
public static final String MODID = "detravscannermod";
- public static final String VERSION = "0.4";
+ public static final String VERSION = "0.5";
public static final CreativeTabs TAB_DETRAV = new DetravCreativeTab();
@@ -51,6 +51,6 @@ public class DetravScannerMod
@EventHandler
public void serverLoad(FMLServerStartingEvent event)
{
- event.registerServerCommand(new DetravScannerCommand());
+ //event.registerServerCommand(new DetravScannerCommand());
}
}
diff --git a/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java b/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java
index 5c1234d12a..565978f2e6 100644
--- a/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java
+++ b/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java
@@ -17,7 +17,7 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool {
INSTANCE = this;
addTool(0, "ProPick", "", new DetravToolProPick(), new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)});
setCreativeTab(DetravScannerMod.TAB_DETRAV);
- addItemBehavior(0,new BehaviourDetravToolProPick());
+ //addItemBehavior(0,new BehaviourDetravToolProPick());
}
diff --git a/src/main/java/com/detrav/tools/BehaviourDetravToolProPick.java b/src/main/java/com/detrav/tools/BehaviourDetravToolProPick.java
index 167e30973b..a0dfc599f8 100644
--- a/src/main/java/com/detrav/tools/BehaviourDetravToolProPick.java
+++ b/src/main/java/com/detrav/tools/BehaviourDetravToolProPick.java
@@ -1,24 +1,120 @@
package com.detrav.tools;
+import com.detrav.items.DetravMetaGeneratedTool01;
+import gregtech.api.GregTech_API;
import gregtech.api.items.GT_MetaBase_Item;
+import gregtech.api.util.GT_LanguageManager;
+import gregtech.common.blocks.GT_TileEntity_Ores;
import gregtech.common.items.behaviors.Behaviour_None;
+import net.minecraft.block.Block;
+import net.minecraft.block.material.Material;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
+import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ChatComponentText;
import net.minecraft.world.World;
+import net.minecraft.world.chunk.Chunk;
+
+import java.util.HashMap;
+import java.util.Random;
/**
* Created by wital_000 on 19.03.2016.
*/
public class BehaviourDetravToolProPick extends Behaviour_None {
+ static final String[] foundTexts = new String[]{
+ "Found nothing of interest", //0
+ "Found Traces of ", //1-9
+ "Found a small sample of ", //10-29
+ "Found a medium sample of ", //30-59
+ "Found a large sample of ", //60-99
+ "Found a very large sample of ", //100-**
+ "Found "
+ };
+ private final int mCosts;
+
+ 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) {
- if (aWorld.isRemote)
- {
+ 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), new Random(aWorld.getSeed() + 3547*aX + 1327 * aZ + 9973* aY));
+ return true;
+ }
+ //aPlayer.addChatMessage(new ChatComponentText("Tested"));
return true;
}
- aPlayer.addChatMessage(new ChatComponentText("Tested"));
return false;
}
+
+ private void processOreProspecting(DetravMetaGeneratedTool01 aItem, ItemStack aStack, EntityPlayer aPlayer, Chunk aChunk, TileEntity aTileEntity, Random aRandom)//TileEntity aTileEntity)
+ {
+ aRandom.nextInt();
+ if(aTileEntity != null) {
+ if (aTileEntity instanceof GT_TileEntity_Ores) {
+ GT_TileEntity_Ores gt_entity = (GT_TileEntity_Ores) aTileEntity;
+ String name = GT_LanguageManager.getTranslation("gt.blockores." + gt_entity.getMetaData() + ".name");
+ aPlayer.addChatMessage(new ChatComponentText(foundTexts[6] + name));
+ aItem.doDamage(aStack, this.mCosts);
+ return;
+ }
+ }
+ else if(aRandom.nextInt(10)<4) {
+ HashMap<String, Integer> ores = new HashMap<String, Integer>();
+ for (int x = 0; x < 16; x++)
+ for (int z = 0; z < 16; z++) {
+ int ySize = aChunk.getHeightValue(x, z);
+ for (int y = 1; y < ySize; y++) {
+ Block b = aChunk.getBlock(x, y, z);
+ if (b == GregTech_API.sBlockOres1) {
+ TileEntity entity = aChunk.getTileEntityUnsafe(x, y, z);
+ if (entity != null) {
+ 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;
+ if (!ores.containsKey(name))
+ ores.put(name, 1);
+ else {
+ int val = ores.get(name);
+ ores.put(name, val + 1);
+ }
+ }
+ }
+ }
+ }
+ for(String key : ores.keySet())
+ {
+ int value = ores.get(key);
+ if(value<10)
+ aPlayer.addChatMessage(new ChatComponentText(foundTexts[1] + key));
+ else if(value<30)
+ aPlayer.addChatMessage(new ChatComponentText(foundTexts[2] + key));
+ else if(value<60)
+ aPlayer.addChatMessage(new ChatComponentText(foundTexts[3] + key));
+ else if(value<100)
+ aPlayer.addChatMessage(new ChatComponentText(foundTexts[4] + key));
+ else
+ aPlayer.addChatMessage(new ChatComponentText(foundTexts[5] + key));
+ }
+ aItem.doDamage(aStack, this.mCosts);
+ return;
+ }
+ aPlayer.addChatMessage(new ChatComponentText(foundTexts[0]));
+
+ /*//aPlayer.addChatMessage(new ChatComponentText());
+ if(aTileEntity != null && aTileEntity instanceof GT_TileEntity_Ores)
+ {
+ GT_TileEntity_Ores gt_entity = (GT_TileEntity_Ores)aTileEntity;
+
+ /*String name = GT_LanguageManager.getTranslation(
+ b.getUnlocalizedName() + "." + gt_entity.getMetaData() + ".name");
+ if(name.startsWith("Small")) continue;
+ }*/
+ }
} \ No newline at end of file
diff --git a/src/main/java/com/detrav/tools/DetravToolProPick.java b/src/main/java/com/detrav/tools/DetravToolProPick.java
index 351af7c396..4444594117 100644
--- a/src/main/java/com/detrav/tools/DetravToolProPick.java
+++ b/src/main/java/com/detrav/tools/DetravToolProPick.java
@@ -167,6 +167,7 @@ public class DetravToolProPick implements IToolStats {
}
public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID) {
+ aItem.addItemBehavior(aID, new BehaviourDetravToolProPick(getToolDamagePerBlockBreak()));
}
public void onToolCrafted(ItemStack aStack, EntityPlayer aPlayer) {