diff options
Diffstat (limited to 'src/main/java/com/thatgravyboat/skyblockhud/handlers/sbentities')
3 files changed, 55 insertions, 37 deletions
diff --git a/src/main/java/com/thatgravyboat/skyblockhud/handlers/sbentities/EntityTypeHelper.java b/src/main/java/com/thatgravyboat/skyblockhud/handlers/sbentities/EntityTypeHelper.java index afff109..158222c 100644 --- a/src/main/java/com/thatgravyboat/skyblockhud/handlers/sbentities/EntityTypeHelper.java +++ b/src/main/java/com/thatgravyboat/skyblockhud/handlers/sbentities/EntityTypeHelper.java @@ -8,14 +8,28 @@ import net.minecraft.init.Blocks; public class EntityTypeHelper { - public static boolean isZealot(Entity entity) { - if (entity instanceof EntityEnderman) { - EntityEnderman enderman = ((EntityEnderman) entity); - double maxHealthBase = enderman.getAttributeMap().getAttributeInstanceByName("generic.maxHealth").getBaseValue(); - if (maxHealthBase == 13000d || (maxHealthBase == 2000d && enderman.getHeldBlockState().getBlock().equals(Blocks.end_portal_frame))) { - return LocationHandler.getCurrentLocation().equals(Locations.DRAGONSNEST); - } - } - return false; + public static boolean isZealot(Entity entity) { + if (entity instanceof EntityEnderman) { + EntityEnderman enderman = ((EntityEnderman) entity); + double maxHealthBase = enderman + .getAttributeMap() + .getAttributeInstanceByName("generic.maxHealth") + .getBaseValue(); + if ( + maxHealthBase == 13000d || + ( + maxHealthBase == 2000d && + enderman + .getHeldBlockState() + .getBlock() + .equals(Blocks.end_portal_frame) + ) + ) { + return LocationHandler + .getCurrentLocation() + .equals(Locations.DRAGONSNEST); + } } + return false; + } } diff --git a/src/main/java/com/thatgravyboat/skyblockhud/handlers/sbentities/EntityTypeRegistry.java b/src/main/java/com/thatgravyboat/skyblockhud/handlers/sbentities/EntityTypeRegistry.java index d45fa1f..254f61e 100644 --- a/src/main/java/com/thatgravyboat/skyblockhud/handlers/sbentities/EntityTypeRegistry.java +++ b/src/main/java/com/thatgravyboat/skyblockhud/handlers/sbentities/EntityTypeRegistry.java @@ -2,24 +2,27 @@ package com.thatgravyboat.skyblockhud.handlers.sbentities; import com.google.common.collect.ImmutableList; import com.google.common.collect.Maps; -import net.minecraft.entity.Entity; -import net.minecraft.entity.monster.EntityEnderman; - import java.util.List; import java.util.Map; +import net.minecraft.entity.Entity; +import net.minecraft.entity.monster.EntityEnderman; public class EntityTypeRegistry { - private static final Map<Class<? extends Entity>, List<SkyBlockEntity>> entities = Maps.newHashMap(); - - static { - entities.put(EntityEnderman.class, ImmutableList.of(SkyBlockEntity.of("zealot", EntityTypeHelper::isZealot))); - } + private static final Map<Class<? extends Entity>, List<SkyBlockEntity>> entities = Maps.newHashMap(); - public static String getEntityId(Entity entity){ - if (!entities.containsKey(entity.getClass())) return null; - for (SkyBlockEntity skyBlockEntity : entities.get(entity.getClass())) if (skyBlockEntity.isEntity(entity)) return skyBlockEntity.getName(); - return null; - } + static { + entities.put( + EntityEnderman.class, + ImmutableList.of(SkyBlockEntity.of("zealot", EntityTypeHelper::isZealot)) + ); + } + public static String getEntityId(Entity entity) { + if (!entities.containsKey(entity.getClass())) return null; + for (SkyBlockEntity skyBlockEntity : entities.get(entity.getClass())) if ( + skyBlockEntity.isEntity(entity) + ) return skyBlockEntity.getName(); + return null; + } } diff --git a/src/main/java/com/thatgravyboat/skyblockhud/handlers/sbentities/SkyBlockEntity.java b/src/main/java/com/thatgravyboat/skyblockhud/handlers/sbentities/SkyBlockEntity.java index ca10b53..23a56e5 100644 --- a/src/main/java/com/thatgravyboat/skyblockhud/handlers/sbentities/SkyBlockEntity.java +++ b/src/main/java/com/thatgravyboat/skyblockhud/handlers/sbentities/SkyBlockEntity.java @@ -1,26 +1,27 @@ package com.thatgravyboat.skyblockhud.handlers.sbentities; -import net.minecraft.entity.Entity; - import java.util.function.Predicate; +import net.minecraft.entity.Entity; public class SkyBlockEntity { - private final String name; - private final Predicate<Entity> predicate; + private final String name; + private final Predicate<Entity> predicate; - public static SkyBlockEntity of(String name, Predicate<Entity> predicate){ - return new SkyBlockEntity(name, predicate); - } + public static SkyBlockEntity of(String name, Predicate<Entity> predicate) { + return new SkyBlockEntity(name, predicate); + } - private SkyBlockEntity(String name, Predicate<Entity> predicate){ - this.name = name; - this.predicate = predicate; - } + private SkyBlockEntity(String name, Predicate<Entity> predicate) { + this.name = name; + this.predicate = predicate; + } - public String getName(){ return name; } + public String getName() { + return name; + } - public boolean isEntity(Entity entity) { - return predicate.test(entity); - } + public boolean isEntity(Entity entity) { + return predicate.test(entity); + } } |