forked from TAIGA/TAIGA
Added Trait Crushing, changed old assignment, fixed two variables to prevent annoyance
This commit is contained in:
@@ -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);
|
||||
|
35
src/main/java/com/sosnitzka/taiga/traits/TraitCrushing.java
Normal file
35
src/main/java/com/sosnitzka/taiga/traits/TraitCrushing.java
Normal file
@@ -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));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
@@ -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();
|
||||
}
|
||||
}
|
||||
|
@@ -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
|
||||
|
Reference in New Issue
Block a user