2014-11-13 08:42:49 -05:00
|
|
|
package WayofTime.alchemicalWizardry.api.spell;
|
2014-06-27 19:43:09 -04:00
|
|
|
|
2014-11-13 09:24:29 -05:00
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.List;
|
|
|
|
|
2014-10-13 22:33:20 +02:00
|
|
|
import net.minecraft.entity.player.EntityPlayer;
|
|
|
|
import net.minecraft.item.ItemStack;
|
|
|
|
import net.minecraft.world.World;
|
2014-11-13 09:24:29 -05:00
|
|
|
import WayofTime.alchemicalWizardry.api.soulNetwork.SoulNetworkHandler;
|
2014-06-27 19:43:09 -04:00
|
|
|
|
2014-10-13 22:33:20 +02:00
|
|
|
public class SpellParadigmMelee extends SpellParadigm
|
2014-06-27 19:43:09 -04:00
|
|
|
{
|
2014-10-13 22:33:20 +02:00
|
|
|
private List<IMeleeSpellEntityEffect> entityEffectList;
|
|
|
|
private List<IMeleeSpellWorldEffect> worldEffectList;
|
|
|
|
|
|
|
|
public SpellParadigmMelee()
|
|
|
|
{
|
2015-07-31 12:09:09 -04:00
|
|
|
this.entityEffectList = new ArrayList();
|
|
|
|
this.worldEffectList = new ArrayList();
|
2014-10-13 22:33:20 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2015-07-31 12:09:09 -04:00
|
|
|
public void enhanceParadigm(SpellEnhancement enh)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
2014-10-13 22:33:20 +02:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public void castSpell(World world, EntityPlayer entityPlayer, ItemStack itemStack)
|
|
|
|
{
|
2014-11-07 13:45:02 -05:00
|
|
|
int cost = this.getTotalCost();
|
|
|
|
|
2014-11-13 09:24:29 -05:00
|
|
|
if(!SoulNetworkHandler.syphonAndDamageFromNetwork(itemStack, entityPlayer, cost))
|
2014-11-07 13:45:02 -05:00
|
|
|
{
|
|
|
|
return;
|
|
|
|
}
|
2014-11-12 17:14:43 -05:00
|
|
|
|
2014-10-13 22:33:20 +02:00
|
|
|
for (IMeleeSpellEntityEffect effect : entityEffectList)
|
|
|
|
{
|
|
|
|
effect.onEntityImpact(world, entityPlayer);
|
|
|
|
}
|
|
|
|
|
|
|
|
for (IMeleeSpellWorldEffect effect : worldEffectList)
|
|
|
|
{
|
|
|
|
effect.onWorldEffect(world, entityPlayer);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public void addEntityEffect(IMeleeSpellEntityEffect eff)
|
|
|
|
{
|
|
|
|
if (eff != null)
|
|
|
|
{
|
|
|
|
this.entityEffectList.add(eff);
|
|
|
|
}
|
|
|
|
}
|
2014-06-27 19:43:09 -04:00
|
|
|
|
2014-10-13 22:33:20 +02:00
|
|
|
public void addWorldEffect(IMeleeSpellWorldEffect eff)
|
|
|
|
{
|
|
|
|
if (eff != null)
|
|
|
|
{
|
|
|
|
this.worldEffectList.add(eff);
|
|
|
|
}
|
|
|
|
}
|
2014-06-27 19:43:09 -04:00
|
|
|
|
2014-10-13 22:33:20 +02:00
|
|
|
@Override
|
|
|
|
public int getDefaultCost()
|
|
|
|
{
|
|
|
|
return 0;
|
|
|
|
}
|
2014-06-27 19:43:09 -04:00
|
|
|
}
|