Update 1.19.4 (#233)
This commit is contained in:
6
.github/workflows/gradle.yml
vendored
6
.github/workflows/gradle.yml
vendored
@@ -4,7 +4,7 @@
|
|||||||
name: Java CI with Gradle
|
name: Java CI with Gradle
|
||||||
|
|
||||||
concurrency:
|
concurrency:
|
||||||
group: "build-1.19.2"
|
group: "build-1.19.4"
|
||||||
cancel-in-progress: true
|
cancel-in-progress: true
|
||||||
|
|
||||||
on:
|
on:
|
||||||
@@ -34,9 +34,9 @@ jobs:
|
|||||||
- uses: "marvinpinto/action-automatic-releases@latest"
|
- uses: "marvinpinto/action-automatic-releases@latest"
|
||||||
with:
|
with:
|
||||||
repo_token: "${{ secrets.GITHUB_TOKEN }}"
|
repo_token: "${{ secrets.GITHUB_TOKEN }}"
|
||||||
automatic_release_tag: "latest-1.19.3"
|
automatic_release_tag: "latest-1.19.4"
|
||||||
prerelease: false
|
prerelease: false
|
||||||
title: "1.19.3 Build"
|
title: "1.19.4 Build"
|
||||||
files: |
|
files: |
|
||||||
./build/libs/*.jar
|
./build/libs/*.jar
|
||||||
|
|
||||||
|
|||||||
@@ -63,6 +63,7 @@
|
|||||||
- Insta Mine (Removed from Meteor in [62cd0](https://github.com/MeteorDevelopment/meteor-client/commit/62cd0461e48a6c50f040bf48de25be1fa4eba77e))
|
- Insta Mine (Removed from Meteor in [62cd0](https://github.com/MeteorDevelopment/meteor-client/commit/62cd0461e48a6c50f040bf48de25be1fa4eba77e))
|
||||||
- Item generator (Ported from [Wurst](https://github.com/Wurst-Imperium/Wurst7/tree))
|
- Item generator (Ported from [Wurst](https://github.com/Wurst-Imperium/Wurst7/tree))
|
||||||
- InteractionMenu (Ported from [BleachHack](https://github.com/BleachDrinker420/BleachHack/pull/211))
|
- InteractionMenu (Ported from [BleachHack](https://github.com/BleachDrinker420/BleachHack/pull/211))
|
||||||
|
- Jetpack
|
||||||
- Lavacast
|
- Lavacast
|
||||||
- MossBot (Ported from [BleachHack](https://github.com/BleachDrinker420/BleachHack/pull/211))
|
- MossBot (Ported from [BleachHack](https://github.com/BleachDrinker420/BleachHack/pull/211))
|
||||||
- NewChunks (Ported from [BleachHack](https://github.com/BleachDrinker420/BleachHack/blob/master/BleachHack-Fabric-1.17/src/main/java/bleach/hack/module/mods/NewChunks.java))
|
- NewChunks (Ported from [BleachHack](https://github.com/BleachDrinker420/BleachHack/blob/master/BleachHack-Fabric-1.17/src/main/java/bleach/hack/module/mods/NewChunks.java))
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
plugins {
|
plugins {
|
||||||
id 'fabric-loom' version '1.0-SNAPSHOT'
|
id 'fabric-loom' version '1.1-SNAPSHOT'
|
||||||
}
|
}
|
||||||
|
|
||||||
sourceCompatibility = targetCompatibility = JavaVersion.VERSION_17
|
sourceCompatibility = targetCompatibility = JavaVersion.VERSION_17
|
||||||
@@ -30,6 +30,7 @@ dependencies {
|
|||||||
modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"
|
modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"
|
||||||
|
|
||||||
modImplementation("meteordevelopment:meteor-client:${project.meteor_version}-SNAPSHOT")
|
modImplementation("meteordevelopment:meteor-client:${project.meteor_version}-SNAPSHOT")
|
||||||
|
modImplementation "baritone:fabric:${project.minecraft_version}-SNAPSHOT"
|
||||||
|
|
||||||
// seed .locate and ore sim
|
// seed .locate and ore sim
|
||||||
extraLibs('com.seedfinding:mc_math:0eb505174da8a92550f8ec6efe254e0fa936cc0d') { transitive = false }
|
extraLibs('com.seedfinding:mc_math:0eb505174da8a92550f8ec6efe254e0fa936cc0d') { transitive = false }
|
||||||
|
|||||||
@@ -2,13 +2,13 @@
|
|||||||
org.gradle.jvmargs=-Xmx2G
|
org.gradle.jvmargs=-Xmx2G
|
||||||
|
|
||||||
# Fabric Properties
|
# Fabric Properties
|
||||||
minecraft_version=1.19.3
|
minecraft_version=1.19.4
|
||||||
yarn_version=1.19.3+build.2
|
yarn_version=1.19.4+build.1
|
||||||
loader_version=0.14.11
|
loader_version=0.14.17
|
||||||
|
|
||||||
# Mod Properties
|
# Mod Properties
|
||||||
mod_version = 0.2
|
mod_version = 0.2
|
||||||
maven_group = anticope.rejects
|
maven_group = anticope.rejects
|
||||||
archives_base_name = meteor-rejects-addon
|
archives_base_name = meteor-rejects-addon
|
||||||
|
|
||||||
meteor_version=0.5.2
|
meteor_version=0.5.3
|
||||||
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
@@ -1,5 +1,5 @@
|
|||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.1-bin.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.2-bin.zip
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
@@ -65,6 +65,7 @@ public class MeteorRejectsAddon extends MeteorAddon {
|
|||||||
modules.add(new InstaMine());
|
modules.add(new InstaMine());
|
||||||
modules.add(new ItemGenerator());
|
modules.add(new ItemGenerator());
|
||||||
modules.add(new InteractionMenu());
|
modules.add(new InteractionMenu());
|
||||||
|
modules.add(new Jetpack());
|
||||||
modules.add(new Lavacast());
|
modules.add(new Lavacast());
|
||||||
modules.add(new MossBot());
|
modules.add(new MossBot());
|
||||||
modules.add(new NewChunks());
|
modules.add(new NewChunks());
|
||||||
|
|||||||
@@ -0,0 +1,12 @@
|
|||||||
|
package anticope.rejects.events;
|
||||||
|
|
||||||
|
public class OffGroundSpeedEvent {
|
||||||
|
public static final OffGroundSpeedEvent INSTANCE = new OffGroundSpeedEvent();
|
||||||
|
|
||||||
|
public float speed;
|
||||||
|
|
||||||
|
public static OffGroundSpeedEvent get(float speed) {
|
||||||
|
INSTANCE.speed = speed;
|
||||||
|
return INSTANCE;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,29 +1,22 @@
|
|||||||
package anticope.rejects.gui.hud;
|
package anticope.rejects.gui.hud;
|
||||||
|
|
||||||
import java.util.Iterator;
|
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import meteordevelopment.meteorclient.systems.hud.HudElementInfo;
|
|
||||||
import meteordevelopment.meteorclient.utils.render.color.Color;
|
|
||||||
import net.minecraft.entity.Entity;
|
|
||||||
import net.minecraft.entity.EntityType;
|
|
||||||
import net.minecraft.util.math.BlockPos;
|
|
||||||
import net.minecraft.util.math.Vec3d;
|
|
||||||
|
|
||||||
import it.unimi.dsi.fastutil.objects.Object2BooleanMap;
|
import it.unimi.dsi.fastutil.objects.Object2BooleanMap;
|
||||||
import meteordevelopment.meteorclient.renderer.Renderer2D;
|
import meteordevelopment.meteorclient.renderer.Renderer2D;
|
||||||
import meteordevelopment.meteorclient.settings.BoolSetting;
|
|
||||||
import meteordevelopment.meteorclient.settings.ColorSetting;
|
|
||||||
import meteordevelopment.meteorclient.settings.DoubleSetting;
|
|
||||||
import meteordevelopment.meteorclient.settings.EntityTypeListSetting;
|
|
||||||
import meteordevelopment.meteorclient.settings.*;
|
import meteordevelopment.meteorclient.settings.*;
|
||||||
import meteordevelopment.meteorclient.systems.hud.HudRenderer;
|
|
||||||
import meteordevelopment.meteorclient.systems.hud.HudElement;
|
import meteordevelopment.meteorclient.systems.hud.HudElement;
|
||||||
|
import meteordevelopment.meteorclient.systems.hud.HudElementInfo;
|
||||||
|
import meteordevelopment.meteorclient.systems.hud.HudRenderer;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Modules;
|
import meteordevelopment.meteorclient.systems.modules.Modules;
|
||||||
import meteordevelopment.meteorclient.systems.modules.render.ESP;
|
import meteordevelopment.meteorclient.systems.modules.render.ESP;
|
||||||
import meteordevelopment.meteorclient.systems.waypoints.Waypoint;
|
import meteordevelopment.meteorclient.systems.waypoints.Waypoint;
|
||||||
import meteordevelopment.meteorclient.systems.waypoints.Waypoints;
|
import meteordevelopment.meteorclient.systems.waypoints.Waypoints;
|
||||||
|
import meteordevelopment.meteorclient.utils.render.color.Color;
|
||||||
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
|
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
|
||||||
|
import net.minecraft.entity.Entity;
|
||||||
|
import net.minecraft.entity.EntityType;
|
||||||
|
import net.minecraft.util.math.BlockPos;
|
||||||
|
import net.minecraft.util.math.Vec3d;
|
||||||
|
|
||||||
import static meteordevelopment.meteorclient.MeteorClient.mc;
|
import static meteordevelopment.meteorclient.MeteorClient.mc;
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package anticope.rejects.gui.screens;
|
package anticope.rejects.gui.screens;
|
||||||
|
|
||||||
import anticope.rejects.modules.InteractionMenu;
|
|
||||||
import anticope.rejects.mixin.EntityAccessor;
|
import anticope.rejects.mixin.EntityAccessor;
|
||||||
|
import anticope.rejects.modules.InteractionMenu;
|
||||||
import com.mojang.blaze3d.platform.GlStateManager;
|
import com.mojang.blaze3d.platform.GlStateManager;
|
||||||
import com.mojang.blaze3d.systems.RenderSystem;
|
import com.mojang.blaze3d.systems.RenderSystem;
|
||||||
import meteordevelopment.meteorclient.MeteorClient;
|
import meteordevelopment.meteorclient.MeteorClient;
|
||||||
@@ -14,7 +14,6 @@ import meteordevelopment.starscript.compiler.Compiler;
|
|||||||
import meteordevelopment.starscript.compiler.Parser;
|
import meteordevelopment.starscript.compiler.Parser;
|
||||||
import meteordevelopment.starscript.utils.Error;
|
import meteordevelopment.starscript.utils.Error;
|
||||||
import meteordevelopment.starscript.utils.StarscriptError;
|
import meteordevelopment.starscript.utils.StarscriptError;
|
||||||
|
|
||||||
import net.minecraft.client.MinecraftClient;
|
import net.minecraft.client.MinecraftClient;
|
||||||
import net.minecraft.client.gui.screen.ChatScreen;
|
import net.minecraft.client.gui.screen.ChatScreen;
|
||||||
import net.minecraft.client.gui.screen.Screen;
|
import net.minecraft.client.gui.screen.Screen;
|
||||||
@@ -23,7 +22,8 @@ import net.minecraft.client.option.KeyBinding;
|
|||||||
import net.minecraft.client.render.GameRenderer;
|
import net.minecraft.client.render.GameRenderer;
|
||||||
import net.minecraft.client.util.InputUtil;
|
import net.minecraft.client.util.InputUtil;
|
||||||
import net.minecraft.client.util.math.MatrixStack;
|
import net.minecraft.client.util.math.MatrixStack;
|
||||||
import net.minecraft.entity.*;
|
import net.minecraft.entity.Entity;
|
||||||
|
import net.minecraft.entity.Saddleable;
|
||||||
import net.minecraft.entity.mob.EndermanEntity;
|
import net.minecraft.entity.mob.EndermanEntity;
|
||||||
import net.minecraft.entity.passive.AbstractHorseEntity;
|
import net.minecraft.entity.passive.AbstractHorseEntity;
|
||||||
import net.minecraft.entity.player.PlayerEntity;
|
import net.minecraft.entity.player.PlayerEntity;
|
||||||
@@ -251,7 +251,7 @@ public class InteractionScreen extends Screen {
|
|||||||
|
|
||||||
drawDots(matrix, (int) (Math.min(height, width) / 2 * 0.75), mouseX, mouseY);
|
drawDots(matrix, (int) (Math.min(height, width) / 2 * 0.75), mouseX, mouseY);
|
||||||
matrix.scale(2f, 2f, 1f);
|
matrix.scale(2f, 2f, 1f);
|
||||||
drawCenteredText(matrix, textRenderer, entity.getName(), width / 4, 6, 0xFFFFFFFF);
|
drawCenteredTextWithShadow(matrix, textRenderer, entity.getName(), width / 4, 6, 0xFFFFFFFF);
|
||||||
|
|
||||||
int scale = client.options.getGuiScale().getValue();
|
int scale = client.options.getGuiScale().getValue();
|
||||||
Vector2 mouse = new Vector2(mouseX, mouseY);
|
Vector2 mouse = new Vector2(mouseX, mouseY);
|
||||||
@@ -324,10 +324,10 @@ public class InteractionScreen extends Screen {
|
|||||||
private void drawTextField(MatrixStack matrix, int x, int y, String key) {
|
private void drawTextField(MatrixStack matrix, int x, int y, String key) {
|
||||||
if (x >= width / 2) {
|
if (x >= width / 2) {
|
||||||
drawRect(matrix, x + 10, y - 8, textRenderer.getWidth(key) + 3, 15, backgroundColor, borderColor);
|
drawRect(matrix, x + 10, y - 8, textRenderer.getWidth(key) + 3, 15, backgroundColor, borderColor);
|
||||||
drawStringWithShadow(matrix, textRenderer, key, x + 12, y - 4, textColor);
|
drawTextWithShadow(matrix, textRenderer, key, x + 12, y - 4, textColor);
|
||||||
} else {
|
} else {
|
||||||
drawRect(matrix, x - 14 - textRenderer.getWidth(key), y - 8, textRenderer.getWidth(key) + 3, 15, backgroundColor, borderColor);
|
drawRect(matrix, x - 14 - textRenderer.getWidth(key), y - 8, textRenderer.getWidth(key) + 3, 15, backgroundColor, borderColor);
|
||||||
drawStringWithShadow(matrix, textRenderer, key, x - 12 - textRenderer.getWidth(key), y - 4, textColor);
|
drawTextWithShadow(matrix, textRenderer, key, x - 12 - textRenderer.getWidth(key), y - 4, textColor);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,27 +1,21 @@
|
|||||||
package anticope.rejects.mixin;
|
package anticope.rejects.mixin;
|
||||||
|
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
|
||||||
import org.spongepowered.asm.mixin.injection.Inject;
|
|
||||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
|
||||||
import org.spongepowered.asm.mixin.injection.At;
|
|
||||||
|
|
||||||
import net.minecraft.entity.Entity;
|
|
||||||
import net.minecraft.entity.LivingEntity;
|
|
||||||
|
|
||||||
import anticope.rejects.events.TeleportParticleEvent;
|
import anticope.rejects.events.TeleportParticleEvent;
|
||||||
import meteordevelopment.meteorclient.MeteorClient;
|
import meteordevelopment.meteorclient.MeteorClient;
|
||||||
import meteordevelopment.meteorclient.utils.Utils;
|
import net.minecraft.entity.LivingEntity;
|
||||||
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
|
import org.spongepowered.asm.mixin.injection.At;
|
||||||
|
import org.spongepowered.asm.mixin.injection.Inject;
|
||||||
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||||
|
|
||||||
import static meteordevelopment.meteorclient.MeteorClient.mc;
|
import static meteordevelopment.meteorclient.MeteorClient.mc;
|
||||||
|
|
||||||
@Mixin(LivingEntity.class)
|
@Mixin(LivingEntity.class)
|
||||||
public class LivingEntityMixin {
|
public class LivingEntityMixin {
|
||||||
@Inject(method = "handleStatus", at = @At("HEAD"), cancellable = true)
|
@Inject(method = "handleStatus", at = @At("HEAD"))
|
||||||
private void onHandleStatus(byte status, CallbackInfo ci) {
|
private void onHandleStatus(byte status, CallbackInfo ci) {
|
||||||
if ((Object) this instanceof Entity thisPlayer) {
|
if ((Object) this == mc.player && status == 46) {
|
||||||
if ((Object) thisPlayer == mc.player && status == 46 && Utils.canUpdate()) {
|
MeteorClient.EVENT_BUS.post(TeleportParticleEvent.get(mc.player.getX(), mc.player.getY(), mc.player.getZ()));
|
||||||
MeteorClient.EVENT_BUS.post(TeleportParticleEvent.get(thisPlayer.getX(), thisPlayer.getY(), thisPlayer.getZ()));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
17
src/main/java/anticope/rejects/mixin/PlayerEntityMixin.java
Normal file
17
src/main/java/anticope/rejects/mixin/PlayerEntityMixin.java
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
package anticope.rejects.mixin;
|
||||||
|
|
||||||
|
import anticope.rejects.events.OffGroundSpeedEvent;
|
||||||
|
import meteordevelopment.meteorclient.MeteorClient;
|
||||||
|
import net.minecraft.entity.player.PlayerEntity;
|
||||||
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
|
import org.spongepowered.asm.mixin.injection.At;
|
||||||
|
import org.spongepowered.asm.mixin.injection.Inject;
|
||||||
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
|
||||||
|
|
||||||
|
@Mixin(PlayerEntity.class)
|
||||||
|
public class PlayerEntityMixin {
|
||||||
|
@Inject(method = "getOffGroundSpeed", at = @At("RETURN"), cancellable = true)
|
||||||
|
private void onGetOffGroundSpeed(CallbackInfoReturnable<Float> cir) {
|
||||||
|
cir.setReturnValue(MeteorClient.EVENT_BUS.post(OffGroundSpeedEvent.get(cir.getReturnValueF())).speed);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -9,7 +9,7 @@ import org.spongepowered.asm.mixin.injection.ModifyVariable;
|
|||||||
|
|
||||||
@Mixin(TexturedRenderLayers.class)
|
@Mixin(TexturedRenderLayers.class)
|
||||||
public class TexturedRenderLayersMixin {
|
public class TexturedRenderLayersMixin {
|
||||||
@ModifyVariable(method = "getChestTexture(Lnet/minecraft/block/entity/BlockEntity;Lnet/minecraft/block/enums/ChestType;Z)Lnet/minecraft/client/util/SpriteIdentifier;", at = @At("LOAD"), ordinal = 0)
|
@ModifyVariable(method = "getChestTextureId(Lnet/minecraft/block/entity/BlockEntity;Lnet/minecraft/block/enums/ChestType;Z)Lnet/minecraft/client/util/SpriteIdentifier;", at = @At("LOAD"), ordinal = 0)
|
||||||
private static boolean chrsitmas(boolean christmas) {
|
private static boolean chrsitmas(boolean christmas) {
|
||||||
Rendering rendering = Modules.get().get(Rendering.class);
|
Rendering rendering = Modules.get().get(Rendering.class);
|
||||||
if (rendering != null && rendering.chistmas())
|
if (rendering != null && rendering.chistmas())
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
import meteordevelopment.meteorclient.settings.BoolSetting;
|
import meteordevelopment.meteorclient.settings.BoolSetting;
|
||||||
import meteordevelopment.meteorclient.settings.Setting;
|
import meteordevelopment.meteorclient.settings.Setting;
|
||||||
import meteordevelopment.meteorclient.settings.SettingGroup;
|
import meteordevelopment.meteorclient.settings.SettingGroup;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.meteorclient.utils.entity.EntityUtils;
|
import meteordevelopment.meteorclient.utils.entity.EntityUtils;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.entity.Entity;
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.player.PlayerEntity;
|
import net.minecraft.entity.player.PlayerEntity;
|
||||||
|
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
|
||||||
import meteordevelopment.meteorclient.events.packets.PacketEvent;
|
import meteordevelopment.meteorclient.events.packets.PacketEvent;
|
||||||
import meteordevelopment.meteorclient.settings.BoolSetting;
|
import meteordevelopment.meteorclient.settings.BoolSetting;
|
||||||
import meteordevelopment.meteorclient.settings.Setting;
|
import meteordevelopment.meteorclient.settings.Setting;
|
||||||
import meteordevelopment.meteorclient.settings.SettingGroup;
|
import meteordevelopment.meteorclient.settings.SettingGroup;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.block.BedBlock;
|
import net.minecraft.block.BedBlock;
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.network.packet.c2s.play.PlayerInteractBlockC2SPacket;
|
import net.minecraft.network.packet.c2s.play.PlayerInteractBlockC2SPacket;
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ public class AntiVanish extends Module {
|
|||||||
|
|
||||||
private final Setting<String> command = sgGeneral.add(new StringSetting.Builder()
|
private final Setting<String> command = sgGeneral.add(new StringSetting.Builder()
|
||||||
.name("command")
|
.name("command")
|
||||||
.description("The completion command.")
|
.description("The completion command to detect player names.")
|
||||||
.defaultValue("minecraft:msg")
|
.defaultValue("minecraft:msg")
|
||||||
.visible(() -> mode.get() == Mode.RealJoinMessage)
|
.visible(() -> mode.get() == Mode.RealJoinMessage)
|
||||||
.build()
|
.build()
|
||||||
@@ -68,7 +68,7 @@ public class AntiVanish extends Module {
|
|||||||
public WWidget getWidget(GuiTheme theme) {
|
public WWidget getWidget(GuiTheme theme) {
|
||||||
WVerticalList l = theme.verticalList();
|
WVerticalList l = theme.verticalList();
|
||||||
l.add(theme.label("LeaveMessage: If client didn't receive a quit game message (like essentials)."));
|
l.add(theme.label("LeaveMessage: If client didn't receive a quit game message (like essentials)."));
|
||||||
l.add(theme.label("RealJoinMessage: Tell whether the player is really left."));
|
l.add(theme.label("RealJoinMessage: Tell whether the player is really left by using player name completion."));
|
||||||
return l;
|
return l;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,31 +1,25 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
import meteordevelopment.meteorclient.settings.BlockListSetting;
|
import meteordevelopment.meteorclient.settings.*;
|
||||||
import meteordevelopment.meteorclient.settings.BoolSetting;
|
|
||||||
import meteordevelopment.meteorclient.settings.DoubleSetting;
|
|
||||||
import meteordevelopment.meteorclient.settings.IntSetting;
|
|
||||||
import meteordevelopment.meteorclient.settings.Setting;
|
|
||||||
import meteordevelopment.meteorclient.settings.SettingGroup;
|
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.meteorclient.utils.misc.Pool;
|
import meteordevelopment.meteorclient.utils.misc.Pool;
|
||||||
import meteordevelopment.meteorclient.utils.player.FindItemResult;
|
import meteordevelopment.meteorclient.utils.player.FindItemResult;
|
||||||
import meteordevelopment.meteorclient.utils.player.InvUtils;
|
import meteordevelopment.meteorclient.utils.player.InvUtils;
|
||||||
import meteordevelopment.meteorclient.utils.world.BlockIterator;
|
import meteordevelopment.meteorclient.utils.world.BlockIterator;
|
||||||
import meteordevelopment.meteorclient.utils.world.BlockUtils;
|
import meteordevelopment.meteorclient.utils.world.BlockUtils;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import net.minecraft.block.BedBlock;
|
import net.minecraft.block.BedBlock;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.item.BlockItem;
|
import net.minecraft.item.BlockItem;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
public class AutoBedTrap extends Module {
|
public class AutoBedTrap extends Module {
|
||||||
|
|
||||||
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ public class AutoCraft extends Module {
|
|||||||
List<RecipeResultCollection> recipeResultCollectionList = mc.player.getRecipeBook().getOrderedResults();
|
List<RecipeResultCollection> recipeResultCollectionList = mc.player.getRecipeBook().getOrderedResults();
|
||||||
for (RecipeResultCollection recipeResultCollection : recipeResultCollectionList) {
|
for (RecipeResultCollection recipeResultCollection : recipeResultCollectionList) {
|
||||||
for (Recipe<?> recipe : recipeResultCollection.getRecipes(true)) {
|
for (Recipe<?> recipe : recipeResultCollection.getRecipes(true)) {
|
||||||
if (!itemList.contains(recipe.getOutput().getItem())) continue;
|
if (!itemList.contains(recipe.getOutput(mc.world.getRegistryManager()).getItem())) continue;
|
||||||
mc.interactionManager.clickRecipe(currentScreenHandler.syncId, recipe, craftAll.get());
|
mc.interactionManager.clickRecipe(currentScreenHandler.syncId, recipe, craftAll.get());
|
||||||
mc.interactionManager.clickSlot(currentScreenHandler.syncId, 0, 1,
|
mc.interactionManager.clickSlot(currentScreenHandler.syncId, 0, 1,
|
||||||
drop.get() ? SlotActionType.THROW : SlotActionType.QUICK_MOVE, mc.player);
|
drop.get() ? SlotActionType.THROW : SlotActionType.QUICK_MOVE, mc.player);
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
import meteordevelopment.meteorclient.settings.BoolSetting;
|
import meteordevelopment.meteorclient.settings.BoolSetting;
|
||||||
import meteordevelopment.meteorclient.settings.IntSetting;
|
import meteordevelopment.meteorclient.settings.IntSetting;
|
||||||
@@ -11,6 +10,7 @@ import meteordevelopment.meteorclient.systems.modules.Module;
|
|||||||
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
|
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
|
||||||
import meteordevelopment.meteorclient.utils.player.Rotations;
|
import meteordevelopment.meteorclient.utils.player.Rotations;
|
||||||
import meteordevelopment.meteorclient.utils.world.BlockIterator;
|
import meteordevelopment.meteorclient.utils.world.BlockIterator;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.entity.effect.StatusEffect;
|
import net.minecraft.entity.effect.StatusEffect;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ package anticope.rejects.modules;
|
|||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import anticope.rejects.settings.StringMapSetting;
|
import anticope.rejects.settings.StringMapSetting;
|
||||||
import anticope.rejects.utils.RejectsUtils;
|
import anticope.rejects.utils.RejectsUtils;
|
||||||
import meteordevelopment.meteorclient.MeteorClient;
|
|
||||||
import meteordevelopment.meteorclient.events.game.GameJoinedEvent;
|
import meteordevelopment.meteorclient.events.game.GameJoinedEvent;
|
||||||
import meteordevelopment.meteorclient.events.packets.PacketEvent;
|
import meteordevelopment.meteorclient.events.packets.PacketEvent;
|
||||||
import meteordevelopment.meteorclient.gui.GuiTheme;
|
import meteordevelopment.meteorclient.gui.GuiTheme;
|
||||||
|
|||||||
@@ -1,20 +1,24 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
//import baritone.api.BaritoneAPI;
|
//import baritone.api.BaritoneAPI;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import baritone.api.BaritoneAPI;
|
import baritone.api.BaritoneAPI;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
|
||||||
import meteordevelopment.meteorclient.events.entity.player.ItemUseCrosshairTargetEvent;
|
import meteordevelopment.meteorclient.events.entity.player.ItemUseCrosshairTargetEvent;
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
|
import meteordevelopment.meteorclient.settings.BoolSetting;
|
||||||
|
import meteordevelopment.meteorclient.settings.IntSetting;
|
||||||
|
import meteordevelopment.meteorclient.settings.Setting;
|
||||||
|
import meteordevelopment.meteorclient.settings.SettingGroup;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Modules;
|
import meteordevelopment.meteorclient.systems.modules.Modules;
|
||||||
import meteordevelopment.meteorclient.systems.modules.combat.AnchorAura;
|
import meteordevelopment.meteorclient.systems.modules.combat.AnchorAura;
|
||||||
import meteordevelopment.meteorclient.systems.modules.combat.BedAura;
|
import meteordevelopment.meteorclient.systems.modules.combat.BedAura;
|
||||||
import meteordevelopment.meteorclient.systems.modules.combat.CrystalAura;
|
import meteordevelopment.meteorclient.systems.modules.combat.CrystalAura;
|
||||||
import meteordevelopment.meteorclient.systems.modules.combat.KillAura;
|
import meteordevelopment.meteorclient.systems.modules.combat.KillAura;
|
||||||
import meteordevelopment.meteorclient.settings.*;
|
|
||||||
import meteordevelopment.meteorclient.utils.Utils;
|
import meteordevelopment.meteorclient.utils.Utils;
|
||||||
import meteordevelopment.meteorclient.utils.player.Rotations;
|
import meteordevelopment.meteorclient.utils.player.Rotations;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.entity.effect.StatusEffect;
|
import net.minecraft.entity.effect.StatusEffect;
|
||||||
import net.minecraft.entity.effect.StatusEffectInstance;
|
import net.minecraft.entity.effect.StatusEffectInstance;
|
||||||
import net.minecraft.entity.effect.StatusEffects;
|
import net.minecraft.entity.effect.StatusEffects;
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ import net.minecraft.util.hit.HitResult;
|
|||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
|
|
||||||
public class AutoSoup extends Module {
|
public class AutoSoup extends Module {
|
||||||
private static final String desc = "Automatically eats soup when your health is low. Note: This hack ignores hunger and assumes that eating soup directly refills your health. If the server you are playing on is not configured to do that, use AutoEat instead.";
|
private static final String desc = "Automatically eats soup when your health is low on some servers.";
|
||||||
|
|
||||||
public AutoSoup() {
|
public AutoSoup() {
|
||||||
super(MeteorRejectsAddon.CATEGORY, "auto-soup", desc);
|
super(MeteorRejectsAddon.CATEGORY, "auto-soup", desc);
|
||||||
|
|||||||
@@ -14,7 +14,8 @@ import meteordevelopment.meteorclient.utils.player.PlayerUtils;
|
|||||||
import meteordevelopment.meteorclient.utils.world.BlockIterator;
|
import meteordevelopment.meteorclient.utils.world.BlockIterator;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.block.TntBlock;
|
import net.minecraft.block.TntBlock;
|
||||||
import net.minecraft.item.*;
|
import net.minecraft.item.FireChargeItem;
|
||||||
|
import net.minecraft.item.FlintAndSteelItem;
|
||||||
import net.minecraft.util.Hand;
|
import net.minecraft.util.Hand;
|
||||||
import net.minecraft.util.hit.BlockHitResult;
|
import net.minecraft.util.hit.BlockHitResult;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import net.minecraft.entity.MovementType;
|
|
||||||
import net.minecraft.util.math.Vec3d;
|
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
import meteordevelopment.meteorclient.settings.BoolSetting;
|
import meteordevelopment.meteorclient.settings.BoolSetting;
|
||||||
import meteordevelopment.meteorclient.settings.Setting;
|
import meteordevelopment.meteorclient.settings.Setting;
|
||||||
@@ -15,9 +13,11 @@ import meteordevelopment.meteorclient.utils.world.BlockUtils;
|
|||||||
import meteordevelopment.orbit.EventHandler;
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.FallingBlock;
|
import net.minecraft.block.FallingBlock;
|
||||||
|
import net.minecraft.entity.MovementType;
|
||||||
import net.minecraft.item.BlockItem;
|
import net.minecraft.item.BlockItem;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
|
import net.minecraft.util.math.Vec3d;
|
||||||
|
|
||||||
public class BlockIn extends Module {
|
public class BlockIn extends Module {
|
||||||
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
|
||||||
import meteordevelopment.meteorclient.events.entity.BoatMoveEvent;
|
import meteordevelopment.meteorclient.events.entity.BoatMoveEvent;
|
||||||
import meteordevelopment.meteorclient.events.meteor.KeyEvent;
|
import meteordevelopment.meteorclient.events.meteor.KeyEvent;
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
@@ -11,6 +10,7 @@ import meteordevelopment.meteorclient.settings.SettingGroup;
|
|||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Modules;
|
import meteordevelopment.meteorclient.systems.modules.Modules;
|
||||||
import meteordevelopment.meteorclient.utils.misc.input.KeyAction;
|
import meteordevelopment.meteorclient.utils.misc.input.KeyAction;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.entity.Entity;
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.vehicle.BoatEntity;
|
import net.minecraft.entity.vehicle.BoatEntity;
|
||||||
import net.minecraft.network.packet.c2s.play.PlayerInteractEntityC2SPacket;
|
import net.minecraft.network.packet.c2s.play.PlayerInteractEntityC2SPacket;
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
|
||||||
import meteordevelopment.meteorclient.events.entity.BoatMoveEvent;
|
import meteordevelopment.meteorclient.events.entity.BoatMoveEvent;
|
||||||
import meteordevelopment.meteorclient.mixininterface.IVec3d;
|
import meteordevelopment.meteorclient.mixininterface.IVec3d;
|
||||||
import meteordevelopment.meteorclient.settings.BoolSetting;
|
import meteordevelopment.meteorclient.settings.BoolSetting;
|
||||||
@@ -11,6 +10,7 @@ import meteordevelopment.meteorclient.settings.SettingGroup;
|
|||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Modules;
|
import meteordevelopment.meteorclient.systems.modules.Modules;
|
||||||
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
|
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.entity.vehicle.BoatEntity;
|
import net.minecraft.entity.vehicle.BoatEntity;
|
||||||
import net.minecraft.util.math.Vec3d;
|
import net.minecraft.util.math.Vec3d;
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
|
import anticope.rejects.events.TeleportParticleEvent;
|
||||||
import meteordevelopment.meteorclient.events.entity.player.FinishUsingItemEvent;
|
import meteordevelopment.meteorclient.events.entity.player.FinishUsingItemEvent;
|
||||||
import meteordevelopment.meteorclient.events.packets.PacketEvent;
|
import meteordevelopment.meteorclient.events.packets.PacketEvent;
|
||||||
import meteordevelopment.meteorclient.events.render.Render3DEvent;
|
import meteordevelopment.meteorclient.events.render.Render3DEvent;
|
||||||
@@ -7,8 +9,6 @@ import meteordevelopment.meteorclient.events.world.TickEvent;
|
|||||||
import meteordevelopment.meteorclient.settings.*;
|
import meteordevelopment.meteorclient.settings.*;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.meteorclient.utils.Utils;
|
import meteordevelopment.meteorclient.utils.Utils;
|
||||||
import meteordevelopment.meteorclient.utils.entity.fakeplayer.FakePlayerEntity;
|
|
||||||
import meteordevelopment.meteorclient.utils.entity.fakeplayer.FakePlayerManager;
|
|
||||||
import meteordevelopment.meteorclient.utils.misc.Keybind;
|
import meteordevelopment.meteorclient.utils.misc.Keybind;
|
||||||
import meteordevelopment.meteorclient.utils.render.RenderUtils;
|
import meteordevelopment.meteorclient.utils.render.RenderUtils;
|
||||||
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
|
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
|
||||||
@@ -18,10 +18,8 @@ import net.minecraft.network.packet.c2s.play.TeleportConfirmC2SPacket;
|
|||||||
import net.minecraft.network.packet.s2c.play.PlayerPositionLookS2CPacket;
|
import net.minecraft.network.packet.s2c.play.PlayerPositionLookS2CPacket;
|
||||||
import net.minecraft.util.math.Vec3d;
|
import net.minecraft.util.math.Vec3d;
|
||||||
|
|
||||||
import anticope.rejects.events.TeleportParticleEvent;
|
import java.util.LinkedList;
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import java.util.Queue;
|
||||||
|
|
||||||
import java.util.*;
|
|
||||||
|
|
||||||
public class ChorusExploit extends Module {
|
public class ChorusExploit extends Module {
|
||||||
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
||||||
|
|||||||
@@ -1,11 +1,10 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import net.minecraft.network.packet.c2s.play.UpdateSignC2SPacket;
|
|
||||||
|
|
||||||
import meteordevelopment.orbit.EventHandler;
|
|
||||||
import meteordevelopment.meteorclient.events.packets.PacketEvent;
|
import meteordevelopment.meteorclient.events.packets.PacketEvent;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
|
import net.minecraft.network.packet.c2s.play.UpdateSignC2SPacket;
|
||||||
import net.minecraft.network.packet.s2c.play.GameJoinS2CPacket;
|
import net.minecraft.network.packet.s2c.play.GameJoinS2CPacket;
|
||||||
|
|
||||||
public class ColorSigns extends Module {
|
public class ColorSigns extends Module {
|
||||||
|
|||||||
@@ -34,13 +34,13 @@ public class Confuse extends Module {
|
|||||||
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
||||||
|
|
||||||
private final Setting<Mode> mode = sgGeneral.add(new EnumSetting.Builder<Mode>()
|
private final Setting<Mode> mode = sgGeneral.add(new EnumSetting.Builder<Mode>()
|
||||||
.name("mode")
|
.name("mode")
|
||||||
.defaultValue(Mode.RandomTP)
|
.defaultValue(Mode.RandomTP)
|
||||||
.description("Mode")
|
.description("Mode")
|
||||||
.build()
|
.build()
|
||||||
);
|
);
|
||||||
|
|
||||||
private final Setting<Integer> delay = sgGeneral.add(new IntSetting.Builder()
|
private final Setting<Integer> delay = sgGeneral.add(new IntSetting.Builder()
|
||||||
.name("delay")
|
.name("delay")
|
||||||
.description("Delay")
|
.description("Delay")
|
||||||
.defaultValue(3)
|
.defaultValue(3)
|
||||||
@@ -64,7 +64,7 @@ public class Confuse extends Module {
|
|||||||
.build()
|
.build()
|
||||||
);
|
);
|
||||||
|
|
||||||
private final Setting<Integer> circleSpeed = sgGeneral.add(new IntSetting.Builder()
|
private final Setting<Integer> circleSpeed = sgGeneral.add(new IntSetting.Builder()
|
||||||
.name("circle-speed")
|
.name("circle-speed")
|
||||||
.description("Circle mode speed")
|
.description("Circle mode speed")
|
||||||
.defaultValue(10)
|
.defaultValue(10)
|
||||||
@@ -138,11 +138,11 @@ public class Confuse extends Module {
|
|||||||
double z = r.nextDouble() * range.get() - halfRange;
|
double z = r.nextDouble() * range.get() - halfRange;
|
||||||
Vec3d addend = new Vec3d(x, y, z);
|
Vec3d addend = new Vec3d(x, y, z);
|
||||||
Vec3d goal = entityPos.add(addend);
|
Vec3d goal = entityPos.add(addend);
|
||||||
if (mc.world.getBlockState(new BlockPos(goal.x, goal.y, goal.z)).getBlock() != Blocks.AIR) {
|
if (mc.world.getBlockState(BlockPos.ofFloored(goal.x, goal.y, goal.z)).getBlock() != Blocks.AIR) {
|
||||||
goal = new Vec3d(x, playerPos.y, z);
|
goal = new Vec3d(x, playerPos.y, z);
|
||||||
}
|
}
|
||||||
if (mc.world.getBlockState(new BlockPos(goal.x, goal.y, goal.z)).getBlock() == Blocks.AIR) {
|
if (mc.world.getBlockState(BlockPos.ofFloored(goal.x, goal.y, goal.z)).getBlock() == Blocks.AIR) {
|
||||||
hit = mc.world.raycast(new RaycastContext(mc.player.getPos(),goal, RaycastContext.ShapeType.COLLIDER, RaycastContext.FluidHandling.ANY, mc.player));
|
hit = mc.world.raycast(new RaycastContext(mc.player.getPos(), goal, RaycastContext.ShapeType.COLLIDER, RaycastContext.FluidHandling.ANY, mc.player));
|
||||||
if (!moveThroughBlocks.get() && hit.isInsideBlock()) {
|
if (!moveThroughBlocks.get() && hit.isInsideBlock()) {
|
||||||
delayWaited = (int) (delay.get() - 1);
|
delayWaited = (int) (delay.get() - 1);
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -2,19 +2,25 @@ package anticope.rejects.modules;
|
|||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import anticope.rejects.events.CustomPayloadEvent;
|
import anticope.rejects.events.CustomPayloadEvent;
|
||||||
import com.google.gson.*;
|
import com.google.gson.Gson;
|
||||||
|
import com.google.gson.GsonBuilder;
|
||||||
|
import com.google.gson.JsonObject;
|
||||||
import com.google.gson.reflect.TypeToken;
|
import com.google.gson.reflect.TypeToken;
|
||||||
import meteordevelopment.meteorclient.settings.*;
|
import meteordevelopment.meteorclient.settings.BoolSetting;
|
||||||
|
import meteordevelopment.meteorclient.settings.Setting;
|
||||||
|
import meteordevelopment.meteorclient.settings.SettingGroup;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.meteorclient.utils.player.ChatUtils;
|
import meteordevelopment.meteorclient.utils.player.ChatUtils;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.network.PacketByteBuf;
|
import net.minecraft.network.PacketByteBuf;
|
||||||
import net.minecraft.text.*;
|
import net.minecraft.text.HoverEvent;
|
||||||
|
import net.minecraft.text.MutableText;
|
||||||
|
import net.minecraft.text.Text;
|
||||||
import net.minecraft.util.Formatting;
|
import net.minecraft.util.Formatting;
|
||||||
|
|
||||||
import java.lang.reflect.Type;
|
import java.lang.reflect.Type;
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.nio.charset.StandardCharsets;
|
||||||
import java.util.*;
|
import java.util.Map;
|
||||||
|
|
||||||
public class CustomPackets extends Module {
|
public class CustomPackets extends Module {
|
||||||
private static final Gson GSON_NON_PRETTY = new GsonBuilder().enableComplexMapKeySerialization().disableHtmlEscaping().create();
|
private static final Gson GSON_NON_PRETTY = new GsonBuilder().enableComplexMapKeySerialization().disableHtmlEscaping().create();
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import meteordevelopment.meteorclient.events.game.GameJoinedEvent;
|
import meteordevelopment.meteorclient.events.game.GameJoinedEvent;
|
||||||
import meteordevelopment.meteorclient.events.game.OpenScreenEvent;
|
import meteordevelopment.meteorclient.events.game.OpenScreenEvent;
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
@@ -9,7 +10,6 @@ import meteordevelopment.meteorclient.settings.SettingGroup;
|
|||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.client.gui.screen.DeathScreen;
|
import net.minecraft.client.gui.screen.DeathScreen;
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
|
||||||
|
|
||||||
public class GhostMode extends Module {
|
public class GhostMode extends Module {
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
|
import anticope.rejects.events.OffGroundSpeedEvent;
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
import meteordevelopment.meteorclient.settings.*;
|
import meteordevelopment.meteorclient.settings.DoubleSetting;
|
||||||
|
import meteordevelopment.meteorclient.settings.Setting;
|
||||||
|
import meteordevelopment.meteorclient.settings.SettingGroup;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.client.network.ClientPlayerEntity;
|
import net.minecraft.client.network.ClientPlayerEntity;
|
||||||
@@ -46,19 +49,23 @@ public class Glide extends Module {
|
|||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
private void onTick(TickEvent.Post event) {
|
private void onTick(TickEvent.Post event) {
|
||||||
ClientPlayerEntity player = mc.player;
|
ClientPlayerEntity player = mc.player;
|
||||||
Vec3d v = player.getVelocity();
|
Vec3d v = player.getVelocity();
|
||||||
|
|
||||||
if(player.isOnGround() || player.isTouchingWater() || player.isInLava() || player.isClimbing() || v.y >= 0) return;
|
if (player.isOnGround() || player.isTouchingWater() || player.isInLava() || player.isClimbing() || v.y >= 0)
|
||||||
|
return;
|
||||||
|
|
||||||
if(minHeight.get() > 0)
|
if (minHeight.get() > 0) {
|
||||||
{
|
Box box = player.getBoundingBox();
|
||||||
Box box = player.getBoundingBox();
|
box = box.union(box.offset(0, -minHeight.get(), 0));
|
||||||
box = box.union(box.offset(0, -minHeight.get(), 0));
|
if (!mc.world.isSpaceEmpty(box)) return;
|
||||||
if(!mc.world.isSpaceEmpty(box)) return;
|
}
|
||||||
}
|
|
||||||
|
|
||||||
player.setVelocity(v.x, Math.max(v.y, -fallSpeed.get()), v.z);
|
player.setVelocity(v.x, Math.max(v.y, -fallSpeed.get()), v.z);
|
||||||
player.airStrafingSpeed *= moveSpeed.get();
|
}
|
||||||
|
|
||||||
|
@EventHandler
|
||||||
|
private void onOffGroundSpeed(OffGroundSpeedEvent event) {
|
||||||
|
event.speed *= moveSpeed.get().floatValue();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -6,7 +6,6 @@ import meteordevelopment.meteorclient.events.render.Render3DEvent;
|
|||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
import meteordevelopment.meteorclient.renderer.ShapeMode;
|
import meteordevelopment.meteorclient.renderer.ShapeMode;
|
||||||
import meteordevelopment.meteorclient.settings.*;
|
import meteordevelopment.meteorclient.settings.*;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Categories;
|
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.meteorclient.utils.player.Rotations;
|
import meteordevelopment.meteorclient.utils.player.Rotations;
|
||||||
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
|
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
import meteordevelopment.meteorclient.settings.IntSetting;
|
import meteordevelopment.meteorclient.settings.IntSetting;
|
||||||
import meteordevelopment.meteorclient.settings.Setting;
|
import meteordevelopment.meteorclient.settings.Setting;
|
||||||
import meteordevelopment.meteorclient.settings.SettingGroup;
|
import meteordevelopment.meteorclient.settings.SettingGroup;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.meteorclient.utils.player.InvUtils;
|
import meteordevelopment.meteorclient.utils.player.InvUtils;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.item.Items;
|
import net.minecraft.item.Items;
|
||||||
import net.minecraft.network.packet.c2s.play.CreativeInventoryActionC2SPacket;
|
import net.minecraft.network.packet.c2s.play.CreativeInventoryActionC2SPacket;
|
||||||
@@ -19,7 +19,7 @@ public class ItemGenerator extends Module {
|
|||||||
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
||||||
private final Setting<Integer> speed = sgGeneral.add(new IntSetting.Builder()
|
private final Setting<Integer> speed = sgGeneral.add(new IntSetting.Builder()
|
||||||
.name("speed")
|
.name("speed")
|
||||||
.description("WARNING: High speeds will cause a ton of lag and can easily crash the game!")
|
.description("Stacks per tick. High speeds may cause lag.")
|
||||||
.defaultValue(1)
|
.defaultValue(1)
|
||||||
.min(1)
|
.min(1)
|
||||||
.max(36)
|
.max(36)
|
||||||
@@ -29,7 +29,7 @@ public class ItemGenerator extends Module {
|
|||||||
|
|
||||||
private final Setting<Integer> stackSize = sgGeneral.add(new IntSetting.Builder()
|
private final Setting<Integer> stackSize = sgGeneral.add(new IntSetting.Builder()
|
||||||
.name("stack-size")
|
.name("stack-size")
|
||||||
.description("How many items to place in each stack. Doesn't seem to affect performance.")
|
.description("How many items to place in each stack. ")
|
||||||
.defaultValue(1)
|
.defaultValue(1)
|
||||||
.min(1)
|
.min(1)
|
||||||
.max(64)
|
.max(64)
|
||||||
|
|||||||
41
src/main/java/anticope/rejects/modules/Jetpack.java
Normal file
41
src/main/java/anticope/rejects/modules/Jetpack.java
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
|
import anticope.rejects.events.OffGroundSpeedEvent;
|
||||||
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
|
import meteordevelopment.meteorclient.mixininterface.IVec3d;
|
||||||
|
import meteordevelopment.meteorclient.settings.DoubleSetting;
|
||||||
|
import meteordevelopment.meteorclient.settings.Setting;
|
||||||
|
import meteordevelopment.meteorclient.settings.SettingGroup;
|
||||||
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
|
|
||||||
|
public class Jetpack extends Module {
|
||||||
|
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
||||||
|
|
||||||
|
private final Setting<Double> jetpackSpeed = sgGeneral.add(new DoubleSetting.Builder()
|
||||||
|
.name("jetpack-speed")
|
||||||
|
.description("How fast while ascending.")
|
||||||
|
.defaultValue(0.42)
|
||||||
|
.min(0)
|
||||||
|
.sliderMax(1)
|
||||||
|
.build()
|
||||||
|
);
|
||||||
|
|
||||||
|
public Jetpack() {
|
||||||
|
super(MeteorRejectsAddon.CATEGORY, "jetpack", "Flies as if using a jetpack.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@EventHandler
|
||||||
|
private void onTick(TickEvent.Pre event) {
|
||||||
|
if (mc.options.jumpKey.isPressed()) {
|
||||||
|
((IVec3d) mc.player.getVelocity()).setY(jetpackSpeed.get());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@EventHandler
|
||||||
|
private void onOffGroundSpeed(OffGroundSpeedEvent event) {
|
||||||
|
event.speed = mc.player.getMovementSpeed() * jetpackSpeed.get().floatValue();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@@ -1,18 +1,18 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
|
||||||
import meteordevelopment.meteorclient.events.render.Render3DEvent;
|
import meteordevelopment.meteorclient.events.render.Render3DEvent;
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
|
||||||
import meteordevelopment.meteorclient.renderer.ShapeMode;
|
import meteordevelopment.meteorclient.renderer.ShapeMode;
|
||||||
import meteordevelopment.meteorclient.settings.IntSetting;
|
import meteordevelopment.meteorclient.settings.IntSetting;
|
||||||
import meteordevelopment.meteorclient.settings.Setting;
|
import meteordevelopment.meteorclient.settings.Setting;
|
||||||
import meteordevelopment.meteorclient.settings.SettingGroup;
|
import meteordevelopment.meteorclient.settings.SettingGroup;
|
||||||
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.meteorclient.utils.player.FindItemResult;
|
import meteordevelopment.meteorclient.utils.player.FindItemResult;
|
||||||
import meteordevelopment.meteorclient.utils.player.InvUtils;
|
import meteordevelopment.meteorclient.utils.player.InvUtils;
|
||||||
import meteordevelopment.meteorclient.utils.player.Rotations;
|
import meteordevelopment.meteorclient.utils.player.Rotations;
|
||||||
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
|
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.item.Items;
|
import net.minecraft.item.Items;
|
||||||
import net.minecraft.util.Hand;
|
import net.minecraft.util.Hand;
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ public class MossBot extends Module {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
BlockPos bestBlock = BlockPos.streamOutwards(new BlockPos(mc.player.getEyePos()), range.get(), range.get(), range.get())
|
BlockPos bestBlock = BlockPos.streamOutwards(BlockPos.ofFloored(mc.player.getEyePos()), range.get(), range.get(), range.get())
|
||||||
.filter(b -> mc.player.getEyePos().distanceTo(Vec3d.ofCenter(b)) <= range.get() && !mossMap.containsKey(b))
|
.filter(b -> mc.player.getEyePos().distanceTo(Vec3d.ofCenter(b)) <= range.get() && !mossMap.containsKey(b))
|
||||||
.map(b -> Pair.of(b.toImmutable(), getMossSpots(b)))
|
.map(b -> Pair.of(b.toImmutable(), getMossSpots(b)))
|
||||||
.filter(p -> p.getRight() > 10)
|
.filter(p -> p.getRight() > 10)
|
||||||
|
|||||||
@@ -14,13 +14,14 @@ import net.minecraft.nbt.NbtCompound;
|
|||||||
import net.minecraft.network.packet.s2c.play.BlockUpdateS2CPacket;
|
import net.minecraft.network.packet.s2c.play.BlockUpdateS2CPacket;
|
||||||
import net.minecraft.network.packet.s2c.play.ChunkDataS2CPacket;
|
import net.minecraft.network.packet.s2c.play.ChunkDataS2CPacket;
|
||||||
import net.minecraft.network.packet.s2c.play.ChunkDeltaUpdateS2CPacket;
|
import net.minecraft.network.packet.s2c.play.ChunkDeltaUpdateS2CPacket;
|
||||||
import net.minecraft.util.math.BlockPos;
|
|
||||||
import net.minecraft.util.math.Box;
|
import net.minecraft.util.math.Box;
|
||||||
import net.minecraft.util.math.ChunkPos;
|
import net.minecraft.util.math.ChunkPos;
|
||||||
import net.minecraft.util.math.Direction;
|
import net.minecraft.util.math.Direction;
|
||||||
import net.minecraft.world.chunk.WorldChunk;
|
import net.minecraft.world.chunk.WorldChunk;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.Collections;
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Ported from: https://github.com/BleachDrinker420/BleachHack/blob/master/BleachHack-Fabric-1.16/src/main/java/bleach/hack/module/mods/NewChunks.java
|
Ported from: https://github.com/BleachDrinker420/BleachHack/blob/master/BleachHack-Fabric-1.16/src/main/java/bleach/hack/module/mods/NewChunks.java
|
||||||
|
|||||||
@@ -1,16 +1,17 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Modules;
|
import meteordevelopment.meteorclient.systems.modules.Modules;
|
||||||
import meteordevelopment.meteorclient.systems.modules.player.AutoEat;
|
import meteordevelopment.meteorclient.systems.modules.player.AutoEat;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.item.Items;
|
import net.minecraft.item.Items;
|
||||||
import net.minecraft.util.Hand;
|
import net.minecraft.util.Hand;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.math.Direction;
|
import net.minecraft.util.math.Direction;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|||||||
@@ -8,33 +8,21 @@ import anticope.rejects.utils.Ore;
|
|||||||
import anticope.rejects.utils.seeds.Seed;
|
import anticope.rejects.utils.seeds.Seed;
|
||||||
import anticope.rejects.utils.seeds.Seeds;
|
import anticope.rejects.utils.seeds.Seeds;
|
||||||
import baritone.api.BaritoneAPI;
|
import baritone.api.BaritoneAPI;
|
||||||
|
import com.seedfinding.mccore.version.MCVersion;
|
||||||
import meteordevelopment.meteorclient.events.render.Render3DEvent;
|
import meteordevelopment.meteorclient.events.render.Render3DEvent;
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
import meteordevelopment.meteorclient.settings.BoolSetting;
|
import meteordevelopment.meteorclient.settings.*;
|
||||||
import meteordevelopment.meteorclient.settings.EnumSetting;
|
|
||||||
import meteordevelopment.meteorclient.settings.IntSetting;
|
|
||||||
import meteordevelopment.meteorclient.settings.Setting;
|
|
||||||
import meteordevelopment.meteorclient.settings.SettingGroup;
|
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.client.world.ClientWorld;
|
import net.minecraft.client.world.ClientWorld;
|
||||||
import net.minecraft.registry.RegistryKeys;
|
import net.minecraft.registry.RegistryKeys;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.*;
|
||||||
import net.minecraft.util.math.ChunkPos;
|
|
||||||
import net.minecraft.util.math.Direction;
|
|
||||||
import net.minecraft.util.math.MathHelper;
|
|
||||||
import net.minecraft.util.math.Vec3d;
|
|
||||||
import net.minecraft.util.math.random.ChunkRandom;
|
import net.minecraft.util.math.random.ChunkRandom;
|
||||||
import net.minecraft.world.Heightmap;
|
import net.minecraft.world.Heightmap;
|
||||||
import net.minecraft.world.chunk.ChunkStatus;
|
import net.minecraft.world.chunk.ChunkStatus;
|
||||||
import com.seedfinding.mccore.version.MCVersion;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.BitSet;
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.HashSet;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public class OreSim extends Module {
|
public class OreSim extends Module {
|
||||||
|
|
||||||
@@ -187,7 +175,7 @@ public class OreSim extends Module {
|
|||||||
.get(chunkKey)
|
.get(chunkKey)
|
||||||
.getOrDefault(ore, new HashSet<>())
|
.getOrDefault(ore, new HashSet<>())
|
||||||
.stream()
|
.stream()
|
||||||
.map((vec3d) -> new BlockPos(vec3d))
|
.map(BlockPos::ofFloored)
|
||||||
.forEach(baritoneGoals::add);
|
.forEach(baritoneGoals::add);
|
||||||
});
|
});
|
||||||
return baritoneGoals;
|
return baritoneGoals;
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
|
||||||
import meteordevelopment.meteorclient.events.entity.player.PlayerMoveEvent;
|
import meteordevelopment.meteorclient.events.entity.player.PlayerMoveEvent;
|
||||||
import meteordevelopment.meteorclient.events.entity.player.SendMovementPacketsEvent;
|
import meteordevelopment.meteorclient.events.entity.player.SendMovementPacketsEvent;
|
||||||
import meteordevelopment.meteorclient.events.packets.PacketEvent;
|
import meteordevelopment.meteorclient.events.packets.PacketEvent;
|
||||||
@@ -9,6 +8,7 @@ import meteordevelopment.meteorclient.mixin.PlayerPositionLookS2CPacketAccessor;
|
|||||||
import meteordevelopment.meteorclient.settings.*;
|
import meteordevelopment.meteorclient.settings.*;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
|
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
|
import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
|
||||||
import net.minecraft.network.packet.c2s.play.TeleportConfirmC2SPacket;
|
import net.minecraft.network.packet.c2s.play.TeleportConfirmC2SPacket;
|
||||||
import net.minecraft.network.packet.s2c.play.PlayerPositionLookS2CPacket;
|
import net.minecraft.network.packet.s2c.play.PlayerPositionLookS2CPacket;
|
||||||
|
|||||||
@@ -2,20 +2,18 @@ package anticope.rejects.modules;
|
|||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import anticope.rejects.utils.WorldUtils;
|
import anticope.rejects.utils.WorldUtils;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
import meteordevelopment.meteorclient.settings.*;
|
import meteordevelopment.meteorclient.settings.*;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.meteorclient.utils.player.FindItemResult;
|
import meteordevelopment.meteorclient.utils.player.FindItemResult;
|
||||||
import meteordevelopment.meteorclient.utils.player.InvUtils;
|
import meteordevelopment.meteorclient.utils.player.InvUtils;
|
||||||
import meteordevelopment.meteorclient.utils.world.BlockUtils;
|
import meteordevelopment.meteorclient.utils.world.BlockUtils;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.BlockState;
|
import net.minecraft.block.BlockState;
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
|
|
||||||
public class Painter extends Module {
|
public class Painter extends Module {
|
||||||
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
||||||
|
|
||||||
|
|||||||
@@ -1,16 +1,15 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import net.minecraft.client.gl.PostEffectProcessor;
|
|
||||||
import net.minecraft.util.Identifier;
|
|
||||||
|
|
||||||
import meteordevelopment.meteorclient.settings.EnumSetting;
|
|
||||||
import meteordevelopment.meteorclient.settings.BoolSetting;
|
import meteordevelopment.meteorclient.settings.BoolSetting;
|
||||||
|
import meteordevelopment.meteorclient.settings.EnumSetting;
|
||||||
import meteordevelopment.meteorclient.settings.Setting;
|
import meteordevelopment.meteorclient.settings.Setting;
|
||||||
import meteordevelopment.meteorclient.settings.SettingGroup;
|
import meteordevelopment.meteorclient.settings.SettingGroup;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
|
import net.minecraft.client.gl.PostEffectProcessor;
|
||||||
|
import net.minecraft.util.Identifier;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
public class Rendering extends Module {
|
public class Rendering extends Module {
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ import anticope.rejects.MeteorRejectsAddon;
|
|||||||
import meteordevelopment.meteorclient.events.entity.player.AttackEntityEvent;
|
import meteordevelopment.meteorclient.events.entity.player.AttackEntityEvent;
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
import meteordevelopment.meteorclient.settings.BoolSetting;
|
import meteordevelopment.meteorclient.settings.BoolSetting;
|
||||||
import meteordevelopment.meteorclient.settings.DoubleSetting;
|
|
||||||
import meteordevelopment.meteorclient.settings.Setting;
|
import meteordevelopment.meteorclient.settings.Setting;
|
||||||
import meteordevelopment.meteorclient.settings.SettingGroup;
|
import meteordevelopment.meteorclient.settings.SettingGroup;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
@@ -20,7 +19,7 @@ public class ShieldBypass extends Module {
|
|||||||
|
|
||||||
private final Setting<Boolean> rotate = sgGeneral.add(new BoolSetting.Builder()
|
private final Setting<Boolean> rotate = sgGeneral.add(new BoolSetting.Builder()
|
||||||
.name("rotate")
|
.name("rotate")
|
||||||
.description("Rotate towards enemy. Disable if killaura enabled.")
|
.description("Rotate towards enemy.")
|
||||||
.defaultValue(true)
|
.defaultValue(true)
|
||||||
.build()
|
.build()
|
||||||
);
|
);
|
||||||
@@ -43,7 +42,7 @@ public class ShieldBypass extends Module {
|
|||||||
if (originalPos != null && target != null) {
|
if (originalPos != null && target != null) {
|
||||||
mc.interactionManager.attackEntity(mc.player, target);
|
mc.interactionManager.attackEntity(mc.player, target);
|
||||||
mc.player.setPosition(originalPos);
|
mc.player.setPosition(originalPos);
|
||||||
if (rotate.get()) Rotations.rotate(-mc.player.getYaw(), mc.player.getPitch());
|
if (rotate.get()) Rotations.rotate(-mc.player.getYaw(), mc.player.getPitch(), -10);
|
||||||
}
|
}
|
||||||
originalPos = null;
|
originalPos = null;
|
||||||
target = null;
|
target = null;
|
||||||
@@ -64,11 +63,11 @@ public class ShieldBypass extends Module {
|
|||||||
while (range >= 0) {
|
while (range >= 0) {
|
||||||
Vec3d tp = Vec3d.fromPolar(0, mc.player.getYaw()).normalize().multiply(range);
|
Vec3d tp = Vec3d.fromPolar(0, mc.player.getYaw()).normalize().multiply(range);
|
||||||
Vec3d newPos = tp.add(e.getPos());
|
Vec3d newPos = tp.add(e.getPos());
|
||||||
BlockPos pos = new BlockPos(newPos);
|
BlockPos pos = BlockPos.ofFloored(newPos);
|
||||||
for (int i = -2; i <= 2; i++) {
|
for (int i = -2; i <= 2; i++) {
|
||||||
if (mc.player.world.getBlockState(pos.up(i)).isAir() && mc.player.world.getBlockState(pos).isAir()) {
|
if (mc.player.world.getBlockState(pos.up(i)).isAir() && mc.player.world.getBlockState(pos).isAir()) {
|
||||||
this.originalPos = originalPos;
|
this.originalPos = originalPos;
|
||||||
if (rotate.get()) Rotations.rotate(-mc.player.getYaw(), mc.player.getPitch());
|
if (rotate.get()) Rotations.rotate(-mc.player.getYaw(), mc.player.getPitch(), -10);
|
||||||
target = e;
|
target = e;
|
||||||
event.cancel();
|
event.cancel();
|
||||||
mc.player.setPosition(newPos.add(0, i, 0));
|
mc.player.setPosition(newPos.add(0, i, 0));
|
||||||
|
|||||||
@@ -62,7 +62,6 @@ public class SkeletonESP extends Module {
|
|||||||
float g = event.tickDelta;
|
float g = event.tickDelta;
|
||||||
|
|
||||||
RenderSystem.setShader(GameRenderer::getPositionColorProgram);
|
RenderSystem.setShader(GameRenderer::getPositionColorProgram);
|
||||||
RenderSystem.disableTexture();
|
|
||||||
RenderSystem.enableBlend();
|
RenderSystem.enableBlend();
|
||||||
RenderSystem.defaultBlendFunc();
|
RenderSystem.defaultBlendFunc();
|
||||||
RenderSystem.disableDepthTest();
|
RenderSystem.disableDepthTest();
|
||||||
@@ -88,8 +87,8 @@ public class SkeletonESP extends Module {
|
|||||||
float j = MathHelper.lerpAngleDegrees(g, playerEntity.prevHeadYaw, playerEntity.headYaw);
|
float j = MathHelper.lerpAngleDegrees(g, playerEntity.prevHeadYaw, playerEntity.headYaw);
|
||||||
if (mc.player == entity && Rotations.rotationTimer < rotationHoldTicks) j = Rotations.serverYaw;
|
if (mc.player == entity && Rotations.rotationTimer < rotationHoldTicks) j = Rotations.serverYaw;
|
||||||
|
|
||||||
float q = playerEntity.limbAngle - playerEntity.limbDistance * (1.0F - g);
|
float q = playerEntity.limbAnimator.getPos() - playerEntity.limbAnimator.getSpeed() * (1.0F - g);
|
||||||
float p = MathHelper.lerp(g, playerEntity.lastLimbDistance, playerEntity.limbDistance);
|
float p = playerEntity.limbAnimator.getSpeed(g);
|
||||||
float o = (float) playerEntity.age + g;
|
float o = (float) playerEntity.age + g;
|
||||||
float k = j - h;
|
float k = j - h;
|
||||||
float m = playerEntity.getPitch(g);
|
float m = playerEntity.getPitch(g);
|
||||||
@@ -186,7 +185,6 @@ public class SkeletonESP extends Module {
|
|||||||
matrixStack.translate(-footPos.x, -footPos.y, -footPos.z);
|
matrixStack.translate(-footPos.x, -footPos.y, -footPos.z);
|
||||||
});
|
});
|
||||||
|
|
||||||
RenderSystem.enableTexture();
|
|
||||||
RenderSystem.disableCull();
|
RenderSystem.disableCull();
|
||||||
RenderSystem.disableBlend();
|
RenderSystem.disableBlend();
|
||||||
RenderSystem.enableDepthTest();
|
RenderSystem.enableDepthTest();
|
||||||
|
|||||||
@@ -1,24 +1,21 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import meteordevelopment.orbit.EventHandler;
|
|
||||||
import meteordevelopment.meteorclient.events.world.PlaySoundEvent;
|
|
||||||
import meteordevelopment.meteorclient.events.render.Render3DEvent;
|
import meteordevelopment.meteorclient.events.render.Render3DEvent;
|
||||||
|
import meteordevelopment.meteorclient.events.world.PlaySoundEvent;
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
import meteordevelopment.meteorclient.renderer.ShapeMode;
|
import meteordevelopment.meteorclient.renderer.ShapeMode;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
|
||||||
import meteordevelopment.meteorclient.settings.*;
|
import meteordevelopment.meteorclient.settings.*;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Categories;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
|
|
||||||
import meteordevelopment.meteorclient.utils.player.ChatUtils;
|
import meteordevelopment.meteorclient.utils.player.ChatUtils;
|
||||||
import meteordevelopment.meteorclient.settings.SoundEventListSetting;
|
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
|
||||||
|
import meteordevelopment.orbit.EventHandler;
|
||||||
import net.minecraft.text.MutableText;
|
|
||||||
import net.minecraft.text.Text;
|
|
||||||
import net.minecraft.util.Formatting;
|
|
||||||
import net.minecraft.client.sound.SoundInstance;
|
import net.minecraft.client.sound.SoundInstance;
|
||||||
import net.minecraft.client.sound.WeightedSoundSet;
|
import net.minecraft.client.sound.WeightedSoundSet;
|
||||||
import net.minecraft.sound.SoundEvent;
|
import net.minecraft.sound.SoundEvent;
|
||||||
|
import net.minecraft.text.MutableText;
|
||||||
|
import net.minecraft.text.Text;
|
||||||
|
import net.minecraft.util.Formatting;
|
||||||
import net.minecraft.util.math.Box;
|
import net.minecraft.util.math.Box;
|
||||||
import net.minecraft.util.math.Vec3d;
|
import net.minecraft.util.math.Vec3d;
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package anticope.rejects.modules;
|
package anticope.rejects.modules;
|
||||||
|
|
||||||
|
import anticope.rejects.MeteorRejectsAddon;
|
||||||
import meteordevelopment.meteorclient.events.world.TickEvent;
|
import meteordevelopment.meteorclient.events.world.TickEvent;
|
||||||
import meteordevelopment.meteorclient.settings.*;
|
import meteordevelopment.meteorclient.settings.*;
|
||||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||||
@@ -20,7 +21,6 @@ import net.minecraft.util.hit.BlockHitResult;
|
|||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.util.math.Direction;
|
import net.minecraft.util.math.Direction;
|
||||||
import net.minecraft.util.math.MathHelper;
|
import net.minecraft.util.math.MathHelper;
|
||||||
import anticope.rejects.MeteorRejectsAddon;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
|||||||
@@ -18,20 +18,18 @@ public class MServerInfo {
|
|||||||
public int protocolVersion = SharedConstants.getGameVersion().getProtocolVersion();
|
public int protocolVersion = SharedConstants.getGameVersion().getProtocolVersion();
|
||||||
public String version = null;
|
public String version = null;
|
||||||
public List<Text> playerListSummary = Collections.emptyList();
|
public List<Text> playerListSummary = Collections.emptyList();
|
||||||
@Nullable
|
private byte @Nullable [] icon;
|
||||||
private String icon;
|
|
||||||
|
|
||||||
public MServerInfo(String name, String address) {
|
public MServerInfo(String name, String address) {
|
||||||
this.name = name;
|
this.name = name;
|
||||||
this.address = address;
|
this.address = address;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nullable
|
public byte @Nullable [] getIcon() {
|
||||||
public String getIcon() {
|
|
||||||
return this.icon;
|
return this.icon;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setIcon(@Nullable String string) {
|
public void setIcon(byte @Nullable [] bytes) {
|
||||||
this.icon = string;
|
this.icon = bytes;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,7 +22,6 @@ import net.minecraft.server.ServerMetadata;
|
|||||||
import net.minecraft.text.Text;
|
import net.minecraft.text.Text;
|
||||||
import net.minecraft.util.Util;
|
import net.minecraft.util.Util;
|
||||||
import net.minecraft.util.math.MathHelper;
|
import net.minecraft.util.math.MathHelper;
|
||||||
import org.apache.commons.lang3.ArrayUtils;
|
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
|
||||||
@@ -65,6 +64,7 @@ public class ServerListPinger {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void add(final MServerInfo entry, final Runnable runnable) throws UnknownHostException {
|
public void add(final MServerInfo entry, final Runnable runnable) throws UnknownHostException {
|
||||||
Timer timeoutTimer = new Timer();
|
Timer timeoutTimer = new Timer();
|
||||||
ServerAddress serverAddress = ServerAddress.parse(entry.address);
|
ServerAddress serverAddress = ServerAddress.parse(entry.address);
|
||||||
@@ -90,58 +90,44 @@ public class ServerListPinger {
|
|||||||
clientConnection.disconnect(Text.translatable("multiplayer.status.unrequested"));
|
clientConnection.disconnect(Text.translatable("multiplayer.status.unrequested"));
|
||||||
} else {
|
} else {
|
||||||
this.received = true;
|
this.received = true;
|
||||||
ServerMetadata serverMetadata = packet.getServerMetadata();
|
ServerMetadata serverMetadata = packet.metadata();
|
||||||
if (serverMetadata.getDescription() != null) {
|
entry.label = serverMetadata.description().getString();
|
||||||
entry.label = serverMetadata.getDescription().getString();
|
serverMetadata.version().ifPresentOrElse((version) -> {
|
||||||
} else {
|
entry.version = version.gameVersion();
|
||||||
entry.label = "";
|
entry.protocolVersion = version.protocolVersion();
|
||||||
}
|
}, () -> {
|
||||||
|
|
||||||
if (serverMetadata.getVersion() != null) {
|
|
||||||
entry.version = serverMetadata.getVersion().getGameVersion();
|
|
||||||
entry.protocolVersion = serverMetadata.getVersion().getProtocolVersion();
|
|
||||||
} else {
|
|
||||||
entry.version = "multiplayer.status.old";
|
entry.version = "multiplayer.status.old";
|
||||||
entry.protocolVersion = 0;
|
entry.protocolVersion = 0;
|
||||||
}
|
});
|
||||||
|
serverMetadata.players().ifPresentOrElse((players) -> {
|
||||||
|
entry.playerCountLabel = getPlayerCountLabel(players.online(), players.max());
|
||||||
|
entry.playerCount = players.online();
|
||||||
|
if (!players.sample().isEmpty()) {
|
||||||
|
List<Text> list = new ArrayList(players.sample().size());
|
||||||
|
Iterator var3 = players.sample().iterator();
|
||||||
|
|
||||||
if (serverMetadata.getPlayers() != null) {
|
while (var3.hasNext()) {
|
||||||
entry.playerCountLabel = ServerListPinger.getPlayerCountLabel(serverMetadata.getPlayers().getOnlinePlayerCount(), serverMetadata.getPlayers().getPlayerLimit());
|
GameProfile gameProfile = (GameProfile) var3.next();
|
||||||
entry.playerCount = serverMetadata.getPlayers().getOnlinePlayerCount();
|
|
||||||
entry.playercountMax = serverMetadata.getPlayers().getPlayerLimit();
|
|
||||||
List<Text> list = Lists.newArrayList();
|
|
||||||
if (ArrayUtils.isNotEmpty(serverMetadata.getPlayers().getSample())) {
|
|
||||||
GameProfile[] var4 = serverMetadata.getPlayers().getSample();
|
|
||||||
|
|
||||||
for (GameProfile gameProfile : var4) {
|
|
||||||
list.add(Text.literal(gameProfile.getName()));
|
list.add(Text.literal(gameProfile.getName()));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (serverMetadata.getPlayers().getSample().length < serverMetadata.getPlayers().getOnlinePlayerCount()) {
|
if (players.sample().size() < players.online()) {
|
||||||
list.add(Text.translatable("multiplayer.status.and_more", serverMetadata.getPlayers().getOnlinePlayerCount() - serverMetadata.getPlayers().getSample().length));
|
list.add(Text.translatable("multiplayer.status.and_more", players.online() - players.sample().size()));
|
||||||
}
|
}
|
||||||
|
|
||||||
entry.playerListSummary = list;
|
entry.playerListSummary = list;
|
||||||
}
|
|
||||||
} else {
|
|
||||||
entry.playerCountLabel = "multiplayer.status.unknown";
|
|
||||||
}
|
|
||||||
|
|
||||||
String string = null;
|
|
||||||
if (serverMetadata.getFavicon() != null) {
|
|
||||||
String string2 = serverMetadata.getFavicon();
|
|
||||||
if (string2.startsWith("data:image/png;base64,")) {
|
|
||||||
string = string2.substring("data:image/png;base64," .length());
|
|
||||||
} else {
|
} else {
|
||||||
ServerListPinger.LOGGER.error("Invalid server icon (unknown format)");
|
entry.playerListSummary = List.of();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!Objects.equals(string, entry.getIcon())) {
|
}, () -> entry.playerCountLabel = "multiplayer.status.unknown");
|
||||||
entry.setIcon(string);
|
serverMetadata.favicon().ifPresent((favicon) -> {
|
||||||
runnable.run();
|
if (!Arrays.equals(favicon.iconBytes(), entry.getIcon())) {
|
||||||
}
|
entry.setIcon(favicon.iconBytes());
|
||||||
|
runnable.run();
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
this.startTime = Util.getMeasuringTimeMs();
|
this.startTime = Util.getMeasuringTimeMs();
|
||||||
clientConnection.send(new QueryPingC2SPacket(this.startTime));
|
clientConnection.send(new QueryPingC2SPacket(this.startTime));
|
||||||
this.sentQuery = true;
|
this.sentQuery = true;
|
||||||
@@ -168,17 +154,18 @@ public class ServerListPinger {
|
|||||||
notifyDisconnectListeners();
|
notifyDisconnectListeners();
|
||||||
}
|
}
|
||||||
|
|
||||||
public ClientConnection getConnection() {
|
public boolean isConnectionOpen() {
|
||||||
return clientConnection;
|
return clientConnection.isOpen();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
try {
|
try {
|
||||||
clientConnection.send(new HandshakeC2SPacket(serverAddress.getAddress(), serverAddress.getPort(), NetworkState.STATUS));
|
clientConnection.send(new HandshakeC2SPacket(serverAddress.getAddress(), serverAddress.getPort(), NetworkState.STATUS));
|
||||||
clientConnection.send(new QueryRequestC2SPacket());
|
clientConnection.send(new QueryRequestC2SPacket());
|
||||||
} catch (Throwable var6) {
|
} catch (Throwable var8) {
|
||||||
LOGGER.error("Couldn't send handshake", var6);
|
LOGGER.error("Failed to ping server {}", serverAddress, var8);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ping(final MServerInfo serverInfo) {
|
private void ping(final MServerInfo serverInfo) {
|
||||||
@@ -187,7 +174,7 @@ public class ServerListPinger {
|
|||||||
protected void initChannel(Channel channel) {
|
protected void initChannel(Channel channel) {
|
||||||
try {
|
try {
|
||||||
channel.config().setOption(ChannelOption.TCP_NODELAY, true);
|
channel.config().setOption(ChannelOption.TCP_NODELAY, true);
|
||||||
} catch (ChannelException var3) {
|
} catch (ChannelException ignored) {
|
||||||
}
|
}
|
||||||
|
|
||||||
channel.pipeline().addLast(new SimpleChannelInboundHandler<ByteBuf>() {
|
channel.pipeline().addLast(new SimpleChannelInboundHandler<ByteBuf>() {
|
||||||
@@ -199,7 +186,7 @@ public class ServerListPinger {
|
|||||||
byteBuf.writeByte(254);
|
byteBuf.writeByte(254);
|
||||||
byteBuf.writeByte(1);
|
byteBuf.writeByte(1);
|
||||||
byteBuf.writeByte(250);
|
byteBuf.writeByte(250);
|
||||||
char[] cs = "MC|PingHost" .toCharArray();
|
char[] cs = "MC|PingHost".toCharArray();
|
||||||
byteBuf.writeShort(cs.length);
|
byteBuf.writeShort(cs.length);
|
||||||
char[] var4 = cs;
|
char[] var4 = cs;
|
||||||
int var5 = cs.length;
|
int var5 = cs.length;
|
||||||
@@ -235,7 +222,7 @@ public class ServerListPinger {
|
|||||||
if (s == 255) {
|
if (s == 255) {
|
||||||
String string = new String(byteBuf.readBytes(byteBuf.readShort() * 2).array(), StandardCharsets.UTF_16BE);
|
String string = new String(byteBuf.readBytes(byteBuf.readShort() * 2).array(), StandardCharsets.UTF_16BE);
|
||||||
String[] strings = Iterables.toArray(ServerListPinger.ZERO_SPLITTER.split(string), String.class);
|
String[] strings = Iterables.toArray(ServerListPinger.ZERO_SPLITTER.split(string), String.class);
|
||||||
if ("§1" .equals(strings[0])) {
|
if ("§1".equals(strings[0])) {
|
||||||
String string2 = strings[2];
|
String string2 = strings[2];
|
||||||
String string3 = strings[3];
|
String string3 = strings[3];
|
||||||
int j = MathHelper.parseInt(strings[4], -1);
|
int j = MathHelper.parseInt(strings[4], -1);
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ package anticope.rejects.utils.server;
|
|||||||
|
|
||||||
import anticope.rejects.gui.servers.ServerFinderScreen;
|
import anticope.rejects.gui.servers.ServerFinderScreen;
|
||||||
|
|
||||||
import java.net.UnknownHostException;
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.concurrent.atomic.AtomicInteger;
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
|
|
||||||
|
|||||||
@@ -14,6 +14,7 @@
|
|||||||
"LivingEntityRendererMixin",
|
"LivingEntityRendererMixin",
|
||||||
"MultiplayerScreenAccessor",
|
"MultiplayerScreenAccessor",
|
||||||
"MultiplayerScreenMixin",
|
"MultiplayerScreenMixin",
|
||||||
|
"PlayerEntityMixin",
|
||||||
"PlayerMoveC2SPacketAccessor",
|
"PlayerMoveC2SPacketAccessor",
|
||||||
"ServerListAccessor",
|
"ServerListAccessor",
|
||||||
"StructureVoidBlockMixin",
|
"StructureVoidBlockMixin",
|
||||||
|
|||||||
Reference in New Issue
Block a user