BloodMagic/src/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TESpellParadigmBlock.java

82 lines
2.4 KiB
Java
Raw Normal View History

package WayofTime.alchemicalWizardry.common.tileEntity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
2015-07-29 08:23:01 -04:00
import net.minecraft.util.EnumFacing;
import net.minecraft.world.World;
import WayofTime.alchemicalWizardry.api.spell.SpellParadigm;
import WayofTime.alchemicalWizardry.api.spell.SpellParadigmMelee;
import WayofTime.alchemicalWizardry.api.spell.SpellParadigmProjectile;
import WayofTime.alchemicalWizardry.api.spell.SpellParadigmSelf;
import WayofTime.alchemicalWizardry.api.spell.SpellParadigmTool;
import WayofTime.alchemicalWizardry.api.tile.ISpellParadigmTile;
public class TESpellParadigmBlock extends TESpellBlock implements ISpellParadigmTile
{
2014-10-13 22:33:20 +02:00
public SpellParadigm getSpellParadigm()
{
2015-07-29 08:23:01 -04:00
int meta = this.getBlockMetadata();
2014-10-13 22:33:20 +02:00
switch (meta)
{
case 0:
return new SpellParadigmProjectile();
case 1:
return new SpellParadigmSelf();
case 2:
return new SpellParadigmMelee();
case 3:
return new SpellParadigmTool();
}
return new SpellParadigmSelf();
}
@Override
protected void applySpellChange(SpellParadigm parad)
{
2014-10-13 22:33:20 +02:00
}
public boolean canInputRecieve()
{
return false;
}
@Override
2014-10-13 22:33:20 +02:00
public void castSpell(World world, EntityPlayer entity, ItemStack spellCasterStack)
{
2014-10-13 22:33:20 +02:00
SpellParadigm parad = this.getSpellParadigm();
this.modifySpellParadigm(parad);
parad.applyAllSpellEffects();
parad.castSpell(world, entity, spellCasterStack);
}
2014-10-13 22:33:20 +02:00
@Override
public String getResourceLocationForMeta(int meta)
{
switch (meta)
{
case 0:
return "alchemicalwizardry:textures/models/SpellParadigmProjectile.png";
case 1:
return "alchemicalwizardry:textures/models/SpellParadigmSelf.png";
case 2:
return "alchemicalwizardry:textures/models/SpellParadigmMelee.png";
case 3:
return "alchemicalwizardry:textures/models/SpellParadigmTool.png";
}
return "alchemicalwizardry:textures/models/SpellParadigmProjectile.png";
}
@Override
2015-07-29 08:23:01 -04:00
public void setInputDirection(EnumFacing direction)
{
}
2014-10-13 22:33:20 +02:00
@Override
2015-07-29 08:23:01 -04:00
public EnumFacing getInputDirection()
2014-10-13 22:33:20 +02:00
{
2015-07-29 08:23:01 -04:00
return EnumFacing.WEST;
2014-10-13 22:33:20 +02:00
}
}