2014-06-27 23:43:09 +00:00
|
|
|
package WayofTime.alchemicalWizardry.common.tileEntity;
|
|
|
|
|
|
|
|
import WayofTime.alchemicalWizardry.common.spell.complex.SpellParadigm;
|
|
|
|
import WayofTime.alchemicalWizardry.common.spell.complex.enhancement.SpellEnhancement;
|
|
|
|
import WayofTime.alchemicalWizardry.common.spell.complex.enhancement.SpellEnhancementCost;
|
|
|
|
import WayofTime.alchemicalWizardry.common.spell.complex.enhancement.SpellEnhancementPotency;
|
|
|
|
import WayofTime.alchemicalWizardry.common.spell.complex.enhancement.SpellEnhancementPower;
|
|
|
|
|
2014-10-13 20:33:20 +00:00
|
|
|
public class TESpellEnhancementBlock extends TESpellBlock
|
2014-06-27 23:43:09 +00:00
|
|
|
{
|
2014-10-13 20:33:20 +00:00
|
|
|
@Override
|
|
|
|
protected void applySpellChange(SpellParadigm parad)
|
|
|
|
{
|
|
|
|
int i = -1;
|
2014-06-27 23:43:09 +00:00
|
|
|
|
2014-10-13 20:33:20 +00:00
|
|
|
switch (this.enhancementType())
|
|
|
|
{
|
|
|
|
case 0:
|
|
|
|
i = parad.getBufferedEffectPower();
|
|
|
|
break;
|
|
|
|
case 1:
|
|
|
|
i = parad.getBufferedEffectCost();
|
|
|
|
break;
|
|
|
|
case 2:
|
|
|
|
i = parad.getBufferedEffectPotency();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
|
|
if (i != -1 && i < this.getLimit())
|
|
|
|
{
|
|
|
|
parad.applyEnhancement(getSpellEnhancement());
|
|
|
|
} else if (i < this.getLimit())
|
|
|
|
{
|
|
|
|
this.doBadStuff();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public SpellEnhancement getSpellEnhancement()
|
|
|
|
{
|
|
|
|
int meta = worldObj.getBlockMetadata(xCoord, yCoord, zCoord);
|
|
|
|
switch (meta)
|
|
|
|
{
|
|
|
|
case 0:
|
|
|
|
case 1:
|
|
|
|
case 2:
|
|
|
|
case 3:
|
|
|
|
case 4:
|
|
|
|
return new SpellEnhancementPower();
|
|
|
|
case 5:
|
|
|
|
case 6:
|
|
|
|
case 7:
|
|
|
|
case 8:
|
|
|
|
case 9:
|
|
|
|
return new SpellEnhancementCost();
|
|
|
|
case 10:
|
|
|
|
case 11:
|
|
|
|
case 12:
|
|
|
|
case 13:
|
|
|
|
case 14:
|
|
|
|
return new SpellEnhancementPotency();
|
|
|
|
}
|
|
|
|
return new SpellEnhancementCost();
|
|
|
|
}
|
|
|
|
|
|
|
|
public int getLimit()
|
|
|
|
{
|
|
|
|
int meta = worldObj.getBlockMetadata(xCoord, yCoord, zCoord);
|
|
|
|
switch (meta)
|
|
|
|
{
|
|
|
|
case 0:
|
|
|
|
return 1;
|
|
|
|
case 1:
|
|
|
|
return 2;
|
|
|
|
case 2:
|
|
|
|
return 3;
|
|
|
|
case 3:
|
|
|
|
return 4;
|
|
|
|
case 4:
|
|
|
|
return 5;
|
|
|
|
case 5:
|
|
|
|
return 1;
|
|
|
|
case 6:
|
|
|
|
return 2;
|
|
|
|
case 7:
|
|
|
|
return 3;
|
|
|
|
case 8:
|
|
|
|
return 4;
|
|
|
|
case 9:
|
|
|
|
return 5;
|
|
|
|
case 10:
|
|
|
|
return 1;
|
|
|
|
case 11:
|
|
|
|
return 2;
|
|
|
|
case 12:
|
|
|
|
return 3;
|
|
|
|
case 13:
|
|
|
|
return 4;
|
|
|
|
case 14:
|
|
|
|
return 5;
|
|
|
|
}
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
public int enhancementType() //0 is power, 1 is cost, 2 is potency
|
|
|
|
{
|
|
|
|
int meta = worldObj.getBlockMetadata(xCoord, yCoord, zCoord);
|
|
|
|
switch (meta)
|
|
|
|
{
|
|
|
|
case 0:
|
|
|
|
case 1:
|
|
|
|
case 2:
|
|
|
|
case 3:
|
|
|
|
case 4:
|
|
|
|
return 0;
|
|
|
|
case 5:
|
|
|
|
case 6:
|
|
|
|
case 7:
|
|
|
|
case 8:
|
|
|
|
case 9:
|
|
|
|
return 1;
|
|
|
|
case 10:
|
|
|
|
case 11:
|
|
|
|
case 12:
|
|
|
|
case 13:
|
|
|
|
case 14:
|
|
|
|
return 2;
|
|
|
|
}
|
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
public void doBadStuff()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public String getResourceLocationForMeta(int meta)
|
|
|
|
{
|
|
|
|
switch (meta)
|
|
|
|
{
|
|
|
|
case 0:
|
|
|
|
return "alchemicalwizardry:textures/models/SpellEnhancementPower1.png";
|
|
|
|
case 1:
|
|
|
|
return "alchemicalwizardry:textures/models/SpellEnhancementPower2.png";
|
|
|
|
case 2:
|
|
|
|
return "alchemicalwizardry:textures/models/SpellEnhancementPower3.png";
|
|
|
|
case 5:
|
|
|
|
return "alchemicalwizardry:textures/models/SpellEnhancementCost1.png";
|
|
|
|
case 6:
|
|
|
|
return "alchemicalwizardry:textures/models/SpellEnhancementCost2.png";
|
|
|
|
case 7:
|
|
|
|
return "alchemicalwizardry:textures/models/SpellEnhancementCost3.png";
|
|
|
|
case 10:
|
|
|
|
return "alchemicalwizardry:textures/models/SpellEnhancementPotency1.png";
|
|
|
|
case 11:
|
|
|
|
return "alchemicalwizardry:textures/models/SpellEnhancementPotency2.png";
|
|
|
|
case 12:
|
|
|
|
return "alchemicalwizardry:textures/models/SpellEnhancementPotency3.png";
|
|
|
|
|
|
|
|
}
|
|
|
|
return "alchemicalwizardry:textures/models/SpellEnhancementPower1.png";
|
|
|
|
}
|
2014-06-27 23:43:09 +00:00
|
|
|
}
|