Changed most of the BlockString blocks to a BlockEnum in order to solve a loading issue with schematics.

This commit is contained in:
WayofTime 2016-10-15 22:02:16 -04:00
parent 3e0f3f5aa1
commit 5cb5ec4264
59 changed files with 727 additions and 843 deletions

View file

@ -1,28 +1,28 @@
package WayofTime.bloodmagic.block;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockString;
import WayofTime.bloodmagic.client.IVariantProvider;
import WayofTime.bloodmagic.util.helper.TextHelper;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.commons.lang3.tuple.Pair;
import java.util.ArrayList;
import java.util.List;
public class BlockBloodRune extends BlockString implements IVariantProvider
{
public static final String[] names = { "blank", "speed", "efficiency", "sacrifice", "selfsacrifice", "displacement", "capacity", "augcapacity", "orb", "acceleration", "charging" };
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.commons.lang3.tuple.Pair;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockEnum;
import WayofTime.bloodmagic.block.enums.EnumBloodRune;
import WayofTime.bloodmagic.client.IVariantProvider;
import WayofTime.bloodmagic.util.helper.TextHelper;
public class BlockBloodRune extends BlockEnum<EnumBloodRune> implements IVariantProvider
{
public BlockBloodRune()
{
super(Material.ROCK, names);
super(Material.ROCK, EnumBloodRune.class);
setUnlocalizedName(Constants.Mod.MODID + ".rune.");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -48,8 +48,8 @@ public class BlockBloodRune extends BlockString implements IVariantProvider
public List<Pair<Integer, String>> getVariants()
{
List<Pair<Integer, String>> ret = new ArrayList<Pair<Integer, String>>();
for (int i = 0; i < names.length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + names[i]));
for (int i = 0; i < this.getTypes().length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + this.getTypes()[i]));
return ret;
}
}

View file

@ -1,25 +1,25 @@
package WayofTime.bloodmagic.block;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockString;
import WayofTime.bloodmagic.client.IVariantProvider;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.commons.lang3.tuple.Pair;
import java.util.ArrayList;
import java.util.List;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockEnum;
import WayofTime.bloodmagic.block.enums.EnumBrickSize;
import WayofTime.bloodmagic.client.IVariantProvider;
public class BlockBloodStoneBrick extends BlockString implements IVariantProvider
public class BlockBloodStoneBrick extends BlockEnum<EnumBrickSize> implements IVariantProvider
{
public static final String[] names = { "large", "brick" };
public BlockBloodStoneBrick()
{
super(Material.ROCK, names);
super(Material.ROCK, EnumBrickSize.class);
setUnlocalizedName(Constants.Mod.MODID + ".bloodstonebrick.");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -33,8 +33,8 @@ public class BlockBloodStoneBrick extends BlockString implements IVariantProvide
public List<Pair<Integer, String>> getVariants()
{
List<Pair<Integer, String>> ret = new ArrayList<Pair<Integer, String>>();
for (int i = 0; i < names.length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + names[i]));
for (int i = 0; i < this.getTypes().length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + this.getTypes()[i]));
return ret;
}
}

View file

@ -1,25 +1,25 @@
package WayofTime.bloodmagic.block;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockString;
import WayofTime.bloodmagic.client.IVariantProvider;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.commons.lang3.tuple.Pair;
import java.util.ArrayList;
import java.util.List;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockEnum;
import WayofTime.bloodmagic.block.enums.EnumBrickSize;
import WayofTime.bloodmagic.client.IVariantProvider;
public class BlockCrystal extends BlockString implements IVariantProvider
public class BlockCrystal extends BlockEnum<EnumBrickSize> implements IVariantProvider
{
public static final String[] names = { "large", "brick" };
public BlockCrystal()
{
super(Material.ROCK, names);
super(Material.ROCK, EnumBrickSize.class);
setUnlocalizedName(Constants.Mod.MODID + ".crystal.");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -33,8 +33,8 @@ public class BlockCrystal extends BlockString implements IVariantProvider
public List<Pair<Integer, String>> getVariants()
{
List<Pair<Integer, String>> ret = new ArrayList<Pair<Integer, String>>();
for (int i = 0; i < names.length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + names[i]));
for (int i = 0; i < this.getTypes().length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + this.getTypes()[i]));
return ret;
}
}

View file

@ -5,23 +5,21 @@ import java.util.List;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import net.minecraft.util.IStringSerializable;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.commons.lang3.tuple.Pair;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockString;
import WayofTime.bloodmagic.block.base.BlockEnum;
import WayofTime.bloodmagic.client.IVariantProvider;
public class BlockDemonBase extends BlockString implements IVariantProvider
public class BlockDemonBase<E extends Enum<E> & IStringSerializable> extends BlockEnum<E> implements IVariantProvider
{
public final String[] names;
public BlockDemonBase(String baseName, String[] names)
public BlockDemonBase(String baseName, Class<E> enumClass)
{
super(Material.ROCK, names);
this.names = names;
super(Material.ROCK, enumClass);
setUnlocalizedName(Constants.Mod.MODID + "." + baseName + ".");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -35,8 +33,8 @@ public class BlockDemonBase extends BlockString implements IVariantProvider
public List<Pair<Integer, String>> getVariants()
{
List<Pair<Integer, String>> ret = new ArrayList<Pair<Integer, String>>();
for (int i = 0; i < names.length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + names[i]));
for (int i = 0; i < this.getTypes().length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + this.getTypes()[i]));
return ret;
}
}

View file

@ -1,25 +1,25 @@
package WayofTime.bloodmagic.block;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockString;
import WayofTime.bloodmagic.client.IVariantProvider;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.commons.lang3.tuple.Pair;
import java.util.ArrayList;
import java.util.List;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockEnum;
import WayofTime.bloodmagic.block.enums.EnumSubWillType;
import WayofTime.bloodmagic.client.IVariantProvider;
public class BlockDemonLight extends BlockString implements IVariantProvider
public class BlockDemonLight extends BlockEnum<EnumSubWillType> implements IVariantProvider
{
public static final String[] names = { "raw", "corrosive", "destructive", "vengeful", "steadfast" };
public BlockDemonLight()
{
super(Material.ROCK, names);
super(Material.ROCK, EnumSubWillType.class);
setUnlocalizedName(Constants.Mod.MODID + ".demonlight.");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -34,8 +34,8 @@ public class BlockDemonLight extends BlockString implements IVariantProvider
public List<Pair<Integer, String>> getVariants()
{
List<Pair<Integer, String>> ret = new ArrayList<Pair<Integer, String>>();
for (int i = 0; i < names.length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + names[i]));
for (int i = 0; i < this.getTypes().length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + this.getTypes()[i]));
return ret;
}
}

View file

@ -6,23 +6,21 @@ import java.util.List;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.IStringSerializable;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.commons.lang3.tuple.Pair;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockStringPillar;
import WayofTime.bloodmagic.block.base.BlockEnumPillar;
import WayofTime.bloodmagic.client.IVariantProvider;
public class BlockDemonPillarBase extends BlockStringPillar implements IVariantProvider
public class BlockDemonPillarBase<E extends Enum<E> & IStringSerializable> extends BlockEnumPillar<E> implements IVariantProvider
{
public final String[] names;
public BlockDemonPillarBase(String baseName, Material materialIn, String[] names)
public BlockDemonPillarBase(String baseName, Material materialIn, Class<E> enumClass)
{
super(materialIn, names);
this.names = names;
super(materialIn, enumClass);
setUnlocalizedName(Constants.Mod.MODID + "." + baseName + ".");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -42,9 +40,9 @@ public class BlockDemonPillarBase extends BlockStringPillar implements IVariantP
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < names.length; j++)
for (int j = 0; j < this.getTypes().length; j++)
{
ret.add(new ImmutablePair<Integer, String>(i * 5 + j, "axis=" + axis[i] + ",type=" + names[j]));
ret.add(new ImmutablePair<Integer, String>(i * 5 + j, "axis=" + axis[i] + ",type=" + this.getTypes()[j]));
}
}

View file

@ -6,23 +6,21 @@ import java.util.List;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.IStringSerializable;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.commons.lang3.tuple.Pair;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockStringPillarCap;
import WayofTime.bloodmagic.block.base.BlockEnumPillarCap;
import WayofTime.bloodmagic.client.IVariantProvider;
public class BlockDemonPillarCapBase extends BlockStringPillarCap implements IVariantProvider
public class BlockDemonPillarCapBase<E extends Enum<E> & IStringSerializable> extends BlockEnumPillarCap<E> implements IVariantProvider
{
public final String[] names;
public BlockDemonPillarCapBase(String baseName, Material materialIn, String[] names)
public BlockDemonPillarCapBase(String baseName, Material materialIn, Class<E> enumClass)
{
super(materialIn, names);
this.names = names;
super(materialIn, enumClass);
setUnlocalizedName(Constants.Mod.MODID + "." + baseName + ".");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -41,9 +39,9 @@ public class BlockDemonPillarCapBase extends BlockStringPillarCap implements IVa
for (int i = 0; i < EnumFacing.values().length; i++)
{
for (int j = 0; j < names.length; j++)
for (int j = 0; j < this.getTypes().length; j++)
{
ret.add(new ImmutablePair<Integer, String>(i * 2 + j, "facing=" + EnumFacing.values()[i] + ",type=" + names[j]));
ret.add(new ImmutablePair<Integer, String>(i * 2 + j, "facing=" + EnumFacing.values()[i] + ",type=" + this.getTypes()[j]));
}
}

View file

@ -5,23 +5,21 @@ import java.util.List;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import net.minecraft.util.IStringSerializable;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.commons.lang3.tuple.Pair;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockStringStairs;
import WayofTime.bloodmagic.block.base.BlockEnumStairs;
import WayofTime.bloodmagic.client.IVariantProvider;
public class BlockDemonStairsBase extends BlockStringStairs implements IVariantProvider
public class BlockDemonStairsBase<E extends Enum<E> & IStringSerializable> extends BlockEnumStairs<E> implements IVariantProvider
{
public final String[] names;
public BlockDemonStairsBase(String baseName, Material materialIn, String[] names)
public BlockDemonStairsBase(String baseName, Material materialIn, Class<E> enumClass)
{
super(materialIn, names);
this.names = names;
super(materialIn, enumClass);
setUnlocalizedName(Constants.Mod.MODID + "." + baseName + ".");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -36,9 +34,9 @@ public class BlockDemonStairsBase extends BlockStringStairs implements IVariantP
{
List<Pair<Integer, String>> ret = new ArrayList<Pair<Integer, String>>();
for (int i = 0; i < names.length; i++)
for (int i = 0; i < this.getTypes().length; i++)
{
ret.add(new ImmutablePair<Integer, String>(i, "facing=south,half=bottom,shape=straight,type=" + names[i]));
ret.add(new ImmutablePair<Integer, String>(i, "facing=south,half=bottom,shape=straight,type=" + this.getTypes()[i]));
}
return ret;

View file

@ -5,22 +5,20 @@ import java.util.List;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import net.minecraft.util.IStringSerializable;
import org.apache.commons.lang3.tuple.Pair;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockStringWall;
import WayofTime.bloodmagic.block.base.BlockEnumWall;
import WayofTime.bloodmagic.client.IVariantProvider;
public class BlockDemonWallBase extends BlockStringWall implements IVariantProvider
public class BlockDemonWallBase<E extends Enum<E> & IStringSerializable> extends BlockEnumWall<E> implements IVariantProvider
{
public final String[] names;
public BlockDemonWallBase(String baseName, Material materialIn, String[] names)
public BlockDemonWallBase(String baseName, Material materialIn, Class<E> enumClass)
{
super(materialIn, names);
this.names = names;
super(materialIn, enumClass);
setUnlocalizedName(Constants.Mod.MODID + "." + baseName + ".");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -35,8 +33,8 @@ public class BlockDemonWallBase extends BlockStringWall implements IVariantProvi
{
List<Pair<Integer, String>> ret = new ArrayList<Pair<Integer, String>>();
for (int i = 0; i < names.length; i++)
ret.add(Pair.of(i, "east=true,north=false,south=false,type=" + names[i] + ",up=true,west=true"));
for (int i = 0; i < this.getTypes().length; i++)
ret.add(Pair.of(i, "east=true,north=false,south=false,type=" + this.getTypes()[i] + ",up=true,west=true"));
return ret;
}

View file

@ -5,7 +5,6 @@ import java.util.List;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import net.minecraft.block.properties.IProperty;
import net.minecraft.block.state.BlockStateContainer;
import net.minecraft.block.state.IBlockState;
import net.minecraft.tileentity.TileEntity;
@ -13,8 +12,6 @@ import net.minecraft.util.EnumBlockRenderType;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.common.property.ExtendedBlockState;
import net.minecraftforge.common.property.IUnlistedProperty;
import net.minecraftforge.common.property.Properties;
import org.apache.commons.lang3.tuple.ImmutablePair;
@ -23,17 +20,16 @@ import org.apache.commons.lang3.tuple.Pair;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.soul.EnumDemonWillType;
import WayofTime.bloodmagic.block.base.BlockStringContainer;
import WayofTime.bloodmagic.block.base.BlockEnumContainer;
import WayofTime.bloodmagic.block.enums.EnumSubWillType;
import WayofTime.bloodmagic.client.IVariantProvider;
import WayofTime.bloodmagic.tile.TileInversionPillar;
public class BlockInversionPillar extends BlockStringContainer implements IVariantProvider
public class BlockInversionPillar extends BlockEnumContainer<EnumSubWillType> implements IVariantProvider
{
public static final String[] names = { "raw", "corrosive", "destructive", "vengeful", "steadfast" };
public BlockInversionPillar()
{
super(Material.ROCK, names);
super(Material.ROCK, EnumSubWillType.class);
setUnlocalizedName(Constants.Mod.MODID + ".inversionpillar.");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -96,8 +92,8 @@ public class BlockInversionPillar extends BlockStringContainer implements IVaria
public List<Pair<Integer, String>> getVariants()
{
List<Pair<Integer, String>> ret = new ArrayList<Pair<Integer, String>>();
for (int i = 0; i < names.length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "static=false,type=" + names[i]));
for (int i = 0; i < this.getTypes().length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + this.getTypes()[i]));
return ret;
}
@ -107,7 +103,8 @@ public class BlockInversionPillar extends BlockStringContainer implements IVaria
return new TileInversionPillar(EnumDemonWillType.values()[meta % 5]);
}
protected BlockStateContainer createStateContainer() {
protected BlockStateContainer createStateContainer()
{
return new BlockStateContainer.Builder(this).add(getProperty(), Properties.StaticProperty).add(Properties.AnimationProperty).build();
}
}

View file

@ -15,16 +15,15 @@ import org.apache.commons.lang3.tuple.Pair;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockString;
import WayofTime.bloodmagic.block.base.BlockEnum;
import WayofTime.bloodmagic.block.enums.EnumInversionCap;
import WayofTime.bloodmagic.client.IVariantProvider;
public class BlockInversionPillarEnd extends BlockString implements IVariantProvider
public class BlockInversionPillarEnd extends BlockEnum<EnumInversionCap> implements IVariantProvider
{
public static final String[] names = { "raw_bottom", "raw_top", "corrosive_bottom", "corrosive_top", "destructive_bottom", "destructive_top", "vengeful_bottom", "vengeful_top", "steadfast_bottom", "steadfast_top" };
public BlockInversionPillarEnd()
{
super(Material.ROCK, names);
super(Material.ROCK, EnumInversionCap.class);
setUnlocalizedName(Constants.Mod.MODID + ".inversionpillarend.");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -68,8 +67,8 @@ public class BlockInversionPillarEnd extends BlockString implements IVariantProv
public List<Pair<Integer, String>> getVariants()
{
List<Pair<Integer, String>> ret = new ArrayList<Pair<Integer, String>>();
for (int i = 0; i < names.length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + names[i]));
for (int i = 0; i < this.getTypes().length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + this.getTypes()[i]));
return ret;
}
}

View file

@ -5,9 +5,6 @@ import java.util.List;
import javax.annotation.Nullable;
import WayofTime.bloodmagic.api.altar.EnumAltarComponent;
import WayofTime.bloodmagic.api.altar.IAltarComponent;
import WayofTime.bloodmagic.util.Utils;
import net.minecraft.block.Block;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
@ -32,19 +29,22 @@ import org.apache.commons.lang3.tuple.Pair;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.block.base.BlockStringContainer;
import WayofTime.bloodmagic.api.altar.EnumAltarComponent;
import WayofTime.bloodmagic.api.altar.IAltarComponent;
import WayofTime.bloodmagic.block.base.BlockEnumContainer;
import WayofTime.bloodmagic.block.enums.EnumMimic;
import WayofTime.bloodmagic.client.IVariantProvider;
import WayofTime.bloodmagic.registry.ModBlocks;
import WayofTime.bloodmagic.tile.TileMimic;
import WayofTime.bloodmagic.util.Utils;
public class BlockMimic extends BlockStringContainer implements IVariantProvider, IAltarComponent
public class BlockMimic extends BlockEnumContainer<EnumMimic> implements IVariantProvider, IAltarComponent
{
public static final int sentientMimicMeta = 4;
public static final String[] names = { "nohitbox", "solidopaque", "solidclear", "solidlight", "sentient" };
public BlockMimic()
{
super(Material.ROCK, names);
super(Material.ROCK, EnumMimic.class);
setUnlocalizedName(Constants.Mod.MODID + ".mimic.");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -231,8 +231,8 @@ public class BlockMimic extends BlockStringContainer implements IVariantProvider
public List<Pair<Integer, String>> getVariants()
{
List<Pair<Integer, String>> ret = new ArrayList<Pair<Integer, String>>();
for (int i = 0; i < names.length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + names[i]));
for (int i = 0; i < this.getTypes().length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + this.getTypes()[i]));
return ret;
}
@ -246,7 +246,8 @@ public class BlockMimic extends BlockStringContainer implements IVariantProvider
@Nullable
@Override
public EnumAltarComponent getType(World world, IBlockState state, BlockPos pos) {
public EnumAltarComponent getType(World world, IBlockState state, BlockPos pos)
{
TileEntity tile = world.getTileEntity(pos);
if (tile instanceof TileMimic)
{
@ -258,10 +259,11 @@ public class BlockMimic extends BlockStringContainer implements IVariantProvider
if (block instanceof IAltarComponent)
{
return ((IAltarComponent) block).getType(world, block.getStateFromMeta(mimic.metaOfReplacedBlock), pos);
} else {
} else
{
for (EnumAltarComponent altarComponent : EnumAltarComponent.values())
if (block == Utils.getBlockForComponent(altarComponent))
return altarComponent;
if (block == Utils.getBlockForComponent(altarComponent))
return altarComponent;
}
}
}

View file

@ -3,7 +3,6 @@ package WayofTime.bloodmagic.block;
import java.util.ArrayList;
import java.util.List;
import WayofTime.bloodmagic.util.helper.TextHelper;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState;
@ -18,16 +17,17 @@ import org.apache.commons.lang3.tuple.Pair;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.incense.IIncensePath;
import WayofTime.bloodmagic.block.base.BlockString;
import WayofTime.bloodmagic.block.base.BlockEnum;
import WayofTime.bloodmagic.block.enums.EnumPath;
import WayofTime.bloodmagic.client.IVariantProvider;
import WayofTime.bloodmagic.util.helper.TextHelper;
public class BlockPath extends BlockString implements IIncensePath, IVariantProvider
public class BlockPath extends BlockEnum<EnumPath> implements IIncensePath, IVariantProvider
{
public static final String[] names = { "wood", "woodtile", "stone", "stonetile", "wornstone", "wornstonetile", "obsidian", "obsidiantile" };
public BlockPath()
{
super(Material.ROCK, names);
super(Material.ROCK, EnumPath.class);
setUnlocalizedName(Constants.Mod.MODID + ".path.");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -78,8 +78,8 @@ public class BlockPath extends BlockString implements IIncensePath, IVariantProv
public List<Pair<Integer, String>> getVariants()
{
List<Pair<Integer, String>> ret = new ArrayList<Pair<Integer, String>>();
for (int i = 0; i < names.length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + names[i]));
for (int i = 0; i < this.getTypes().length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + this.getTypes()[i]));
return ret;
}
}

View file

@ -3,8 +3,8 @@ package WayofTime.bloodmagic.block;
import java.util.ArrayList;
import java.util.List;
import WayofTime.bloodmagic.api.ritual.imperfect.ImperfectRitual;
import amerifrance.guideapi.api.IGuideLinked;
import javax.annotation.Nullable;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState;
@ -28,24 +28,23 @@ import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.registry.ImperfectRitualRegistry;
import WayofTime.bloodmagic.api.registry.RitualRegistry;
import WayofTime.bloodmagic.api.ritual.Ritual;
import WayofTime.bloodmagic.api.ritual.imperfect.ImperfectRitual;
import WayofTime.bloodmagic.api.util.helper.RitualHelper;
import WayofTime.bloodmagic.block.base.BlockStringContainer;
import WayofTime.bloodmagic.block.base.BlockEnumContainer;
import WayofTime.bloodmagic.block.enums.EnumRitualController;
import WayofTime.bloodmagic.client.IVariantProvider;
import WayofTime.bloodmagic.registry.ModItems;
import WayofTime.bloodmagic.tile.TileImperfectRitualStone;
import WayofTime.bloodmagic.tile.TileMasterRitualStone;
import WayofTime.bloodmagic.util.ChatUtil;
import javax.annotation.Nullable;
import amerifrance.guideapi.api.IGuideLinked;
@Optional.Interface(modid = "guideapi", iface = "amerifrance.guideapi.api.IGuideLinked")
public class BlockRitualController extends BlockStringContainer implements IVariantProvider, IGuideLinked
public class BlockRitualController extends BlockEnumContainer<EnumRitualController> implements IVariantProvider, IGuideLinked
{
public static final String[] names = { "master", "imperfect" };
public BlockRitualController()
{
super(Material.ROCK, names);
super(Material.ROCK, EnumRitualController.class);
setUnlocalizedName(Constants.Mod.MODID + ".stone.ritual.");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -121,8 +120,8 @@ public class BlockRitualController extends BlockStringContainer implements IVari
public List<Pair<Integer, String>> getVariants()
{
List<Pair<Integer, String>> ret = new ArrayList<Pair<Integer, String>>();
for (int i = 0; i < names.length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + names[i]));
for (int i = 0; i < this.getTypes().length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + this.getTypes()[i]));
return ret;
}
@ -133,14 +132,14 @@ public class BlockRitualController extends BlockStringContainer implements IVari
public ResourceLocation getLinkedEntry(World world, BlockPos pos, EntityPlayer player, ItemStack stack)
{
IBlockState state = world.getBlockState(pos);
if (state.getValue(getProperty()).equals(names[0]))
if (state.getValue(getProperty()).equals(EnumRitualController.MASTER))
{
TileMasterRitualStone mrs = (TileMasterRitualStone) world.getTileEntity(pos);
if (mrs == null || mrs.getCurrentRitual() == null)
return null;
else
return new ResourceLocation("bloodmagic", "ritual_" + mrs.getCurrentRitual().getName());
} else if (state.getValue(getProperty()).equals(names[1]))
} else if (state.getValue(getProperty()).equals(EnumRitualController.IMPERFECT))
{
ImperfectRitual imperfectRitual = ImperfectRitualRegistry.getRitualForBlock(BlockStack.getStackFromPos(world, pos.up()));
if (imperfectRitual != null)

View file

@ -3,7 +3,6 @@ package WayofTime.bloodmagic.block;
import java.util.ArrayList;
import java.util.List;
import WayofTime.bloodmagic.util.helper.TextHelper;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState;
@ -19,17 +18,16 @@ import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.api.ritual.EnumRuneType;
import WayofTime.bloodmagic.api.ritual.IRitualStone;
import WayofTime.bloodmagic.block.base.BlockString;
import WayofTime.bloodmagic.block.base.BlockEnum;
import WayofTime.bloodmagic.client.IVariantProvider;
import WayofTime.bloodmagic.registry.ModBlocks;
import WayofTime.bloodmagic.util.helper.TextHelper;
public class BlockRitualStone extends BlockString implements IRitualStone, IVariantProvider
public class BlockRitualStone extends BlockEnum<EnumRuneType> implements IRitualStone, IVariantProvider
{
public static final String[] names = { "blank", "water", "fire", "earth", "air", "dusk", "dawn" };
public BlockRitualStone()
{
super(Material.IRON, names);
super(Material.IRON, EnumRuneType.class);
setUnlocalizedName(Constants.Mod.MODID + ".ritualStone.");
setCreativeTab(BloodMagic.tabBloodMagic);
@ -61,7 +59,7 @@ public class BlockRitualStone extends BlockString implements IRitualStone, IVari
@Override
public boolean isRuneType(World world, BlockPos pos, EnumRuneType runeType)
{
return runeType.toString().equals(names[getMetaFromState(world.getBlockState(pos))]);
return runeType == this.getTypes()[getMetaFromState(world.getBlockState(pos))];
}
@Override
@ -76,8 +74,8 @@ public class BlockRitualStone extends BlockString implements IRitualStone, IVari
public List<Pair<Integer, String>> getVariants()
{
List<Pair<Integer, String>> ret = new ArrayList<Pair<Integer, String>>();
for (int i = 0; i < names.length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + names[i]));
for (int i = 0; i < this.getTypes().length; i++)
ret.add(new ImmutablePair<Integer, String>(i, "type=" + this.getTypes()[i]));
return ret;
}
}

View file

@ -16,13 +16,14 @@ import net.minecraftforge.fml.relauncher.SideOnly;
import java.util.List;
@Getter
public class BlockEnum<E extends Enum<E> & IStringSerializable> extends Block {
public class BlockEnum<E extends Enum<E> & IStringSerializable> extends Block
{
private final E[] types;
private final PropertyEnum<E> property;
private final BlockStateContainer realStateContainer;
public BlockEnum(Material material, Class<E> enumClass, String propName) {
public BlockEnum(Material material, Class<E> enumClass, String propName)
{
super(material);
this.types = enumClass.getEnumConstants();
@ -31,43 +32,51 @@ public class BlockEnum<E extends Enum<E> & IStringSerializable> extends Block {
setDefaultState(getBlockState().getBaseState());
}
public BlockEnum(Material material, Class<E> enumClass) {
public BlockEnum(Material material, Class<E> enumClass)
{
this(material, enumClass, "type");
}
@Override
protected final BlockStateContainer createBlockState() {
protected final BlockStateContainer createBlockState()
{
return new BlockStateContainer.Builder(this).build(); // Blank to avoid crashes
}
@Override
public final BlockStateContainer getBlockState() {
public final BlockStateContainer getBlockState()
{
return realStateContainer;
}
@Override
public IBlockState getStateFromMeta(int meta) {
public IBlockState getStateFromMeta(int meta)
{
return getDefaultState().withProperty(property, types[meta]);
}
@Override
public int getMetaFromState(IBlockState state) {
public int getMetaFromState(IBlockState state)
{
return state.getValue(property).ordinal();
}
@Override
public int damageDropped(IBlockState state) {
public int damageDropped(IBlockState state)
{
return getMetaFromState(state);
}
@SideOnly(Side.CLIENT)
@Override
public void getSubBlocks(Item item, CreativeTabs tab, List<ItemStack> subBlocks) {
public void getSubBlocks(Item item, CreativeTabs tab, List<ItemStack> subBlocks)
{
for (E type : types)
subBlocks.add(new ItemStack(item, 1, type.ordinal()));
}
protected BlockStateContainer createStateContainer() {
protected BlockStateContainer createStateContainer()
{
return new BlockStateContainer.Builder(this).add(property).build();
}
}

View file

@ -0,0 +1,39 @@
package WayofTime.bloodmagic.block.base;
import net.minecraft.block.ITileEntityProvider;
import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.IStringSerializable;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
public abstract class BlockEnumContainer<E extends Enum<E> & IStringSerializable> extends BlockEnum<E> implements ITileEntityProvider
{
public BlockEnumContainer(Material material, Class<E> enumClass, String propName)
{
super(material, enumClass, propName);
this.isBlockContainer = true;
}
public BlockEnumContainer(Material material, Class<E> enumClass)
{
this(material, enumClass, "type");
}
@Override
public void breakBlock(World worldIn, BlockPos pos, IBlockState state)
{
super.breakBlock(worldIn, pos, state);
worldIn.removeTileEntity(pos);
}
@Override
public boolean eventReceived(IBlockState state, World worldIn, BlockPos pos, int eventID, int eventParam)
{
super.eventReceived(state, worldIn, pos, eventID, eventParam);
TileEntity tileentity = worldIn.getTileEntity(pos);
return tileentity != null && tileentity.receiveClientEvent(eventID, eventParam);
}
}

View file

@ -9,26 +9,29 @@ import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.IStringSerializable;
import net.minecraft.util.Rotation;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.RayTraceResult;
import net.minecraft.world.World;
import org.apache.commons.lang3.ArrayUtils;
public class BlockStringPillar extends BlockString
public class BlockEnumPillar<E extends Enum<E> & IStringSerializable> extends BlockEnum<E>
{
public BlockStringPillar(Material material, String[] values, String propName)
public BlockEnumPillar(Material material, Class<E> enumClass, String propName)
{
super(material, values, propName);
super(material, enumClass, propName);
}
public BlockStringPillar(Material material, String[] values)
public BlockEnumPillar(Material material, Class<E> enumClass)
{
this(material, values, "type");
this(material, enumClass, "type");
}
@Override
protected BlockStateContainer createStateContainer() {
protected BlockStateContainer createStateContainer()
{
return new BlockStateContainer.Builder(this).add(getProperty(), BlockRotatedPillar.AXIS).build();
}

View file

@ -8,29 +8,32 @@ import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.IStringSerializable;
import net.minecraft.util.Mirror;
import net.minecraft.util.Rotation;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.RayTraceResult;
import net.minecraft.world.World;
import org.apache.commons.lang3.ArrayUtils;
public class BlockStringPillarCap extends BlockString
public class BlockEnumPillarCap<E extends Enum<E> & IStringSerializable> extends BlockEnum<E>
{
public static final PropertyDirection FACING = PropertyDirection.create("facing");
public BlockStringPillarCap(Material material, String[] values, String propName)
public BlockEnumPillarCap(Material material, Class<E> enumClass, String propName)
{
super(material, values, propName);
super(material, enumClass, propName);
}
public BlockStringPillarCap(Material material, String[] values)
public BlockEnumPillarCap(Material material, Class<E> enumClass)
{
this(material, values, "type");
this(material, enumClass, "type");
}
@Override
protected BlockStateContainer createStateContainer() {
protected BlockStateContainer createStateContainer()
{
return new BlockStateContainer.Builder(this).add(getProperty(), FACING).build();
}

View file

@ -4,7 +4,6 @@ import java.util.List;
import javax.annotation.Nullable;
import WayofTime.bloodmagic.BloodMagic;
import net.minecraft.block.BlockHorizontal;
import net.minecraft.block.BlockStairs;
import net.minecraft.block.BlockStairs.EnumHalf;
@ -18,6 +17,7 @@ import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.IStringSerializable;
import net.minecraft.util.Mirror;
import net.minecraft.util.Rotation;
import net.minecraft.util.math.AxisAlignedBB;
@ -27,10 +27,13 @@ import net.minecraft.util.math.Vec3d;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import com.google.common.collect.Lists;
import org.apache.commons.lang3.ArrayUtils;
public class BlockStringStairs extends BlockString
import WayofTime.bloodmagic.BloodMagic;
import com.google.common.collect.Lists;
public class BlockEnumStairs<E extends Enum<E> & IStringSerializable> extends BlockEnum<E>
{
public static final PropertyDirection FACING = BlockHorizontal.FACING;
@ -53,18 +56,19 @@ public class BlockStringStairs extends BlockString
protected static final AxisAlignedBB AABB_OCT_BOT_SW = new AxisAlignedBB(0.0D, 0.0D, 0.5D, 0.5D, 0.5D, 1.0D);
protected static final AxisAlignedBB AABB_OCT_BOT_SE = new AxisAlignedBB(0.5D, 0.0D, 0.5D, 1.0D, 0.5D, 1.0D);
public BlockStringStairs(Material material, String[] values, String propName)
public BlockEnumStairs(Material material, Class<E> enumClass, String propName)
{
super(material, values, propName);
super(material, enumClass, propName);
}
public BlockStringStairs(Material material, String[] values)
public BlockEnumStairs(Material material, Class<E> enumClass)
{
this(material, values, "type");
this(material, enumClass, "type");
}
@Override
protected BlockStateContainer createStateContainer() {
protected BlockStateContainer createStateContainer()
{
return new BlockStateContainer.Builder(this).add(getProperty(), FACING, BlockStairs.HALF, BlockStairs.SHAPE).build();
}
@ -282,7 +286,7 @@ public class BlockStringStairs extends BlockString
public static boolean isBlockStairs(IBlockState state)
{
return state.getBlock() instanceof BlockStairs || state.getBlock() instanceof BlockStringStairs;
return state.getBlock() instanceof BlockStairs || state.getBlock() instanceof BlockEnumStairs;
}
@Override

View file

@ -3,23 +3,21 @@ package WayofTime.bloodmagic.block.base;
import net.minecraft.block.Block;
import net.minecraft.block.BlockFenceGate;
import net.minecraft.block.material.Material;
import net.minecraft.block.properties.IProperty;
import net.minecraft.block.properties.PropertyBool;
import net.minecraft.block.state.BlockStateContainer;
import net.minecraft.block.state.IBlockState;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.IStringSerializable;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.common.property.ExtendedBlockState;
import net.minecraftforge.common.property.IUnlistedProperty;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
public class BlockStringWall extends BlockString
public class BlockEnumWall<E extends Enum<E> & IStringSerializable> extends BlockEnum<E>
{
public static final PropertyBool UP = PropertyBool.create("up");
public static final PropertyBool NORTH = PropertyBool.create("north");
@ -32,18 +30,19 @@ public class BlockStringWall extends BlockString
AABB_BY_INDEX[15].setMaxY(1.5D) };
// Most of this is copied from BlockWall - if there is an issue when porting, look there first.
public BlockStringWall(Material material, String[] values, String propName)
public BlockEnumWall(Material material, Class<E> enumClass, String propName)
{
super(material, values, propName);
super(material, enumClass, propName);
}
public BlockStringWall(Material material, String[] values)
public BlockEnumWall(Material material, Class<E> enumClass)
{
this(material, values, "type");
this(material, enumClass, "type");
}
@Override
protected BlockStateContainer createStateContainer() {
protected BlockStateContainer createStateContainer()
{
return new BlockStateContainer.Builder(this).add(getProperty(), UP, NORTH, EAST, SOUTH, WEST).build();
}

View file

@ -48,38 +48,48 @@ public class BlockString extends Block
}
@Override
protected final BlockStateContainer createBlockState() {
protected final BlockStateContainer createBlockState()
{
return new BlockStateContainer.Builder(this).build(); // Blank to avoid crashes
}
@Override
public final BlockStateContainer getBlockState() {
public final BlockStateContainer getBlockState()
{
return realStateContainer;
}
@Override
public IBlockState getStateFromMeta(int meta) {
public IBlockState getStateFromMeta(int meta)
{
return getDefaultState().withProperty(property, types[meta]);
}
@Override
public int getMetaFromState(IBlockState state) {
public int getMetaFromState(IBlockState state)
{
return ArrayUtils.indexOf(types, state.getValue(property));
}
@Override
public int damageDropped(IBlockState state) {
public int damageDropped(IBlockState state)
{
return getMetaFromState(state);
}
@SideOnly(Side.CLIENT)
@Override
public void getSubBlocks(Item item, CreativeTabs tab, List<ItemStack> subBlocks) {
public void getSubBlocks(Item item, CreativeTabs tab, List<ItemStack> subBlocks)
{
for (int i = 0; i < maxMeta; i++)
subBlocks.add(new ItemStack(item, 1, i));
}
protected BlockStateContainer createStateContainer() {
return new BlockStateContainer.Builder(this).add(property).build();
protected BlockStateContainer createStateContainer()
{
System.out.println("");
BlockStateContainer ctn = new BlockStateContainer.Builder(this).add(property).build();
System.out.println("Number of states: " + ctn.getValidStates().size());
return ctn;
}
}

View file

@ -0,0 +1,32 @@
package WayofTime.bloodmagic.block.enums;
import java.util.Locale;
import net.minecraft.util.IStringSerializable;
public enum EnumBloodRune implements IStringSerializable
{
BLANK,
SPEED,
EFFICIENCY,
SACRIFICE,
SELFSACRIFICE,
DISPLACEMENT,
CAPACITY,
AUGCAPACITY,
ORB,
ACCELERATION,
CHARGING;
@Override
public String toString()
{
return name().toLowerCase(Locale.ENGLISH);
}
@Override
public String getName()
{
return this.toString();
}
}

View file

@ -0,0 +1,23 @@
package WayofTime.bloodmagic.block.enums;
import java.util.Locale;
import net.minecraft.util.IStringSerializable;
public enum EnumBrickSize implements IStringSerializable
{
LARGE,
BRICK;
@Override
public String toString()
{
return name().toLowerCase(Locale.ENGLISH);
}
@Override
public String getName()
{
return this.toString();
}
}

View file

@ -0,0 +1,26 @@
package WayofTime.bloodmagic.block.enums;
import java.util.Locale;
import net.minecraft.util.IStringSerializable;
public enum EnumDemonBlock1 implements IStringSerializable
{
BRICK1_RAW,
BRICK1_CORROSIVE,
BRICK1_DESTRUCTIVE,
BRICK1_VENGEFUL,
BRICK1_STEADFAST;
@Override
public String toString()
{
return name().toLowerCase(Locale.ENGLISH);
}
@Override
public String getName()
{
return this.toString();
}
}

View file

@ -0,0 +1,36 @@
package WayofTime.bloodmagic.block.enums;
import java.util.Locale;
import net.minecraft.util.IStringSerializable;
public enum EnumDemonBlock2 implements IStringSerializable
{
SMALLBRICK_RAW,
SMALLBRICK_CORROSIVE,
SMALLBRICK_DESTRUCTIVE,
SMALLBRICK_VENGEFUL,
SMALLBRICK_STEADFAST,
TILE_RAW,
TILE_CORROSIVE,
TILE_DESTRUCTIVE,
TILE_VENGEFUL,
TILE_STEADFAST,
TILESPECIAL_RAW,
TILESPECIAL_CORROSIVE,
TILESPECIAL_DESTRUCTIVE,
TILESPECIAL_VENGEFUL,
TILESPECIAL_STEADFAST;
@Override
public String toString()
{
return name().toLowerCase(Locale.ENGLISH);
}
@Override
public String getName()
{
return this.toString();
}
}

View file

@ -0,0 +1,36 @@
package WayofTime.bloodmagic.block.enums;
import java.util.Locale;
import net.minecraft.util.IStringSerializable;
public enum EnumDemonBlock3 implements IStringSerializable
{
STONE_RAW,
STONE_CORROSIVE,
STONE_DESTRUCTIVE,
STONE_VENGEFUL,
STONE_STEADFAST,
POLISHED_RAW,
POLISHED_CORROSIVE,
POLISHED_DESTRUCTIVE,
POLISHED_VENGEFUL,
POLISHED_STEADFAST,
METAL_RAW,
METAL_CORROSIVE,
METAL_DESTRUCTIVE,
METAL_VENGEFUL,
METAL_STEADFAST;
@Override
public String toString()
{
return name().toLowerCase(Locale.ENGLISH);
}
@Override
public String getName()
{
return this.toString();
}
}

View file

@ -0,0 +1,31 @@
package WayofTime.bloodmagic.block.enums;
import java.util.Locale;
import net.minecraft.util.IStringSerializable;
public enum EnumInversionCap implements IStringSerializable
{
RAW_BOTTOM,
RAW_TOP,
CORROSIVE_BOTTOM,
CORROSIVE_TOP,
DESTRUCTIVE_BOTTOM,
DESTRUCTIVE_TOP,
VENGEFUL_BOTTOM,
VENGEFUL_TOP,
STEADFAST_BOTTOM,
STEADFAST_TOP;
@Override
public String toString()
{
return name().toLowerCase(Locale.ENGLISH);
}
@Override
public String getName()
{
return this.toString();
}
}

View file

@ -0,0 +1,26 @@
package WayofTime.bloodmagic.block.enums;
import java.util.Locale;
import net.minecraft.util.IStringSerializable;
public enum EnumMimic implements IStringSerializable
{
NOHITBOX,
SOLIDOPAQUE,
SOLIDCLEAR,
SOLIDLIGHT,
SENTIENT;
@Override
public String toString()
{
return name().toLowerCase(Locale.ENGLISH);
}
@Override
public String getName()
{
return this.toString();
}
}

View file

@ -0,0 +1,29 @@
package WayofTime.bloodmagic.block.enums;
import java.util.Locale;
import net.minecraft.util.IStringSerializable;
public enum EnumPath implements IStringSerializable
{
WOOD,
WOODTILE,
STONE,
STONETILE,
WORNSTONE,
WORNSTONETILE,
OBSIDIAN,
OBSIDIANTILE;
@Override
public String toString()
{
return name().toLowerCase(Locale.ENGLISH);
}
@Override
public String getName()
{
return this.toString();
}
}

View file

@ -0,0 +1,23 @@
package WayofTime.bloodmagic.block.enums;
import java.util.Locale;
import net.minecraft.util.IStringSerializable;
public enum EnumRitualController implements IStringSerializable
{
MASTER,
IMPERFECT;
@Override
public String toString()
{
return name().toLowerCase(Locale.ENGLISH);
}
@Override
public String getName()
{
return this.toString();
}
}

View file

@ -0,0 +1,26 @@
package WayofTime.bloodmagic.block.enums;
import java.util.Locale;
import net.minecraft.util.IStringSerializable;
public enum EnumSubWillType implements IStringSerializable
{
RAW,
CORROSIVE,
DESTRUCTIVE,
VENGEFUL,
STEADFAST;
@Override
public String toString()
{
return name().toLowerCase(Locale.ENGLISH);
}
@Override
public String getName()
{
return this.toString();
}
}

View file

@ -0,0 +1,23 @@
package WayofTime.bloodmagic.block.enums;
import java.util.Locale;
import net.minecraft.util.IStringSerializable;
public enum EnumSubWillType1 implements IStringSerializable
{
RAW,
CORROSIVE;
@Override
public String toString()
{
return name().toLowerCase(Locale.ENGLISH);
}
@Override
public String getName()
{
return this.toString();
}
}

View file

@ -0,0 +1,23 @@
package WayofTime.bloodmagic.block.enums;
import java.util.Locale;
import net.minecraft.util.IStringSerializable;
public enum EnumSubWillType2 implements IStringSerializable
{
DESTRUCTIVE,
VENGEFUL;
@Override
public String toString()
{
return name().toLowerCase(Locale.ENGLISH);
}
@Override
public String getName()
{
return this.toString();
}
}

View file

@ -0,0 +1,22 @@
package WayofTime.bloodmagic.block.enums;
import java.util.Locale;
import net.minecraft.util.IStringSerializable;
public enum EnumSubWillType3 implements IStringSerializable
{
STEADFAST;
@Override
public String toString()
{
return name().toLowerCase(Locale.ENGLISH);
}
@Override
public String getName()
{
return this.toString();
}
}

View file

@ -0,0 +1,36 @@
package WayofTime.bloodmagic.block.enums;
import java.util.Locale;
import net.minecraft.util.IStringSerializable;
public enum EnumWillWall implements IStringSerializable
{
BRICK_RAW,
BRICK_CORROSIVE,
BRICK_DESTRUCTIVE,
BRICK_VENGEFUL,
BRICK_STEADFAST,
SMALLBRICK_RAW,
SMALLBRICK_CORROSIVE,
SMALLBRICK_DESTRUCTIVE,
SMALLBRICK_VENGEFUL,
SMALLBRICK_STEADFAST,
LARGE_RAW,
LARGE_CORROSIVE,
LARGE_DESTRUCTIVE,
LARGE_VENGEFUL,
LARGE_STEADFAST;
@Override
public String toString()
{
return name().toLowerCase(Locale.ENGLISH);
}
@Override
public String getName()
{
return this.toString();
}
}