summaryrefslogtreecommitdiff
path: root/src/main/java/com/sosnitzka/taiga/traits
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/sosnitzka/taiga/traits')
-rw-r--r--src/main/java/com/sosnitzka/taiga/traits/TraitCrushing.java35
-rw-r--r--src/main/java/com/sosnitzka/taiga/traits/TraitPulverizing.java2
-rw-r--r--src/main/java/com/sosnitzka/taiga/traits/TraitSuperHeavy.java4
3 files changed, 38 insertions, 3 deletions
diff --git a/src/main/java/com/sosnitzka/taiga/traits/TraitCrushing.java b/src/main/java/com/sosnitzka/taiga/traits/TraitCrushing.java
new file mode 100644
index 0000000..608b5be
--- /dev/null
+++ b/src/main/java/com/sosnitzka/taiga/traits/TraitCrushing.java
@@ -0,0 +1,35 @@
+package com.sosnitzka.taiga.traits;
+
+import net.minecraft.block.state.IBlockState;
+import net.minecraft.init.Blocks;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.text.TextFormatting;
+import net.minecraftforge.event.world.BlockEvent;
+import slimeknights.tconstruct.library.traits.AbstractTrait;
+
+public class TraitCrushing extends AbstractTrait {
+
+ public TraitCrushing() {
+ super(TraitCrushing.class.getSimpleName().toLowerCase().substring(5), TextFormatting.GRAY);
+ }
+
+
+ @Override
+ public void blockHarvestDrops(ItemStack tool, BlockEvent.HarvestDropsEvent e) {
+ if (!e.getWorld().isRemote) {
+ IBlockState state = e.getState();
+ float f = random.nextFloat();
+ if (state.equals(Blocks.STONE.getDefaultState())) {
+ e.getDrops().clear();
+ if (f < .3f) {
+ e.getDrops().add(new ItemStack(Blocks.SAND));
+ } else if (f < .6f) {
+ e.getDrops().add(new ItemStack(Blocks.GRAVEL));
+ } else if (f <= .9f) {
+ e.getDrops().add(new ItemStack(Blocks.COBBLESTONE));
+ } else e.getDrops().add(new ItemStack(Blocks.STONE));
+ }
+ }
+ }
+
+}
diff --git a/src/main/java/com/sosnitzka/taiga/traits/TraitPulverizing.java b/src/main/java/com/sosnitzka/taiga/traits/TraitPulverizing.java
index 466c715..17b7c9e 100644
--- a/src/main/java/com/sosnitzka/taiga/traits/TraitPulverizing.java
+++ b/src/main/java/com/sosnitzka/taiga/traits/TraitPulverizing.java
@@ -29,7 +29,7 @@ public class TraitPulverizing extends AbstractTrait {
@Override
public void blockHarvestDrops(ItemStack tool, BlockEvent.HarvestDropsEvent event) {
- if (random.nextFloat() < 0.9) {
+ if (random.nextFloat() < 0.6) {
event.getDrops().clear();
}
}
diff --git a/src/main/java/com/sosnitzka/taiga/traits/TraitSuperHeavy.java b/src/main/java/com/sosnitzka/taiga/traits/TraitSuperHeavy.java
index 297e49d..2ac1374 100644
--- a/src/main/java/com/sosnitzka/taiga/traits/TraitSuperHeavy.java
+++ b/src/main/java/com/sosnitzka/taiga/traits/TraitSuperHeavy.java
@@ -20,7 +20,7 @@ import slimeknights.tconstruct.library.utils.TinkerUtil;
public class TraitSuperHeavy extends TraitProgressiveStats {
protected static int TICK_PER_STAT = 50;
- protected static float blockcount = 250f;
+ protected static float blockcount = 500f;
public TraitSuperHeavy() {
super(TraitSuperHeavy.class.getSimpleName().toLowerCase().substring(5), TextFormatting.DARK_GRAY);
@@ -33,7 +33,7 @@ public class TraitSuperHeavy extends TraitProgressiveStats {
NBTTagCompound tag = TagUtil.getExtraTag(tool);
Utils.GeneralNBTData data = Utils.GeneralNBTData.read(tag);
if (data.brokenblocks == 0) return;
- event.setNewSpeed(Math.max(event.getNewSpeed() - data.brokenblocks * event.getOriginalSpeed() / blockcount, 0.25f));
+ event.setNewSpeed(Math.max(event.getNewSpeed() - data.brokenblocks * event.getOriginalSpeed() / blockcount, 0.35f));
}
@Override