mirror of
https://github.com/Wurst-Imperium/Wurst7.git
synced 2024-09-20 01:12:13 +02:00
Add end crystal filter to ClickAuraHack
This commit is contained in:
parent
f219ee3e73
commit
7bb1e75138
@ -14,8 +14,10 @@ import java.util.stream.StreamSupport;
|
|||||||
|
|
||||||
import net.minecraft.client.network.ClientPlayerEntity;
|
import net.minecraft.client.network.ClientPlayerEntity;
|
||||||
import net.minecraft.client.world.ClientWorld;
|
import net.minecraft.client.world.ClientWorld;
|
||||||
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.LivingEntity;
|
import net.minecraft.entity.LivingEntity;
|
||||||
import net.minecraft.entity.decoration.ArmorStandEntity;
|
import net.minecraft.entity.decoration.ArmorStandEntity;
|
||||||
|
import net.minecraft.entity.decoration.EndCrystalEntity;
|
||||||
import net.minecraft.entity.mob.AmbientEntity;
|
import net.minecraft.entity.mob.AmbientEntity;
|
||||||
import net.minecraft.entity.mob.EndermanEntity;
|
import net.minecraft.entity.mob.EndermanEntity;
|
||||||
import net.minecraft.entity.mob.Monster;
|
import net.minecraft.entity.mob.Monster;
|
||||||
@ -96,8 +98,11 @@ public final class ClickAuraHack extends Hack
|
|||||||
|
|
||||||
private final CheckboxSetting filterInvisible = new CheckboxSetting(
|
private final CheckboxSetting filterInvisible = new CheckboxSetting(
|
||||||
"Filter invisible", "Won't attack invisible entities.", false);
|
"Filter invisible", "Won't attack invisible entities.", false);
|
||||||
|
|
||||||
private final CheckboxSetting filterStands = new CheckboxSetting(
|
private final CheckboxSetting filterStands = new CheckboxSetting(
|
||||||
"Filter armor stands", "Won't attack armor stands.", false);
|
"Filter armor stands", "Won't attack armor stands.", false);
|
||||||
|
private final CheckboxSetting filterCrystals = new CheckboxSetting(
|
||||||
|
"Filter end crytsals", "Won't attack end crystals.", false);
|
||||||
|
|
||||||
public ClickAuraHack()
|
public ClickAuraHack()
|
||||||
{
|
{
|
||||||
@ -123,6 +128,7 @@ public final class ClickAuraHack extends Hack
|
|||||||
addSetting(filterGolems);
|
addSetting(filterGolems);
|
||||||
addSetting(filterInvisible);
|
addSetting(filterInvisible);
|
||||||
addSetting(filterStands);
|
addSetting(filterStands);
|
||||||
|
addSetting(filterCrystals);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -176,14 +182,16 @@ public final class ClickAuraHack extends Hack
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
double rangeSq = Math.pow(range.getValue(), 2);
|
double rangeSq = Math.pow(range.getValue(), 2);
|
||||||
Stream<LivingEntity> stream = StreamSupport
|
Stream<Entity> stream =
|
||||||
.stream(MC.world.getEntities().spliterator(), true)
|
StreamSupport.stream(MC.world.getEntities().spliterator(), true)
|
||||||
.filter(e -> e instanceof LivingEntity).map(e -> (LivingEntity)e)
|
.filter(e -> !e.removed)
|
||||||
.filter(e -> !e.removed && e.getHealth() > 0)
|
.filter(e -> e instanceof LivingEntity
|
||||||
.filter(e -> player.squaredDistanceTo(e) <= rangeSq)
|
&& ((LivingEntity)e).getHealth() > 0
|
||||||
.filter(e -> e != player)
|
|| e instanceof EndCrystalEntity)
|
||||||
.filter(e -> !(e instanceof FakePlayerEntity))
|
.filter(e -> player.squaredDistanceTo(e) <= rangeSq)
|
||||||
.filter(e -> !WURST.getFriends().contains(e.getEntityName()));
|
.filter(e -> e != player)
|
||||||
|
.filter(e -> !(e instanceof FakePlayerEntity))
|
||||||
|
.filter(e -> !WURST.getFriends().contains(e.getEntityName()));
|
||||||
|
|
||||||
if(filterPlayers.isChecked())
|
if(filterPlayers.isChecked())
|
||||||
stream = stream.filter(e -> !(e instanceof PlayerEntity));
|
stream = stream.filter(e -> !(e instanceof PlayerEntity));
|
||||||
@ -240,7 +248,10 @@ public final class ClickAuraHack extends Hack
|
|||||||
if(filterStands.isChecked())
|
if(filterStands.isChecked())
|
||||||
stream = stream.filter(e -> !(e instanceof ArmorStandEntity));
|
stream = stream.filter(e -> !(e instanceof ArmorStandEntity));
|
||||||
|
|
||||||
LivingEntity target =
|
if(filterCrystals.isChecked())
|
||||||
|
stream = stream.filter(e -> !(e instanceof EndCrystalEntity));
|
||||||
|
|
||||||
|
Entity target =
|
||||||
stream.min(priority.getSelected().comparator).orElse(null);
|
stream.min(priority.getSelected().comparator).orElse(null);
|
||||||
if(target == null)
|
if(target == null)
|
||||||
return;
|
return;
|
||||||
@ -268,13 +279,13 @@ public final class ClickAuraHack extends Hack
|
|||||||
e -> RotationUtils
|
e -> RotationUtils
|
||||||
.getAngleToLookVec(e.getBoundingBox().getCenter())),
|
.getAngleToLookVec(e.getBoundingBox().getCenter())),
|
||||||
|
|
||||||
HEALTH("Health", e -> e.getHealth());
|
HEALTH("Health", e -> e instanceof LivingEntity
|
||||||
|
? ((LivingEntity)e).getHealth() : Integer.MAX_VALUE);
|
||||||
|
|
||||||
private final String name;
|
private final String name;
|
||||||
private final Comparator<LivingEntity> comparator;
|
private final Comparator<Entity> comparator;
|
||||||
|
|
||||||
private Priority(String name,
|
private Priority(String name, ToDoubleFunction<Entity> keyExtractor)
|
||||||
ToDoubleFunction<LivingEntity> keyExtractor)
|
|
||||||
{
|
{
|
||||||
this.name = name;
|
this.name = name;
|
||||||
comparator = Comparator.comparingDouble(keyExtractor);
|
comparator = Comparator.comparingDouble(keyExtractor);
|
||||||
|
Loading…
Reference in New Issue
Block a user