0
0
mirror of https://github.com/Wurst-Imperium/Wurst7.git synced 2024-09-20 09:16:20 +02:00

Eclipse clean up

This commit is contained in:
Alexander01998 2022-06-11 19:35:35 +02:00
parent 4a7089acc9
commit 6471a3681f

View File

@ -26,8 +26,10 @@ public final class VClipCmd extends Command
{ {
public VClipCmd() public VClipCmd()
{ {
super("vclip", "Lets you clip through blocks vertically.\n" super("vclip",
+ "The maximum distance is 10 blocks.", ".vclip <height> or .vclip <above | below>"); "Lets you clip through blocks vertically.\n"
+ "The maximum distance is 10 blocks.",
".vclip <height> or .vclip <above | below>");
} }
@Override @Override
@ -38,40 +40,51 @@ public final class VClipCmd extends Command
ClientPlayerEntity player = MC.player; ClientPlayerEntity player = MC.player;
if(!MathUtils.isInteger(args[0])) { if(!MathUtils.isInteger(args[0]))
{
Stream<BlockPos> blockStream = null; Stream<BlockPos> blockStream = null;
boolean above; boolean above;
switch (args[0].toLowerCase())
switch(args[0].toLowerCase())
{ {
case "above": case "above":
blockStream = BlockUtils.getAllInBoxStream(player.getBlockPos().up(2), player.getBlockPos().up(10)); blockStream = BlockUtils.getAllInBoxStream(
player.getBlockPos().up(2), player.getBlockPos().up(10));
above = true; above = true;
break; break;
case "below": case "below":
blockStream = BlockUtils.getAllInBoxStream(player.getBlockPos().down(10), player.getBlockPos().down()); blockStream = BlockUtils.getAllInBoxStream(
player.getBlockPos().down(10), player.getBlockPos().down());
above = false; above = false;
break; break;
default: default:
throw new CmdSyntaxError(); throw new CmdSyntaxError();
} }
List<BlockPos> blockList = blockStream.filter(pos -> above ? BlockUtils.getState(pos.down()).getMaterial().isSolid() : true)
.filter(pos -> player.getPose() == EntityPose.SWIMMING ? List<BlockPos> blockList =
BlockUtils.getState(pos.up()).isAir() : blockStream
BlockUtils.getState(pos).isAir() && BlockUtils.getState(pos.up()).isAir() .filter(pos -> above ? BlockUtils.getState(pos.down())
) .getMaterial().isSolid() : true)
.sorted(Comparator.comparingDouble(p -> player.squaredDistanceTo(Vec3d.of(p)))) .filter(pos -> player.getPose() == EntityPose.SWIMMING
? BlockUtils.getState(pos.up()).isAir()
: BlockUtils.getState(pos).isAir()
&& BlockUtils.getState(pos.up()).isAir())
.sorted(Comparator.comparingDouble(
p -> player.squaredDistanceTo(Vec3d.of(p))))
.limit(1).toList(); .limit(1).toList();
if (!blockList.isEmpty()) {
player.updatePosition(player.getX(),blockList.get(0).getY(),player.getZ()); if(!blockList.isEmpty())
} player.updatePosition(player.getX(), blockList.get(0).getY(),
else {ChatUtils.error("There are no free blocks where you can fit!");} player.getZ());
else
ChatUtils.error("There are no free blocks where you can fit!");
return; return;
} }
player.setPosition(player.getX(), player.setPosition(player.getX(),
player.getY() + Integer.parseInt(args[0]), player.getZ()); player.getY() + Integer.parseInt(args[0]), player.getZ());
} }
} }