Add more configuration to shake treasures

This commit is contained in:
t00thpick1
2017-06-10 13:59:49 -04:00
parent cb5d38c11f
commit ee02a19e9a
2 changed files with 19 additions and 177 deletions

View File

@ -18,16 +18,10 @@ import com.gmail.nossr50.util.Misc;
import com.gmail.nossr50.util.adapter.BiomeAdapter;
public final class Fishing {
// The order of the values is extremely important, a few methods depend on it to work properly
public enum Tier {
EIGHT(8),
SEVEN(7),
SIX(6),
FIVE(5),
FOUR(4),
THREE(3),
TWO(2),
ONE(1);
EIGHT(8), SEVEN(7), SIX(6), FIVE(5), FOUR(4), THREE(3), TWO(2), ONE(1);
int numerical;
@ -59,103 +53,29 @@ public final class Fishing {
public static int fishermansDietMaxLevel = fishermansDietRankLevel1 * 5;
public static Set<Biome> masterAnglerBiomes = BiomeAdapter.WATER_BIOMES;
public static Set<Biome> iceFishingBiomes = BiomeAdapter.ICE_BIOMES;
public static Set<Biome> iceFishingBiomes = BiomeAdapter.ICE_BIOMES;
private Fishing() {}
/**
* Finds the possible drops of an entity
*
* @param target Targeted entity
* @param target
* Targeted entity
* @return possibleDrops List of ItemStack that can be dropped
*/
protected static List<ShakeTreasure> findPossibleDrops(LivingEntity target) {
switch (target.getType()) {
case BLAZE:
return TreasureConfig.getInstance().shakeFromBlaze;
if (TreasureConfig.getInstance().shakeMap.containsKey(target.getType()))
return TreasureConfig.getInstance().shakeMap.get(target.getType());
case CAVE_SPIDER:
return TreasureConfig.getInstance().shakeFromCaveSpider;
case CHICKEN:
return TreasureConfig.getInstance().shakeFromChicken;
case COW:
return TreasureConfig.getInstance().shakeFromCow;
case CREEPER:
return TreasureConfig.getInstance().shakeFromCreeper;
case ENDERMAN:
return TreasureConfig.getInstance().shakeFromEnderman;
case GHAST:
return TreasureConfig.getInstance().shakeFromGhast;
case IRON_GOLEM:
return TreasureConfig.getInstance().shakeFromIronGolem;
case MAGMA_CUBE:
return TreasureConfig.getInstance().shakeFromMagmaCube;
case MUSHROOM_COW:
return TreasureConfig.getInstance().shakeFromMushroomCow;
case PIG:
return TreasureConfig.getInstance().shakeFromPig;
case PIG_ZOMBIE:
return TreasureConfig.getInstance().shakeFromPigZombie;
case PLAYER:
return TreasureConfig.getInstance().shakeFromPlayer;
case SHEEP:
return TreasureConfig.getInstance().shakeFromSheep;
case SHULKER:
return TreasureConfig.getInstance().shakeFromShulker;
case SKELETON:
return TreasureConfig.getInstance().shakeFromSkeleton;
case SLIME:
return TreasureConfig.getInstance().shakeFromSlime;
case SNOWMAN:
return TreasureConfig.getInstance().shakeFromSnowman;
case SPIDER:
return TreasureConfig.getInstance().shakeFromSpider;
case SQUID:
return TreasureConfig.getInstance().shakeFromSquid;
case WITCH:
return TreasureConfig.getInstance().shakeFromWitch;
case WITHER_SKELETON:
return TreasureConfig.getInstance().shakeFromWitherSkeleton;
case ZOMBIE:
return TreasureConfig.getInstance().shakeFromZombie;
case RABBIT:
return TreasureConfig.getInstance().shakeFromRabbit;
case GUARDIAN:
if (((Guardian) target).isElder())
return TreasureConfig.getInstance().shakeFromElderGuardian;
return TreasureConfig.getInstance().shakeFromGuardian;
default:
return null;
}
return null;
}
/**
* Randomly chooses a drop among the list
*
* @param possibleDrops List of ItemStack that can be dropped
* @param possibleDrops
* List of ItemStack that can be dropped
* @return Chosen ItemStack
*/
protected static ItemStack chooseDrop(List<ShakeTreasure> possibleDrops) {