Testing the creation of hell
This commit is contained in:
parent
796e75b1f9
commit
a2b006105e
2587 changed files with 0 additions and 129617 deletions
|
@ -1,161 +0,0 @@
|
|||
package WayofTime.alchemicalWizardry.common.spell.complex;
|
||||
|
||||
import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellEffect;
|
||||
import WayofTime.alchemicalWizardry.common.spell.complex.enhancement.SpellEnhancement;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
public abstract class SpellParadigm
|
||||
{
|
||||
protected List<SpellEffect> bufferedEffectList = new LinkedList();
|
||||
public List<String> effectList = new LinkedList();
|
||||
|
||||
public void addBufferedEffect(SpellEffect effect)
|
||||
{
|
||||
if (effect != null)
|
||||
{
|
||||
this.bufferedEffectList.add(effect);
|
||||
|
||||
effectList.add(effect.getClass().getName());
|
||||
}
|
||||
}
|
||||
|
||||
public void modifyBufferedEffect(SpellModifier modifier)
|
||||
{
|
||||
SpellEffect effect = this.getBufferedEffect();
|
||||
if (effect != null)
|
||||
{
|
||||
effect.modifyEffect(modifier);
|
||||
|
||||
effectList.add(modifier.getClass().getName());
|
||||
}
|
||||
}
|
||||
|
||||
public void applyEnhancement(SpellEnhancement enh)
|
||||
{
|
||||
if (enh != null)
|
||||
{
|
||||
if (bufferedEffectList.isEmpty())
|
||||
{
|
||||
this.enhanceParadigm(enh);
|
||||
} else
|
||||
{
|
||||
SpellEffect effect = this.getBufferedEffect();
|
||||
if (effect != null)
|
||||
{
|
||||
effect.enhanceEffect(enh);
|
||||
}
|
||||
}
|
||||
|
||||
effectList.add(enh.getClass().getName());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public abstract void enhanceParadigm(SpellEnhancement enh);
|
||||
|
||||
public abstract void castSpell(World world, EntityPlayer entityPlayer, ItemStack itemStack);
|
||||
|
||||
public void applySpellEffect(SpellEffect effect)
|
||||
{
|
||||
effect.modifyParadigm(this);
|
||||
}
|
||||
|
||||
public void applyAllSpellEffects()
|
||||
{
|
||||
for (SpellEffect effect : bufferedEffectList)
|
||||
{
|
||||
this.applySpellEffect(effect);
|
||||
}
|
||||
}
|
||||
|
||||
public SpellEffect getBufferedEffect()
|
||||
{
|
||||
if (bufferedEffectList.isEmpty())
|
||||
{
|
||||
return null;
|
||||
} else
|
||||
{
|
||||
return bufferedEffectList.get(bufferedEffectList.size() - 1);
|
||||
}
|
||||
}
|
||||
|
||||
public int getTotalCost()
|
||||
{
|
||||
int cost = 0;
|
||||
if (this.bufferedEffectList != null && !this.bufferedEffectList.isEmpty())
|
||||
{
|
||||
if (this instanceof SpellParadigmProjectile)
|
||||
{
|
||||
for (SpellEffect effect : bufferedEffectList)
|
||||
{
|
||||
cost += effect.getCostForProjectile();
|
||||
}
|
||||
} else if (this instanceof SpellParadigmSelf)
|
||||
{
|
||||
for (SpellEffect effect : bufferedEffectList)
|
||||
{
|
||||
cost += effect.getCostForSelf();
|
||||
}
|
||||
} else if (this instanceof SpellParadigmMelee)
|
||||
{
|
||||
for (SpellEffect effect : bufferedEffectList)
|
||||
{
|
||||
cost += effect.getCostForMelee();
|
||||
}
|
||||
} else if (this instanceof SpellParadigmTool)
|
||||
{
|
||||
for (SpellEffect effect : bufferedEffectList)
|
||||
{
|
||||
cost += effect.getCostForTool();
|
||||
}
|
||||
}
|
||||
|
||||
return (int) (cost * Math.sqrt(this.bufferedEffectList.size()));
|
||||
}
|
||||
|
||||
return getDefaultCost();
|
||||
}
|
||||
|
||||
public abstract int getDefaultCost();
|
||||
|
||||
public int getBufferedEffectPower()
|
||||
{
|
||||
SpellEffect eff = this.getBufferedEffect();
|
||||
|
||||
if (eff != null)
|
||||
{
|
||||
return eff.getPowerEnhancements();
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int getBufferedEffectCost()
|
||||
{
|
||||
SpellEffect eff = this.getBufferedEffect();
|
||||
|
||||
if (eff != null)
|
||||
{
|
||||
return eff.getCostEnhancements();
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int getBufferedEffectPotency()
|
||||
{
|
||||
SpellEffect eff = this.getBufferedEffect();
|
||||
|
||||
if (eff != null)
|
||||
{
|
||||
return eff.getPotencyEnhancements();
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue