Combine TranquilityHandlers into single class

This commit is contained in:
Nick 2016-03-18 21:31:18 -07:00
parent fc70bcf107
commit b9e4ac1e98
11 changed files with 144 additions and 203 deletions

View file

@ -5,7 +5,7 @@ import net.minecraft.block.state.IBlockState;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World; import net.minecraft.world.World;
public abstract class TranquilityHandler public interface ITranquilityHandler
{ {
public abstract TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state); TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state);
} }

View file

@ -10,16 +10,16 @@ import java.util.List;
public class IncenseTranquilityRegistry public class IncenseTranquilityRegistry
{ {
public static List<TranquilityHandler> handlerList = new ArrayList<TranquilityHandler>(); public static List<ITranquilityHandler> handlerList = new ArrayList<ITranquilityHandler>();
public static void registerTranquilityHandler(TranquilityHandler handler) public static void registerTranquilityHandler(ITranquilityHandler handler)
{ {
handlerList.add(handler); handlerList.add(handler);
} }
public static TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state) public static TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state)
{ {
for (TranquilityHandler handler : handlerList) for (ITranquilityHandler handler : handlerList)
{ {
TranquilityStack tranq = handler.getTranquilityOfBlock(world, pos, block, state); TranquilityStack tranq = handler.getTranquilityOfBlock(world, pos, block, state);
if (tranq != null) if (tranq != null)

View file

@ -1,24 +0,0 @@
package WayofTime.bloodmagic.incense;
import WayofTime.bloodmagic.api.incense.EnumTranquilityType;
import WayofTime.bloodmagic.api.incense.TranquilityHandler;
import WayofTime.bloodmagic.api.incense.TranquilityStack;
import net.minecraft.block.Block;
import net.minecraft.block.state.IBlockState;
import net.minecraft.init.Blocks;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
public class CropTranquilityHandler extends TranquilityHandler
{
@Override
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)
{
return new TranquilityStack(EnumTranquilityType.CROP, 1);
}
return null;
}
}

View file

@ -1,35 +0,0 @@
package WayofTime.bloodmagic.incense;
import WayofTime.bloodmagic.api.incense.EnumTranquilityType;
import WayofTime.bloodmagic.api.incense.TranquilityHandler;
import WayofTime.bloodmagic.api.incense.TranquilityStack;
import net.minecraft.block.Block;
import net.minecraft.block.BlockGrass;
import net.minecraft.block.state.IBlockState;
import net.minecraft.init.Blocks;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
public class EarthTranquilityHandler extends TranquilityHandler
{
@Override
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state)
{
if (block == Blocks.dirt)
{
return new TranquilityStack(EnumTranquilityType.EARTHEN, 0.25);
}
if (block instanceof BlockGrass)
{
return new TranquilityStack(EnumTranquilityType.EARTHEN, 0.5);
}
if (block == Blocks.farmland)
{
return new TranquilityStack(EnumTranquilityType.EARTHEN, 1);
}
return null;
}
}

View file

@ -1,30 +0,0 @@
package WayofTime.bloodmagic.incense;
import WayofTime.bloodmagic.api.incense.EnumTranquilityType;
import WayofTime.bloodmagic.api.incense.TranquilityHandler;
import WayofTime.bloodmagic.api.incense.TranquilityStack;
import net.minecraft.block.Block;
import net.minecraft.block.BlockFire;
import net.minecraft.block.state.IBlockState;
import net.minecraft.init.Blocks;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
public class FireTranquilityHandler extends TranquilityHandler
{
@Override
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state)
{
if (block instanceof BlockFire)
{
return new TranquilityStack(EnumTranquilityType.FIRE, 1);
}
if (block == Blocks.netherrack)
{
return new TranquilityStack(EnumTranquilityType.FIRE, 0.5);
}
return null;
}
}

View file

@ -1,24 +0,0 @@
package WayofTime.bloodmagic.incense;
import WayofTime.bloodmagic.api.incense.EnumTranquilityType;
import WayofTime.bloodmagic.api.incense.TranquilityHandler;
import WayofTime.bloodmagic.api.incense.TranquilityStack;
import net.minecraft.block.Block;
import net.minecraft.block.state.IBlockState;
import net.minecraft.init.Blocks;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
public class LavaTranquilityHandler extends TranquilityHandler
{
@Override
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state)
{
if (block == Blocks.lava || block == Blocks.flowing_lava)
{
return new TranquilityStack(EnumTranquilityType.LAVA, 1.2);
}
return null;
}
}

View file

@ -1,24 +0,0 @@
package WayofTime.bloodmagic.incense;
import WayofTime.bloodmagic.api.incense.EnumTranquilityType;
import WayofTime.bloodmagic.api.incense.TranquilityHandler;
import WayofTime.bloodmagic.api.incense.TranquilityStack;
import net.minecraft.block.Block;
import net.minecraft.block.BlockLeaves;
import net.minecraft.block.state.IBlockState;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
public class PlantTranquilityHandler extends TranquilityHandler
{
@Override
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state)
{
if (block instanceof BlockLeaves)
{
return new TranquilityStack(EnumTranquilityType.PLANT, 1);
}
return null;
}
}

View file

@ -0,0 +1,132 @@
package WayofTime.bloodmagic.incense;
import WayofTime.bloodmagic.api.incense.EnumTranquilityType;
import WayofTime.bloodmagic.api.incense.ITranquilityHandler;
import WayofTime.bloodmagic.api.incense.TranquilityStack;
import WayofTime.bloodmagic.registry.ModBlocks;
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;
public class TranquilityHandlers {
public static class Plant implements ITranquilityHandler
{
@Override
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state)
{
if (block instanceof BlockLeaves)
{
return new TranquilityStack(EnumTranquilityType.PLANT, 1);
}
return null;
}
}
public static class Lava implements ITranquilityHandler
{
@Override
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state)
{
if (block == Blocks.lava || block == Blocks.flowing_lava)
{
return new TranquilityStack(EnumTranquilityType.LAVA, 1.2);
}
return null;
}
}
public static class Fire implements ITranquilityHandler
{
@Override
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state)
{
if (block instanceof BlockFire)
{
return new TranquilityStack(EnumTranquilityType.FIRE, 1);
}
if (block == Blocks.netherrack)
{
return new TranquilityStack(EnumTranquilityType.FIRE, 0.5);
}
return null;
}
}
public static class Earth implements ITranquilityHandler
{
@Override
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state)
{
if (block == Blocks.dirt)
{
return new TranquilityStack(EnumTranquilityType.EARTHEN, 0.25);
}
if (block instanceof BlockGrass)
{
return new TranquilityStack(EnumTranquilityType.EARTHEN, 0.5);
}
if (block == Blocks.farmland)
{
return new TranquilityStack(EnumTranquilityType.EARTHEN, 1);
}
return null;
}
}
public static class Crop implements ITranquilityHandler
{
@Override
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)
{
return new TranquilityStack(EnumTranquilityType.CROP, 1);
}
return null;
}
}
public static class Tree implements ITranquilityHandler
{
@Override
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state)
{
if (block instanceof BlockLog)
{
return new TranquilityStack(EnumTranquilityType.TREE, 1);
}
return null;
}
}
public static class Water implements ITranquilityHandler
{
@Override
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state)
{
if (block == Blocks.water || block == Blocks.flowing_water)
{
return new TranquilityStack(EnumTranquilityType.WATER, 1);
}
if (block == ModBlocks.lifeEssence)
{
return new TranquilityStack(EnumTranquilityType.WATER, 1.5);
}
return null;
}
}
}

View file

@ -1,24 +0,0 @@
package WayofTime.bloodmagic.incense;
import WayofTime.bloodmagic.api.incense.EnumTranquilityType;
import WayofTime.bloodmagic.api.incense.TranquilityHandler;
import WayofTime.bloodmagic.api.incense.TranquilityStack;
import net.minecraft.block.Block;
import net.minecraft.block.BlockLog;
import net.minecraft.block.state.IBlockState;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
public class TreeTranquilityHandler extends TranquilityHandler
{
@Override
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state)
{
if (block instanceof BlockLog)
{
return new TranquilityStack(EnumTranquilityType.TREE, 1);
}
return null;
}
}

View file

@ -1,30 +0,0 @@
package WayofTime.bloodmagic.incense;
import WayofTime.bloodmagic.api.incense.EnumTranquilityType;
import WayofTime.bloodmagic.api.incense.TranquilityHandler;
import WayofTime.bloodmagic.api.incense.TranquilityStack;
import WayofTime.bloodmagic.registry.ModBlocks;
import net.minecraft.block.Block;
import net.minecraft.block.state.IBlockState;
import net.minecraft.init.Blocks;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
public class WaterTranquilityHandler extends TranquilityHandler
{
@Override
public TranquilityStack getTranquilityOfBlock(World world, BlockPos pos, Block block, IBlockState state)
{
if (block == Blocks.water || block == Blocks.flowing_water)
{
return new TranquilityStack(EnumTranquilityType.WATER, 1);
}
if (block == ModBlocks.lifeEssence)
{
return new TranquilityStack(EnumTranquilityType.WATER, 1.5);
}
return null;
}
}

View file

@ -7,12 +7,12 @@ public class ModTranquilityHandlers
{ {
public static void init() public static void init()
{ {
IncenseTranquilityRegistry.registerTranquilityHandler(new PlantTranquilityHandler()); IncenseTranquilityRegistry.registerTranquilityHandler(new TranquilityHandlers.Plant());
IncenseTranquilityRegistry.registerTranquilityHandler(new CropTranquilityHandler()); IncenseTranquilityRegistry.registerTranquilityHandler(new TranquilityHandlers.Crop());
IncenseTranquilityRegistry.registerTranquilityHandler(new WaterTranquilityHandler()); IncenseTranquilityRegistry.registerTranquilityHandler(new TranquilityHandlers.Water());
IncenseTranquilityRegistry.registerTranquilityHandler(new EarthTranquilityHandler()); IncenseTranquilityRegistry.registerTranquilityHandler(new TranquilityHandlers.Earth());
IncenseTranquilityRegistry.registerTranquilityHandler(new FireTranquilityHandler()); IncenseTranquilityRegistry.registerTranquilityHandler(new TranquilityHandlers.Fire());
IncenseTranquilityRegistry.registerTranquilityHandler(new LavaTranquilityHandler()); IncenseTranquilityRegistry.registerTranquilityHandler(new TranquilityHandlers.Lava());
IncenseTranquilityRegistry.registerTranquilityHandler(new TreeTranquilityHandler()); IncenseTranquilityRegistry.registerTranquilityHandler(new TranquilityHandlers.Tree());
} }
} }