Improved stone detection system
This commit is contained in:
parent
1d43d7a041
commit
0f586391e8
|
@ -18,6 +18,7 @@ plugins {
|
|||
}
|
||||
|
||||
apply plugin: "net.minecraftforge.gradle.forge"
|
||||
apply plugin: 'idea'
|
||||
|
||||
|
||||
def getVersionName = { ->
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
modGroup=anvil
|
||||
modBaseName=infinity
|
||||
forgeVersion=1.12.2-14.23.5.2814
|
||||
forgeVersion=1.12.2-14.23.5.2816
|
||||
mcpVersion=stable_39
|
||||
core_version=d406868225
|
||||
projectID=285509
|
|
@ -1,10 +0,0 @@
|
|||
package anvil.infinity.abilities;
|
||||
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
|
||||
public class AbilityHasMindStone extends AbilityHasStone {
|
||||
|
||||
public AbilityHasMindStone(EntityLivingBase entity) {
|
||||
super(entity);
|
||||
}
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
package anvil.infinity.abilities;
|
||||
|
||||
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
|
||||
public class AbilityHasPowerStone extends AbilityHasStone {
|
||||
|
||||
public AbilityHasPowerStone(EntityLivingBase entity) {
|
||||
super(entity);
|
||||
}
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
package anvil.infinity.abilities;
|
||||
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
|
||||
public class AbilityHasRealityStone extends AbilityHasStone {
|
||||
|
||||
public AbilityHasRealityStone(EntityLivingBase entity) {
|
||||
super(entity);
|
||||
}
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
package anvil.infinity.abilities;
|
||||
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
|
||||
public class AbilityHasSoulStone extends AbilityHasStone {
|
||||
|
||||
public AbilityHasSoulStone(EntityLivingBase entity) {
|
||||
super(entity);
|
||||
}
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
package anvil.infinity.abilities;
|
||||
|
||||
import lucraft.mods.lucraftcore.superpowers.abilities.AbilityConstant;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
|
||||
public class AbilityHasStone extends AbilityConstant {
|
||||
|
||||
public AbilityHasStone(EntityLivingBase entity) {
|
||||
super(entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateTick() {
|
||||
|
||||
}
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
package anvil.infinity.abilities;
|
||||
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
|
||||
public class AbilityHasTimeStone extends AbilityHasStone {
|
||||
|
||||
public AbilityHasTimeStone(EntityLivingBase entity) {
|
||||
super(entity);
|
||||
}
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
package anvil.infinity.abilities;
|
||||
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
|
||||
public class AbilityhasSpaceStone extends AbilityHasStone {
|
||||
|
||||
public AbilityhasSpaceStone(EntityLivingBase entity) {
|
||||
super(entity);
|
||||
}
|
||||
}
|
|
@ -13,8 +13,4 @@ public class HELoadedProxy implements HEProxy {
|
|||
return new AbilityGrabEntity(entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSpaceStone(EntityLivingBase entity) {
|
||||
return Ability.hasAbility(entity, AbilityPortal.class);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,8 +11,4 @@ public class HENotLoadedProxy implements HEProxy {
|
|||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSpaceStone(EntityLivingBase entity) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,6 +7,4 @@ public interface HEProxy {
|
|||
|
||||
Ability getAbilityGrabEntity(EntityLivingBase entity);
|
||||
|
||||
boolean hasSpaceStone(EntityLivingBase entity);
|
||||
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package anvil.infinity.compat;
|
||||
|
||||
import anvil.infinity.abilities.AbilityHasRealityStone;
|
||||
import lucraft.mods.lucraftcore.superpowers.abilities.Ability;
|
||||
import lucraft.mods.speedsterheroes.abilities.AbilityChangeBlocks;
|
||||
import lucraft.mods.speedsterheroes.abilities.AbilitySaveBlock;
|
||||
|
@ -24,9 +23,4 @@ public class SHLoadedProxy implements SHProxy {
|
|||
return new AbilityTurnIntoBubbles(entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasRealityStone(EntityLivingBase entity) {
|
||||
return Ability.hasAbility(entity, AbilityHasRealityStone.class) || Ability.hasAbility(entity, AbilitySaveBlock.class);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package anvil.infinity.compat;
|
||||
|
||||
import anvil.infinity.abilities.AbilityHasRealityStone;
|
||||
import lucraft.mods.lucraftcore.superpowers.abilities.Ability;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
|
||||
|
@ -21,9 +20,4 @@ public class SHNotLoadedProxy implements SHProxy {
|
|||
return null;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public boolean hasRealityStone(EntityLivingBase entity) {
|
||||
return Ability.hasAbility(entity, AbilityHasRealityStone.class);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,6 +11,4 @@ public interface SHProxy {
|
|||
|
||||
Ability getAbilityTurnIntoBubbles(EntityLivingBase entity);
|
||||
|
||||
boolean hasRealityStone(EntityLivingBase entity);
|
||||
|
||||
}
|
||||
|
|
|
@ -1,37 +1,34 @@
|
|||
package anvil.infinity.helpers;
|
||||
|
||||
import anvil.infinity.abilities.*;
|
||||
import anvil.infinity.compat.CompatHandler;
|
||||
import lucraft.mods.lucraftcore.infinity.EnumInfinityStone;
|
||||
import lucraft.mods.lucraftcore.infinity.items.ItemInfinityStone;
|
||||
import lucraft.mods.lucraftcore.superpowers.abilities.Ability;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
|
||||
public class GauntelHelper {
|
||||
|
||||
public static boolean hasPowerStone(EntityLivingBase entity) {
|
||||
return Ability.hasAbility(entity, AbilityHasPowerStone.class);
|
||||
return ItemInfinityStone.hasStone(entity, Ability.EnumAbilityContext.MAIN_HAND, EnumInfinityStone.POWER) || ItemInfinityStone.hasStone(entity, Ability.EnumAbilityContext.OFF_HAND, EnumInfinityStone.POWER);
|
||||
}
|
||||
|
||||
public static boolean hasSpaceStone(EntityLivingBase entity) {
|
||||
return CompatHandler.HeroesExpension.hasSpaceStone(entity);
|
||||
return ItemInfinityStone.hasStone(entity, Ability.EnumAbilityContext.MAIN_HAND, EnumInfinityStone.SPACE) || ItemInfinityStone.hasStone(entity, Ability.EnumAbilityContext.OFF_HAND, EnumInfinityStone.SPACE);
|
||||
}
|
||||
|
||||
public static boolean hasRealityStone(EntityLivingBase entity) {
|
||||
if (CompatHandler.isSpeedsterHeroes) {
|
||||
return CompatHandler.SpeedsterHeroes.hasRealityStone(entity);
|
||||
}
|
||||
return Ability.hasAbility(entity, AbilityHasRealityStone.class);
|
||||
return ItemInfinityStone.hasStone(entity, Ability.EnumAbilityContext.MAIN_HAND, EnumInfinityStone.REALITY) || ItemInfinityStone.hasStone(entity, Ability.EnumAbilityContext.OFF_HAND, EnumInfinityStone.REALITY);
|
||||
}
|
||||
|
||||
public static boolean hasSoulStone(EntityLivingBase entity) {
|
||||
return Ability.hasAbility(entity, AbilityHasSoulStone.class);
|
||||
return ItemInfinityStone.hasStone(entity, Ability.EnumAbilityContext.MAIN_HAND, EnumInfinityStone.SOUL) || ItemInfinityStone.hasStone(entity, Ability.EnumAbilityContext.OFF_HAND, EnumInfinityStone.SOUL);
|
||||
}
|
||||
|
||||
public static boolean hasTimeStone(EntityLivingBase entity) {
|
||||
return Ability.hasAbility(entity, AbilityHasTimeStone.class);
|
||||
return ItemInfinityStone.hasStone(entity, Ability.EnumAbilityContext.MAIN_HAND, EnumInfinityStone.TIME) || ItemInfinityStone.hasStone(entity, Ability.EnumAbilityContext.OFF_HAND, EnumInfinityStone.TIME);
|
||||
}
|
||||
|
||||
public static boolean hasMindStone(EntityLivingBase entity) {
|
||||
return Ability.hasAbility(entity, AbilityHasMindStone.class);
|
||||
return ItemInfinityStone.hasStone(entity, Ability.EnumAbilityContext.MAIN_HAND, EnumInfinityStone.MIND) || ItemInfinityStone.hasStone(entity, Ability.EnumAbilityContext.OFF_HAND, EnumInfinityStone.MIND);
|
||||
}
|
||||
|
||||
public static boolean hasFullGauntlet(EntityLivingBase entity) {
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
package anvil.infinity.items;
|
||||
|
||||
import anvil.infinity.abilities.AbilityChangeSnap;
|
||||
import anvil.infinity.abilities.AbilityHasMindStone;
|
||||
import anvil.infinity.compat.CompatHandler;
|
||||
import anvil.infinity.config.ConfigHandler;
|
||||
import lucraft.mods.lucraftcore.infinity.EnumInfinityStone;
|
||||
|
@ -36,7 +35,6 @@ public class ItemMindStone extends ItemInfinityStone {
|
|||
@Override
|
||||
public Ability.AbilityMap addStoneAbilities(EntityLivingBase entity, Ability.AbilityMap abilities, Ability.EnumAbilityContext context) {
|
||||
abilities.put("flight", new AbilityFlight(entity).setDataValue(AbilityFlight.SPEED, 1f));
|
||||
abilities.put("mind", new AbilityHasMindStone(entity));
|
||||
abilities.put("changesnap", new AbilityChangeSnap(entity));
|
||||
if (CompatHandler.isHeroesExpansion && ConfigHandler.heAbilities) {
|
||||
abilities.put("telekinesis", CompatHandler.HeroesExpension.getAbilityGrabEntity(entity));
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package anvil.infinity.items;
|
||||
|
||||
import anvil.infinity.abilities.AbilityHasPowerStone;
|
||||
import anvil.infinity.abilities.AbilitySaturation;
|
||||
import anvil.infinity.compat.CompatHandler;
|
||||
import anvil.infinity.config.ConfigHandler;
|
||||
|
@ -37,7 +36,6 @@ public class ItemPowerStone extends ItemInfinityStone implements IAbilityProvide
|
|||
|
||||
@Override
|
||||
public Ability.AbilityMap addStoneAbilities(EntityLivingBase entity, Ability.AbilityMap abilities, Ability.EnumAbilityContext context) {
|
||||
abilities.put("power", new AbilityHasPowerStone(entity));
|
||||
abilities.put("blast", new AbilityEnergyBlast(entity).setDataValue(AbilityEnergyBlast.DAMAGE, Float.MAX_VALUE).setDataValue(AbilityEnergyBlast.COLOR, Color.MAGENTA));
|
||||
abilities.put("strength", new AbilityStrength(entity).setDataValue(AbilityAttributeModifier.AMOUNT, Float.MAX_VALUE));
|
||||
abilities.put("damage", new AbilityPunch(entity).setDataValue(AbilityPunch.AMOUNT, Float.MAX_VALUE));
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package anvil.infinity.items;
|
||||
|
||||
import anvil.infinity.abilities.AbilityHasRealityStone;
|
||||
import anvil.infinity.compat.CompatHandler;
|
||||
import anvil.infinity.config.ConfigHandler;
|
||||
import lucraft.mods.lucraftcore.infinity.EnumInfinityStone;
|
||||
|
@ -38,7 +37,6 @@ public class ItemRealityStone extends ItemInfinityStone {
|
|||
abilities.put("size", new AbilitySizeChange(entity).setDataValue(AbilitySizeChange.SIZE, ConfigHandler.size));
|
||||
}
|
||||
abilities.put("invisibility", new AbilityInvisibility(entity));
|
||||
abilities.put("reality", new AbilityHasRealityStone(entity));
|
||||
if (CompatHandler.isSpeedsterHeroes && ConfigHandler.useSHRealityAbilities) {
|
||||
abilities.put("save_block", CompatHandler.SpeedsterHeroes.getAbilitySaveBlock(entity));
|
||||
abilities.put("change_block", CompatHandler.SpeedsterHeroes.getAbilityChangeBlock(entity));
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package anvil.infinity.items;
|
||||
|
||||
import anvil.infinity.abilities.AbilityHasSoulStone;
|
||||
import anvil.infinity.abilities.AbilityKill;
|
||||
import anvil.infinity.abilities.AbilitySnap;
|
||||
import anvil.infinity.conditions.ICondition;
|
||||
|
@ -49,7 +48,6 @@ public class ItemSoulStone extends ItemInfinityStone {
|
|||
abilities.put("immortality", new AbilityHealth(entity).setDataValue(AbilityAttributeModifier.AMOUNT, Float.MAX_VALUE));
|
||||
}
|
||||
abilities.put("healing", new AbilityHealing(entity).setDataValue(AbilityHealing.FREQUENCY, 1));
|
||||
abilities.put("soul", new AbilityHasSoulStone(entity));
|
||||
abilities.put("kill", new AbilityKill(entity, killCond));
|
||||
abilities.put("snap", new AbilitySnap(entity));
|
||||
return super.addStoneAbilities(entity, abilities, context);
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
package anvil.infinity.items;
|
||||
|
||||
import anvil.infinity.abilities.AbilityFastForward;
|
||||
import anvil.infinity.abilities.AbilityHasTimeStone;
|
||||
import anvil.infinity.abilities.AbilityStopTime;
|
||||
import lucraft.mods.lucraftcore.infinity.EnumInfinityStone;
|
||||
import lucraft.mods.lucraftcore.infinity.ModuleInfinity;
|
||||
|
@ -32,7 +31,6 @@ public class ItemTimeStone extends ItemInfinityStone {
|
|||
|
||||
@Override
|
||||
public Ability.AbilityMap addStoneAbilities(EntityLivingBase entity, Ability.AbilityMap abilities, Ability.EnumAbilityContext context) {
|
||||
abilities.put("time", new AbilityHasTimeStone(entity));
|
||||
abilities.put("fast_forward", new AbilityFastForward(entity));
|
||||
abilities.put("stop_time", new AbilityStopTime(entity));
|
||||
return super.addStoneAbilities(entity, abilities, context);
|
||||
|
|
|
@ -14,13 +14,6 @@ public class Abilities {
|
|||
@SubscribeEvent
|
||||
public static void onRegisterAbilities(RegistryEvent.Register<AbilityEntry> e) {
|
||||
e.getRegistry().register(new AbilityEntry(AbilitySnap.class, new ResourceLocation(Infinity.MOD_ID, "snap")));
|
||||
e.getRegistry().register(new AbilityEntry(AbilityHasStone.class, new ResourceLocation(Infinity.MOD_ID, "stone")));
|
||||
e.getRegistry().register(new AbilityEntry(AbilityHasPowerStone.class, new ResourceLocation(Infinity.MOD_ID, "power")));
|
||||
e.getRegistry().register(new AbilityEntry(AbilityhasSpaceStone.class, new ResourceLocation(Infinity.MOD_ID, "space")));
|
||||
e.getRegistry().register(new AbilityEntry(AbilityHasRealityStone.class, new ResourceLocation(Infinity.MOD_ID, "reality")));
|
||||
e.getRegistry().register(new AbilityEntry(AbilityHasSoulStone.class, new ResourceLocation(Infinity.MOD_ID, "soul")));
|
||||
e.getRegistry().register(new AbilityEntry(AbilityHasTimeStone.class, new ResourceLocation(Infinity.MOD_ID, "time")));
|
||||
e.getRegistry().register(new AbilityEntry(AbilityHasMindStone.class, new ResourceLocation(Infinity.MOD_ID, "mind")));
|
||||
e.getRegistry().register(new AbilityEntry(AbilityKill.class, new ResourceLocation(Infinity.MOD_ID, "kill")));
|
||||
e.getRegistry().register(new AbilityEntry(AbilityChangeSnap.class, new ResourceLocation(Infinity.MOD_ID, "changesnap")));
|
||||
e.getRegistry().register(new AbilityEntry(AbilitySaturation.class, new ResourceLocation(Infinity.MOD_ID, "saturation")));
|
||||
|
|
Loading…
Reference in New Issue