2016-03-18 21:31:18 -07:00
|
|
|
package WayofTime.bloodmagic.incense;
|
|
|
|
|
|
|
|
import WayofTime.bloodmagic.api.incense.EnumTranquilityType;
|
|
|
|
import WayofTime.bloodmagic.api.incense.ITranquilityHandler;
|
|
|
|
import WayofTime.bloodmagic.api.incense.TranquilityStack;
|
2017-08-15 18:14:28 -07:00
|
|
|
import WayofTime.bloodmagic.core.RegistrarBloodMagicBlocks;
|
2016-03-18 21:31:18 -07:00
|
|
|
import net.minecraft.block.*;
|
|
|
|
import net.minecraft.block.state.IBlockState;
|
|
|
|
import net.minecraft.init.Blocks;
|
|
|
|
import net.minecraft.util.math.BlockPos;
|
|
|
|
import net.minecraft.world.World;
|
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
public class TranquilityHandlers {
|
2016-03-18 21:31:18 -07:00
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
public static class Plant implements ITranquilityHandler {
|
2016-03-18 21:31:18 -07:00
|
|
|
@Override
|
2017-08-15 21:30:48 -07:00
|
|
|
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state) {
|
|
|
|
if (block instanceof BlockLeaves) {
|
2016-03-18 21:31:18 -07:00
|
|
|
return new TranquilityStack(EnumTranquilityType.PLANT, 1);
|
|
|
|
}
|
|
|
|
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
public static class Lava implements ITranquilityHandler {
|
2016-03-18 21:31:18 -07:00
|
|
|
@Override
|
2017-08-15 21:30:48 -07:00
|
|
|
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state) {
|
|
|
|
if (block == Blocks.LAVA || block == Blocks.FLOWING_LAVA) {
|
2016-03-18 21:31:18 -07:00
|
|
|
return new TranquilityStack(EnumTranquilityType.LAVA, 1.2);
|
|
|
|
}
|
|
|
|
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
public static class Fire implements ITranquilityHandler {
|
2016-03-18 21:31:18 -07:00
|
|
|
@Override
|
2017-08-15 21:30:48 -07:00
|
|
|
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state) {
|
|
|
|
if (block instanceof BlockFire) {
|
2016-03-18 21:31:18 -07:00
|
|
|
return new TranquilityStack(EnumTranquilityType.FIRE, 1);
|
|
|
|
}
|
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
if (block == Blocks.NETHERRACK) {
|
2016-03-18 21:31:18 -07:00
|
|
|
return new TranquilityStack(EnumTranquilityType.FIRE, 0.5);
|
|
|
|
}
|
|
|
|
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
public static class Earth implements ITranquilityHandler {
|
2016-03-18 21:31:18 -07:00
|
|
|
@Override
|
2017-08-15 21:30:48 -07:00
|
|
|
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state) {
|
|
|
|
if (block == Blocks.DIRT) {
|
2016-03-18 21:31:18 -07:00
|
|
|
return new TranquilityStack(EnumTranquilityType.EARTHEN, 0.25);
|
|
|
|
}
|
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
if (block instanceof BlockGrass) {
|
2016-03-18 21:31:18 -07:00
|
|
|
return new TranquilityStack(EnumTranquilityType.EARTHEN, 0.5);
|
|
|
|
}
|
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
if (block == Blocks.FARMLAND) {
|
2016-03-18 21:31:18 -07:00
|
|
|
return new TranquilityStack(EnumTranquilityType.EARTHEN, 1);
|
|
|
|
}
|
|
|
|
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
public static class Crop implements ITranquilityHandler {
|
2016-03-18 21:31:18 -07:00
|
|
|
@Override
|
2017-08-15 21:30:48 -07:00
|
|
|
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state) {
|
|
|
|
if (block == Blocks.POTATOES || block == Blocks.CARROTS || block == Blocks.WHEAT || block == Blocks.NETHER_WART || block == Blocks.BEETROOTS) {
|
2016-03-18 21:31:18 -07:00
|
|
|
return new TranquilityStack(EnumTranquilityType.CROP, 1);
|
|
|
|
}
|
|
|
|
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
public static class Tree implements ITranquilityHandler {
|
2016-03-18 21:31:18 -07:00
|
|
|
@Override
|
2017-08-15 21:30:48 -07:00
|
|
|
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state) {
|
|
|
|
if (block instanceof BlockLog) {
|
2016-03-18 21:31:18 -07:00
|
|
|
return new TranquilityStack(EnumTranquilityType.TREE, 1);
|
|
|
|
}
|
|
|
|
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
public static class Water implements ITranquilityHandler {
|
2016-03-18 21:31:18 -07:00
|
|
|
@Override
|
2017-08-15 21:30:48 -07:00
|
|
|
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state) {
|
|
|
|
if (block == Blocks.WATER || block == Blocks.FLOWING_WATER) {
|
2016-03-18 21:31:18 -07:00
|
|
|
return new TranquilityStack(EnumTranquilityType.WATER, 1);
|
|
|
|
}
|
|
|
|
|
2017-08-15 21:30:48 -07:00
|
|
|
if (block == RegistrarBloodMagicBlocks.LIFE_ESSENCE) {
|
2016-03-18 21:31:18 -07:00
|
|
|
return new TranquilityStack(EnumTranquilityType.WATER, 1.5);
|
|
|
|
}
|
|
|
|
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|