summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRobert Sosnitzka <robert.sosnitzka@gmail.com>2017-01-14 00:54:57 +0100
committerRobert Sosnitzka <robert.sosnitzka@gmail.com>2017-01-14 00:54:57 +0100
commit450b8b089976b968a69655a194fbbcd541adcde6 (patch)
treec452b2ba1395dfcaeb42876e1d59576b9860677c /src
parent81450023261c4a81fd36db719101b1abc474f8d4 (diff)
Added Trait Crushing, changed old assignment, fixed two variables to prevent annoyance
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/sosnitzka/taiga/MaterialTraits.java8
-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
4 files changed, 41 insertions, 8 deletions
diff --git a/src/main/java/com/sosnitzka/taiga/MaterialTraits.java b/src/main/java/com/sosnitzka/taiga/MaterialTraits.java
index d98d950..7ffb0d4 100644
--- a/src/main/java/com/sosnitzka/taiga/MaterialTraits.java
+++ b/src/main/java/com/sosnitzka/taiga/MaterialTraits.java
@@ -58,6 +58,7 @@ public class MaterialTraits {
public static final AbstractTrait leveled1 = new TraitLeveled(1);
public static final AbstractTrait leveled2 = new TraitLeveled(2);
public static final AbstractTrait leveled3 = new TraitLeveled(3);
+ public static final AbstractTrait crushing = new TraitCrushing();
/**
@@ -86,11 +87,8 @@ public class MaterialTraits {
public static Material tritonite = new Material("tritonite", TextFormatting.GOLD).addTrait(whirl);
public static Material ignitz = new Material("ignitz", TextFormatting.RED).addTrait(melting).addTrait(garishly, MaterialTypes.HANDLE);
public static Material imperomite = new Material("imperomite", TextFormatting.DARK_RED).addTrait(hollow);
- public static Material solarium = new Material("solarium", TextFormatting.YELLOW).addTrait(pulverizing).addTrait(superheavy);
+ public static Material solarium = new Material("solarium", TextFormatting.YELLOW).addTrait(superheavy).addTrait(crushing);
public static Material nihilite = new Material("nihilite", TextFormatting.DARK_GRAY).addTrait(souleater);
- /**
- * With Dev
- **/
public static Material adamant = new Material("adamant", TextFormatting.GOLD).addTrait(beserk).addTrait(leveled1, MaterialTypes.EXTRA).addTrait(leveled2, MaterialTypes.HANDLE).addTrait(leveled3, MaterialTypes.HEAD); //.addTrait(dev);
public static Material dyonite = new Material("dyonite", TextFormatting.GREEN).addTrait(tantrum);
public static Material nucleum = new Material("nucleum", TextFormatting.YELLOW).addTrait(decay);
@@ -99,7 +97,7 @@ public class MaterialTraits {
public static Material astrium = new Material("astrium", TextFormatting.DARK_PURPLE).addTrait(ported);
public static Material niob = new Material("niob", TextFormatting.RED).addTrait(reviving);
public static Material yrdeen = new Material("yrdeen", TextFormatting.RED).addTrait(naturebound);
- public static Material meteorite = new Material("meteorite", TextFormatting.DARK_GREEN).addTrait(crumbling, MaterialTypes.HEAD).addTrait(cheap);
+ public static Material meteorite = new Material("meteorite", TextFormatting.DARK_GREEN).addTrait(crumbling, MaterialTypes.HEAD).addTrait(pulverizing);
public static Material obsidiorite = new Material("obsidiorite", obsidioriteFluid.getColor()).addTrait(alien);
public static Material osram = new Material("osram", TextFormatting.GOLD);
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