infinity-craft/src/main/java/anvil/infinity/items/ItemMindStone.java

46 lines
1.6 KiB
Java
Raw Normal View History

2019-05-08 20:20:27 +02:00
package anvil.infinity.items;
2019-05-14 18:30:44 +02:00
import anvil.infinity.abilities.AbilityChangeSnap;
2019-05-08 20:20:27 +02:00
import anvil.infinity.compat.CompatHandler;
2019-05-28 19:57:35 +02:00
import anvil.infinity.config.ConfigHandler;
2019-05-08 20:20:27 +02:00
import lucraft.mods.lucraftcore.infinity.EnumInfinityStone;
import lucraft.mods.lucraftcore.infinity.ModuleInfinity;
import lucraft.mods.lucraftcore.infinity.items.ItemInfinityStone;
import lucraft.mods.lucraftcore.superpowers.abilities.Ability;
import lucraft.mods.lucraftcore.superpowers.abilities.AbilityFlight;
import lucraft.mods.lucraftcore.util.helper.StringHelper;
import net.minecraft.entity.EntityLivingBase;
public class ItemMindStone extends ItemInfinityStone {
public ItemMindStone(String name) {
this.setTranslationKey(name);
this.setRegistryName(StringHelper.unlocalizedToResourceName(name));
this.setCreativeTab(ModuleInfinity.TAB);
}
@Override
public EnumInfinityStone getType() {
return EnumInfinityStone.MIND;
}
@Override
public boolean isContainer() {
return false;
}
@Override
public Ability.AbilityMap addStoneAbilities(EntityLivingBase entity, Ability.AbilityMap abilities, Ability.EnumAbilityContext context) {
abilities.put("flight", new AbilityFlight(entity).setDataValue(AbilityFlight.SPEED, 1f));
2019-05-14 18:30:44 +02:00
abilities.put("changesnap", new AbilityChangeSnap(entity));
2019-05-28 19:57:35 +02:00
if (CompatHandler.isHeroesExpansion && ConfigHandler.heAbilities) {
2019-05-08 20:20:27 +02:00
abilities.put("telekinesis", CompatHandler.HeroesExpension.getAbilityGrabEntity(entity));
}
return super.addStoneAbilities(entity, abilities, context);
}
}