diff --git a/.github/workflows/dev_build.yml b/.github/workflows/dev_build.yml
index 01af0fd..b19cfff 100644
--- a/.github/workflows/dev_build.yml
+++ b/.github/workflows/dev_build.yml
@@ -8,8 +8,8 @@ jobs:
- uses: actions/checkout@v6
- uses: actions/setup-java@v5
with:
- java-version: 21
- distribution: adopt
+ java-version: 25
+ distribution: temurin
- name: Make gradlew executable
run: chmod +x ./gradlew
@@ -26,8 +26,8 @@ jobs:
uses: marvinpinto/action-automatic-releases@latest
with:
repo_token: '${{ secrets.GITHUB_TOKEN }}'
- automatic_release_tag: "1.21.11_1.0.9.5"
+ automatic_release_tag: "26.1.2_1.0.9.5"
prerelease: true
- title: "1.21.11 | 1.0.9.5"
+ title: "26.1.2 | 1.0.9.5"
files: |
./build/libs/*.jar
diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml
index 46433df..187133b 100644
--- a/.github/workflows/pull_request.yml
+++ b/.github/workflows/pull_request.yml
@@ -8,8 +8,8 @@ jobs:
- uses: actions/checkout@v6
- uses: actions/setup-java@v5
with:
- java-version: 21
- distribution: adopt
+ java-version: 25
+ distribution: temurin
- name: Make gradlew executable
run: chmod +x ./gradlew
- name: Build
diff --git a/README.md b/README.md
index 74e1600..c8ff9a3 100644
--- a/README.md
+++ b/README.md
@@ -9,7 +9,7 @@
-
+
@@ -30,7 +30,7 @@
| **Spider+** | **Spider for Anti-Cheats** | **Matrix, Vulcan** |
| **Jesus+** | **Jesus for Anti-Cheats** | **Matrix, Vulcan** |
| **No Slow+** | **No Slow for Anti-Cheats** | **Matrix, Vulcan, Grim, NCP** |
-| **Fast Climb+** | **Fast Climb for Anti-Cheats** | **Spartan** |
+| **Fast Climb+** | **Fast Climb for Anti-Cheats** | **Spartan** |
| **Gui Move+** | **Gui Move for Anti-Cheats** | **Matrix, NCP** |
| **Timer+** | **Timer for Anti-Cheats** | **NCP, Intave, Vulcan** |
| **Safe mine** | **Prevents player from lava** | **Matrix** |
@@ -46,10 +46,10 @@
| **Teams** | **Does not beat teammates on BedWars and other modes** | |
## Integrations
-| Module | Description |
-|---------------------------------------|---------------------------------------------------|
-| **Chest Tracker (Unofficial Port)** | **Colors support, background disabler, y offset** |
-| **Xaero's MiniMap** | **Support baritone control on context** |
+| Module | Description |
+|-------------------------------------|---------------------------------------------------|
+| **Chest Tracker (Unofficial Port)** | **Colors support, background disabler, y offset** |
+| **Xaero's MiniMap** | **Support baritone control on context** |
## Commands
| Command | Description | Bypasses anti cheats |
@@ -77,9 +77,9 @@
# Installation Guide
1. Install [Minecraft](https://www.minecraft.net)
-2. Install [Fabric](https://fabricmc.net) and [Fabric API](https://www.curseforge.com/minecraft/mc-mods/fabric-api) for your version of minecraft
-3. Download [Meteor Client](https://meteorclient.com) for your version of minecraft
-4. Download [Meteor Plus](https://github.com/MeteorClientPlus/MeteorPlus/releases) for your version of minecraft
+2. Install [Fabric](https://fabricmc.net) and [Fabric API](https://www.curseforge.com/minecraft/mc-mods/fabric-api) for your version of Minecraft
+3. Download [Meteor Client](https://meteorclient.com) for your version of Minecraft
+4. Download [Meteor Plus](https://github.com/MeteorClientPlus/MeteorPlus/releases) for your version of Minecraft
5. Place the Meteor Client and Meteor Plus in your mods folder
A: Make Commit we welcome anyone who makes a useful contribution to our free open source product
diff --git a/build.gradle.kts b/build.gradle.kts
index 8a5d901..ef0368e 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -15,37 +15,13 @@ configurations.all {
}
repositories {
- maven {
- url = uri("https://jm.gserv.me/repository/maven-public/")
- content {
- includeGroup("info.journeymap")
- }
- }
+ // Modrinth
maven {
url = uri("https://api.modrinth.com/maven/")
content {
includeGroup("maven.modrinth")
}
}
- maven {
- url = uri("https://www.cursemaven.com")
- }
- maven {
- url = uri("https://masa.dy.fi/maven")
- }
- // YACL
- maven {
- url = uri("https://maven.isxander.dev/releases")
- }
- // YACL Snapshots
- maven {
- name = "Xander Snapshot Maven"
- url = uri("https://maven.isxander.dev/snapshots")
- }
- // Where Is It, JackFredLib
- maven {
- url = uri("https://maven.jackf.red/releases/")
- }
// Meteor Client
maven {
name = "meteor-maven"
@@ -55,6 +31,11 @@ repositories {
name = "meteor-maven-snapshots"
url = uri("https://maven.meteordev.org/snapshots")
}
+ // XaeroLib
+ maven {
+ name = "Xaero's Maven"
+ url = uri("https://chocolateminecraft.com/maven")
+ }
mavenCentral()
gradlePluginPortal()
}
@@ -62,28 +43,40 @@ repositories {
dependencies {
// Fabric
minecraft(libs.minecraft)
- mappings(variantOf(libs.yarn) { classifier("v2") })
- modImplementation(libs.fabric.loader)
+ implementation(libs.fabric.loader)
// Fabric API
- modImplementation(libs.fabric.api)
+ implementation(libs.fabric.api)
// Mixin extras
annotationProcessor("io.github.llamalad7:mixinextras-fabric:0.5.3")
// Meteor Client
- modImplementation(files("libs\\baritone-unoptimized-fabric-1.15.0-2-gf7a53504.jar"))
- modImplementation(libs.meteor.client)
- implementation(libs.starscript)
- implementation(libs.orbit)
+ implementation(libs.baritone)
+ implementation(libs.meteor.client)
// Xaero's Mods
- modCompileOnly(libs.xwm) // Xaero's World Map
- modCompileOnly(libs.xmm) // Xaero's Minimap
- modCompileOnly(files("libs\\xaerolib-fabric-1.21.11-1.0.38.jar"))
+ compileOnly(libs.xlib) // XaeroLib
+ compileOnly(libs.xwm) // Xaero's World Map
+ compileOnly(libs.xmm) // Xaero's Minimap
// Chest Tracker
- modImplementation(libs.whereisit)
+ implementation(libs.whereisit)
+}
+
+java {
+ toolchain {
+ languageVersion.set(JavaLanguageVersion.of(libs.versions.jdk.get().toInt()))
+ }
+}
+
+fun toMinecraftCompat(version: String): String {
+ val match = Regex("""^(\d{2})\.([1-9]\d*)(?:\.([1-9]\d*))?$""")
+ .matchEntire(version)
+ ?: error("Invalid Minecraft version format: $version. Expected YY.D or YY.D.H")
+
+ val (year, drop, _) = match.destructured
+ return "~$year.$drop"
}
loom {
@@ -94,10 +87,11 @@ tasks {
processResources {
val propertyMap = mapOf(
"version" to project.version,
- "mc_version" to libs.versions.minecraft.get(),
+ "minecraft_version" to libs.versions.minecraft.get(),
+ "jdk_version" to libs.versions.jdk.get(),
"gh_hash" to (System.getenv("GITHUB_SHA") ?: ""),
)
-
+
filesMatching("fabric.mod.json") {
expand (propertyMap)
}
@@ -108,12 +102,4 @@ tasks {
rename { "${it}_${licenseSuffix}" }
}
}
- java {
- sourceCompatibility = JavaVersion.VERSION_21
- targetCompatibility = JavaVersion.VERSION_21
- }
- withType {
- options.encoding = "UTF-8"
- options.release = 21
- }
-}
\ No newline at end of file
+}
diff --git a/donations.md b/donations.md
index b730c4d..443c08b 100644
--- a/donations.md
+++ b/donations.md
@@ -1,6 +1,6 @@
## Donation addresses
-| Cryptocurrency | Addresses |
-|--------------------|-----------------------------------------------------------------------|
-| **Bitcoin (BTC)** | **bc1qyg8u8r7z9235h7y9982kuz85wp582xdmkhm0hc** |
-| **Ethereum (EHT)** | **0x70B44EEdf0614d9fAaa2BC74f342E056919cEA2E** |
-| **Monero (XMR)** | **49UpmgkdVKfF8deRceETiShuvW8BLGA59RkTRKbiwnxD4RAPUFebaztFQH9AbQuFxi5NjKoAbFcXpVRUosnXhTJ3PXrKAqv** |
+| Cryptocurrency | Addresses |
+|--------------------|-----------------------------------------------------------------------------------------------------|
+| **Bitcoin (BTC)** | **bc1qyg8u8r7z9235h7y9982kuz85wp582xdmkhm0hc** |
+| **Ethereum (EHT)** | **0x70B44EEdf0614d9fAaa2BC74f342E056919cEA2E** |
+| **Monero (XMR)** | **49UpmgkdVKfF8deRceETiShuvW8BLGA59RkTRKbiwnxD4RAPUFebaztFQH9AbQuFxi5NjKoAbFcXpVRUosnXhTJ3PXrKAqv** |
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index d5937f9..7bd7747 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -1,41 +1,36 @@
[versions]
-mod-version = "1.21.11_1.0.9.5"
+mod-version = "26.1.2_1.0.9.5"
# Fabric (https://fabricmc.net/develop)
-minecraft = "1.21.11"
-yarn-mappings = "1.21.11+build.3"
-fabric-loader = "0.18.4"
-fabric-api = "0.140.2+1.21.11"
+jdk = "25"
+minecraft = "26.1.2"
+fabric-loader = "0.19.2"
+fabric-api = "0.147.0+26.1.2"
# Plugins
# Loom (https://github.com/FabricMC/fabric-loom)
-loom = "1.14-SNAPSHOT"
+loom = "1.16-SNAPSHOT"
# Meteor (https://github.com/MeteorDevelopment/meteor-client)
-meteor = "1.21.11-SNAPSHOT"
-# Starscript (https://github.com/MeteorDevelopment/starscript)
-starscript = "0.2.5"
-# Orbit (https://github.com/MeteorDevelopment/orbit)
-orbit = "0.2.4"
+meteor = "26.1.2-SNAPSHOT"
+baritone = "26.1-SNAPSHOT"
# Xaero's Mods
+# XaeroLib
+xlib = "1.1.13"
# Xaero's World Map (https://modrinth.com/mod/xaeros-world-map/versions)
-xwm = "1.40.2_Fabric_1.21.11"
+xwm = "1.40.14"
# Xaero's Minimap (https://modrinth.com/mod/xaeros-minimap/versions)
-xmm = "25.3.2_Fabric_1.21.11"
+xmm = "25.3.11"
# Where Is It (https://modrinth.com/mod/where-is-it-port/versions)
-whereisit = "2.7.3+"
-# YetAnotherConfigLib (https://github.com/ponuing/WhereIsIt/blob/1.21.11/gradle.properties)
-yacl = "3.8.1+1.21.11-fabric"
-
-# MaLiLib (https://www.curseforge.com/minecraft/mc-mods/malilib)
-malilib = "7130809"
+whereisit = "2.7.4+26.1"
+# YetAnotherConfigLib (https://github.com/ponuing/WhereIsIt/blob/26.1/gradle.properties)
+yacl = "3.9.0+26.1-fabric"
[libraries]
# Fabric base
minecraft = { module = "com.mojang:minecraft", version.ref = "minecraft" }
-yarn = { module = "net.fabricmc:yarn", version.ref = "yarn-mappings" }
fabric-loader = { module = "net.fabricmc:fabric-loader", version.ref = "fabric-loader" }
# Fabric API
@@ -43,20 +38,17 @@ fabric-api = { module = "net.fabricmc.fabric-api:fabric-api", version.ref = "fab
# Meteor Client
meteor-client = { module = "meteordevelopment:meteor-client", version.ref = "meteor" }
-starscript = { module = "org.meteordev:starscript", version.ref = "starscript" }
-orbit = { module = "meteordevelopment:orbit", version.ref = "orbit" }
+baritone = { module = "meteordevelopment:baritone", version.ref = "baritone" }
# Xaero's Mods
-xwm = { module = "maven.modrinth:xaeros-world-map", version.ref = "xwm" }
-xmm = { module = "maven.modrinth:xaeros-minimap", version.ref = "xmm" }
+xlib = { module = "xaero.lib:xaerolib-fabric-26.1.2", version.ref = "xlib" }
+xwm = { module = "xaero.map:xaeroworldmap-fabric-26.1.2", version.ref = "xwm" }
+xmm = { module = "xaero.minimap:xaerominimap-fabric-26.1.2", version.ref = "xmm" }
# Where Is It
whereisit = { module = "maven.modrinth:where-is-it-port", version.ref = "whereisit" }
# YetAnotherConfigLib
-yacl = { module = "dev.isxander.yacl:yet-another-config-lib-fabric", version.ref = "yacl" }
-
-# MaLiLib
-malilib = { module = "curse.maven:malilib-303119", version.ref = "malilib" }
+yacl = { module = "maven.modrinth:yacl", version.ref = "yacl" }
[plugins]
-fabric-loom = { id = "fabric-loom", version.ref = "loom" }
\ No newline at end of file
+fabric-loom = { id = "net.fabricmc.fabric-loom", version.ref = "loom" }
diff --git a/libs/baritone-unoptimized-fabric-1.15.0-2-gf7a53504.jar b/libs/baritone-unoptimized-fabric-1.15.0-2-gf7a53504.jar
deleted file mode 100644
index f857ee9..0000000
Binary files a/libs/baritone-unoptimized-fabric-1.15.0-2-gf7a53504.jar and /dev/null differ
diff --git a/libs/xaerolib-fabric-1.21.11-1.0.38.jar b/libs/xaerolib-fabric-1.21.11-1.0.38.jar
deleted file mode 100644
index b627635..0000000
Binary files a/libs/xaerolib-fabric-1.21.11-1.0.38.jar and /dev/null differ
diff --git a/meteor-addon-list.json b/meteor-addon-list.json
index f5ac010..9123a5d 100644
--- a/meteor-addon-list.json
+++ b/meteor-addon-list.json
@@ -16,7 +16,8 @@
"1.21.8",
"1.21.9",
"1.21.10",
- "1.21.11"
+ "1.21.11",
+ "26.1.2"
],
"icon": "https://github.com/MeteorClientPlus/MeteorPlus/blob/1.21.9/src/main/resources/assets/meteorplus/logo.png?raw=true",
"discord": "https://discord.gg/N3gqYc7GRS",
diff --git a/settings.gradle.kts b/settings.gradle.kts
index 7eba49c..6010fd3 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -9,4 +9,8 @@ pluginManagement {
}
}
-rootProject.name = "meteor-plus"
\ No newline at end of file
+plugins {
+ id("org.gradle.toolchains.foojay-resolver-convention") version "1.0.0"
+}
+
+rootProject.name = "meteor-plus"
diff --git a/src/main/java/nekiplay/MixinPlugin.java b/src/main/java/nekiplay/MixinPlugin.java
index 31d9a3c..9437879 100644
--- a/src/main/java/nekiplay/MixinPlugin.java
+++ b/src/main/java/nekiplay/MixinPlugin.java
@@ -6,6 +6,7 @@
import org.slf4j.LoggerFactory;
import org.spongepowered.asm.mixin.extensibility.IMixinConfigPlugin;
import org.spongepowered.asm.mixin.extensibility.IMixinInfo;
+
import java.util.List;
import java.util.Set;
@@ -25,11 +26,9 @@ public class MixinPlugin implements IMixinConfigPlugin {
public static boolean isFutureClient = false; // Other cheat client
public static boolean isBaritonePresent = false; // Baritone for auto walking
- public static boolean isJourneyMapPresent = false; // Currently not used
- public static boolean isXaeroWorldMapresent = false; // Extension for map and baritone
- public static boolean isXaeroMiniMapresent = false; // Extension for map and baritone
- public static boolean isXaeroPlusMapresent = false; // other extension for map and baritone
- public static boolean isLitematicaMapresent = false; // Detect litematica mod
+ public static boolean isXaeroWorldMapPresent = false; // Extension for map and baritone
+ public static boolean isXaeroMiniMapPresent = false; // Extension for map and baritone
+ public static boolean isXaeroPlusMapPresent = false; // other extension for map and baritone
public static boolean isWhereIsIt = false; // Utility for ChestTracker for render 3d text
@Override
@@ -45,11 +44,9 @@ public void onLoad(String mixinPackage) {
isZewo2 = loader.isModLoaded("zewo2");
isBaritonePresent = loader.isModLoaded("baritone-meteor") || loader.isModLoaded("baritone");
- isJourneyMapPresent = loader.isModLoaded("journeymap");
- isXaeroWorldMapresent = loader.isModLoaded("xaeroworldmap");
- isXaeroMiniMapresent = loader.isModLoaded("xaerominimap");
- isXaeroPlusMapresent = loader.isModLoaded("xaeroplus");
- isLitematicaMapresent = loader.isModLoaded("litematica");
+ isXaeroWorldMapPresent = loader.isModLoaded("xaeroworldmap");
+ isXaeroMiniMapPresent = loader.isModLoaded("xaerominimap");
+ isXaeroPlusMapPresent = loader.isModLoaded("xaeroplus");
isWhereIsIt = loader.isModLoaded("whereisit");
}
@@ -62,30 +59,24 @@ public String getRefMapperConfig() {
public boolean shouldApplyMixin(String targetClassName, String mixinClassName) {
if (!mixinClassName.startsWith(mixinPackageMeteorPlus)) {
throw new RuntimeException(METEOR_LOGPREFIX_MIXIN + " " + mixinClassName + " is not in the mixin package");
- }
- else if (mixinClassName.startsWith(mixinPackageMeteorPlus + ".meteorclient")) {
+ } else if (mixinClassName.startsWith(mixinPackageMeteorPlus + ".meteorclient")) {
if (mixinClassName.contains("FreecamMixin") || mixinClassName.contains("WaypointsModuleMixin")) {
return isBaritonePresent && isMeteorClient;
}
- return isMeteorClient;
- }
- else if (mixinClassName.startsWith(mixinPackageMeteorPlus + ".journeymap")) {
- return isBaritonePresent && isJourneyMapPresent && isMeteorClient;
- }
- else if (mixinClassName.startsWith(mixinPackageMeteorPlus + ".xaero.worldmap")) {
- return isBaritonePresent && isXaeroWorldMapresent && isMeteorClient;
- }
- else if (mixinClassName.startsWith(mixinPackageMeteorPlus + ".whereisit")) {
- return isWhereIsIt && isMeteorClient;
- }
- else if (mixinClassName.startsWith(mixinPackageMeteorPlus + ".minecraft")) {
+ return isMeteorClient;
+ } else if (mixinClassName.startsWith(mixinPackageMeteorPlus + ".xaero.worldmap")) {
+ return isBaritonePresent && isXaeroWorldMapPresent && isMeteorClient;
+ } else if (mixinClassName.startsWith(mixinPackageMeteorPlus + ".whereisit")) {
+ return isWhereIsIt && isMeteorClient;
+ } else if (mixinClassName.startsWith(mixinPackageMeteorPlus + ".minecraft")) {
return isMeteorClient;
}
return false;
}
@Override
- public void acceptTargets(Set myTargets, Set otherTargets) {}
+ public void acceptTargets(Set myTargets, Set otherTargets) {
+ }
@Override
public List getMixins() {
@@ -93,9 +84,11 @@ public List getMixins() {
}
@Override
- public void preApply(String targetClassName, ClassNode targetClass, String mixinClassName, IMixinInfo mixinInfo) {}
+ public void preApply(String targetClassName, ClassNode targetClass, String mixinClassName, IMixinInfo mixinInfo) {
+ }
@Override
- public void postApply(String targetClassName, ClassNode targetClass, String mixinClassName, IMixinInfo mixinInfo) {}
+ public void postApply(String targetClassName, ClassNode targetClass, String mixinClassName, IMixinInfo mixinInfo) {
+ }
}
diff --git a/src/main/java/nekiplay/main/events/ClickWindowEvent.java b/src/main/java/nekiplay/main/events/ClickWindowEvent.java
index 5b32ae1..f3aa5c7 100644
--- a/src/main/java/nekiplay/main/events/ClickWindowEvent.java
+++ b/src/main/java/nekiplay/main/events/ClickWindowEvent.java
@@ -1,6 +1,6 @@
package nekiplay.main.events;
-import net.minecraft.screen.slot.SlotActionType;
+import net.minecraft.world.inventory.ContainerInput;
public class ClickWindowEvent extends Cancellable {
private static final ClickWindowEvent INSTANCE = new ClickWindowEvent();
@@ -8,12 +8,13 @@ public class ClickWindowEvent extends Cancellable {
public int windowId;
public int slotId;
public int mouseButtonClicked;
- public SlotActionType mode;
+ public ContainerInput mode;
- public static ClickWindowEvent get(int windowId, int slotId, int mouseButtonClicked, SlotActionType mode) {
+ public static ClickWindowEvent get(int windowId, int slotId, int mouseButtonClicked, ContainerInput mode) {
INSTANCE.setCancelled(false);
INSTANCE.windowId = windowId;
- INSTANCE.mouseButtonClicked = mouseButtonClicked;;
+ INSTANCE.mouseButtonClicked = mouseButtonClicked;
+ ;
INSTANCE.slotId = slotId;
INSTANCE.mode = mode;
return INSTANCE;
diff --git a/src/main/java/nekiplay/main/events/PlayerUseMultiplierEvent.java b/src/main/java/nekiplay/main/events/PlayerUseMultiplierEvent.java
index b7da138..54d7814 100644
--- a/src/main/java/nekiplay/main/events/PlayerUseMultiplierEvent.java
+++ b/src/main/java/nekiplay/main/events/PlayerUseMultiplierEvent.java
@@ -3,19 +3,24 @@
public class PlayerUseMultiplierEvent {
private float _forward = 0.2f;
private float _sideways = 0.2f;
+
public PlayerUseMultiplierEvent(float forward, float sideways) {
this._forward = forward;
this._sideways = sideways;
}
+
public void setForward(float forward) {
_forward = forward;
}
+
public float getForward() {
return _forward;
}
+
public void setSideways(float sideways) {
_sideways = sideways;
}
+
public float getSideways() {
return _sideways;
}
diff --git a/src/main/java/nekiplay/main/events/RenderSignTextEvent.java b/src/main/java/nekiplay/main/events/RenderSignTextEvent.java
index ddb887e..17bc230 100644
--- a/src/main/java/nekiplay/main/events/RenderSignTextEvent.java
+++ b/src/main/java/nekiplay/main/events/RenderSignTextEvent.java
@@ -1,23 +1,23 @@
package nekiplay.main.events;
-import net.minecraft.block.entity.SignText;
-import net.minecraft.client.render.VertexConsumerProvider;
-import net.minecraft.client.util.math.MatrixStack;
-import net.minecraft.util.math.BlockPos;
+import com.mojang.blaze3d.vertex.PoseStack;
+import net.minecraft.client.renderer.MultiBufferSource;
+import net.minecraft.core.BlockPos;
+import net.minecraft.world.level.block.entity.SignText;
public class RenderSignTextEvent {
private static final RenderSignTextEvent INSTANCE = new RenderSignTextEvent();
public BlockPos pos;
public SignText signText;
- public MatrixStack matrices;
- public VertexConsumerProvider vertexConsumers;
+ public PoseStack matrices;
+ public MultiBufferSource vertexConsumers;
public int light;
public int lineHeight;
public int lineWidth;
public boolean front;
- public static RenderSignTextEvent get(BlockPos pos, SignText signText, MatrixStack matrices, VertexConsumerProvider vertexConsumers, int light, int lineHeight, int lineWidth, boolean front) {
+ public static RenderSignTextEvent get(BlockPos pos, SignText signText, PoseStack matrices, MultiBufferSource vertexConsumers, int light, int lineHeight, int lineWidth, boolean front) {
INSTANCE.pos = pos;
INSTANCE.signText = signText;
INSTANCE.matrices = matrices;
diff --git a/src/main/java/nekiplay/main/events/hud/DebugDrawTextEvent.java b/src/main/java/nekiplay/main/events/hud/DebugDrawTextEvent.java
index e270af5..1344e03 100644
--- a/src/main/java/nekiplay/main/events/hud/DebugDrawTextEvent.java
+++ b/src/main/java/nekiplay/main/events/hud/DebugDrawTextEvent.java
@@ -1,7 +1,6 @@
package nekiplay.main.events.hud;
import nekiplay.main.events.Cancellable;
-import net.minecraft.util.hit.HitResult;
import java.util.ArrayList;
import java.util.List;
@@ -11,9 +10,15 @@ public class DebugDrawTextEvent extends Cancellable {
private static final DebugDrawTextEvent INSTANCE = new DebugDrawTextEvent();
private List lines = new ArrayList();
- public List getLines() { return lines; }
+ public List getLines() {
+ return lines;
+ }
+
private boolean isLeft = false;
- public boolean isLeft() { return isLeft; }
+
+ public boolean isLeft() {
+ return isLeft;
+ }
public static DebugDrawTextEvent get(List lines, boolean isLeft) {
diff --git a/src/main/java/nekiplay/main/events/hud/RenderArmorBarEvent.java b/src/main/java/nekiplay/main/events/hud/RenderArmorBarEvent.java
index 11bec42..f2e1d4e 100644
--- a/src/main/java/nekiplay/main/events/hud/RenderArmorBarEvent.java
+++ b/src/main/java/nekiplay/main/events/hud/RenderArmorBarEvent.java
@@ -1,17 +1,19 @@
package nekiplay.main.events.hud;
+
import nekiplay.main.events.Cancellable;
-import net.minecraft.client.gui.DrawContext;
-import net.minecraft.entity.player.PlayerEntity;
+import net.minecraft.client.gui.GuiGraphicsExtractor;
+import net.minecraft.world.entity.player.Player;
public class RenderArmorBarEvent extends Cancellable {
private static final RenderArmorBarEvent INSTANCE = new RenderArmorBarEvent();
- private DrawContext context;
- private PlayerEntity player;
+ private GuiGraphicsExtractor context;
+ private Player player;
private int i;
private int j;
private int k;
private int x;
- public static RenderArmorBarEvent get(DrawContext context, PlayerEntity player, int i, int j, int k, int x) {
+
+ public static RenderArmorBarEvent get(GuiGraphicsExtractor context, Player player, int i, int j, int k, int x) {
INSTANCE.context = context;
INSTANCE.player = player;
INSTANCE.i = i;
diff --git a/src/main/java/nekiplay/main/events/hud/RenderExperienceBarEvent.java b/src/main/java/nekiplay/main/events/hud/RenderExperienceBarEvent.java
index 98d71db..470c9a1 100644
--- a/src/main/java/nekiplay/main/events/hud/RenderExperienceBarEvent.java
+++ b/src/main/java/nekiplay/main/events/hud/RenderExperienceBarEvent.java
@@ -1,12 +1,14 @@
package nekiplay.main.events.hud;
+
import nekiplay.main.events.Cancellable;
-import net.minecraft.client.gui.DrawContext;
+import net.minecraft.client.gui.GuiGraphicsExtractor;
public class RenderExperienceBarEvent extends Cancellable {
private static final RenderExperienceBarEvent INSTANCE = new RenderExperienceBarEvent();
- private DrawContext context;
+ private GuiGraphicsExtractor context;
private int x;
- public static RenderExperienceBarEvent get(DrawContext context, int x) {
+
+ public static RenderExperienceBarEvent get(GuiGraphicsExtractor context, int x) {
INSTANCE.context = context;
INSTANCE.x = x;
return INSTANCE;
diff --git a/src/main/java/nekiplay/main/events/hud/RenderExperienceLevelEvent.java b/src/main/java/nekiplay/main/events/hud/RenderExperienceLevelEvent.java
index a7a7705..c35d1fb 100644
--- a/src/main/java/nekiplay/main/events/hud/RenderExperienceLevelEvent.java
+++ b/src/main/java/nekiplay/main/events/hud/RenderExperienceLevelEvent.java
@@ -1,14 +1,15 @@
package nekiplay.main.events.hud;
+
import nekiplay.main.events.Cancellable;
-import net.minecraft.client.gui.DrawContext;
-import net.minecraft.client.render.RenderTickCounter;
-import net.minecraft.entity.player.PlayerEntity;
+import net.minecraft.client.DeltaTracker;
+import net.minecraft.client.gui.GuiGraphicsExtractor;
public class RenderExperienceLevelEvent extends Cancellable {
private static final RenderExperienceLevelEvent INSTANCE = new RenderExperienceLevelEvent();
- private DrawContext context;
- private RenderTickCounter tickCounter;
- public static RenderExperienceLevelEvent get(DrawContext context, RenderTickCounter tickCounter) {
+ private GuiGraphicsExtractor context;
+ private DeltaTracker tickCounter;
+
+ public static RenderExperienceLevelEvent get(GuiGraphicsExtractor context, DeltaTracker tickCounter) {
INSTANCE.context = context;
INSTANCE.tickCounter = tickCounter;
return INSTANCE;
diff --git a/src/main/java/nekiplay/main/events/hud/RenderFoodBarEvent.java b/src/main/java/nekiplay/main/events/hud/RenderFoodBarEvent.java
index 67d6f3f..771992d 100644
--- a/src/main/java/nekiplay/main/events/hud/RenderFoodBarEvent.java
+++ b/src/main/java/nekiplay/main/events/hud/RenderFoodBarEvent.java
@@ -1,16 +1,17 @@
package nekiplay.main.events.hud;
+
import nekiplay.main.events.Cancellable;
-import net.minecraft.client.gui.DrawContext;
-import net.minecraft.client.render.RenderTickCounter;
-import net.minecraft.entity.player.PlayerEntity;
+import net.minecraft.client.gui.GuiGraphicsExtractor;
+import net.minecraft.world.entity.player.Player;
public class RenderFoodBarEvent extends Cancellable {
private static final RenderFoodBarEvent INSTANCE = new RenderFoodBarEvent();
- private DrawContext context;
- private PlayerEntity player;
+ private GuiGraphicsExtractor context;
+ private Player player;
private int top;
private int right;
- public static RenderFoodBarEvent get(DrawContext context, PlayerEntity player, int top, int right) {
+
+ public static RenderFoodBarEvent get(GuiGraphicsExtractor context, Player player, int top, int right) {
INSTANCE.context = context;
INSTANCE.player = player;
INSTANCE.top = top;
diff --git a/src/main/java/nekiplay/main/events/hud/RenderHealthBarEvent.java b/src/main/java/nekiplay/main/events/hud/RenderHealthBarEvent.java
index bd67a7c..7f522ac 100644
--- a/src/main/java/nekiplay/main/events/hud/RenderHealthBarEvent.java
+++ b/src/main/java/nekiplay/main/events/hud/RenderHealthBarEvent.java
@@ -1,12 +1,13 @@
package nekiplay.main.events.hud;
+
import nekiplay.main.events.Cancellable;
-import net.minecraft.client.gui.DrawContext;
-import net.minecraft.entity.player.PlayerEntity;
+import net.minecraft.client.gui.GuiGraphicsExtractor;
+import net.minecraft.world.entity.player.Player;
public class RenderHealthBarEvent extends Cancellable {
private static final RenderHealthBarEvent INSTANCE = new RenderHealthBarEvent();
- private DrawContext context;
- private PlayerEntity player;
+ private GuiGraphicsExtractor context;
+ private Player player;
private int x;
private int y;
private int lines;
@@ -16,7 +17,8 @@ public class RenderHealthBarEvent extends Cancellable {
private int health;
private int absorption;
private boolean blinking;
- public static RenderHealthBarEvent get(DrawContext context, PlayerEntity player, int x, int y, int lines, int regeneratingHeartIndex, float maxHealth, int lastHealth, int health, int absorption, boolean blinking) {
+
+ public static RenderHealthBarEvent get(GuiGraphicsExtractor context, Player player, int x, int y, int lines, int regeneratingHeartIndex, float maxHealth, int lastHealth, int health, int absorption, boolean blinking) {
INSTANCE.context = context;
INSTANCE.player = player;
INSTANCE.x = x;
diff --git a/src/main/java/nekiplay/main/events/hud/RenderMountHealthBarEvent.java b/src/main/java/nekiplay/main/events/hud/RenderMountHealthBarEvent.java
index 3536b2b..31f2e91 100644
--- a/src/main/java/nekiplay/main/events/hud/RenderMountHealthBarEvent.java
+++ b/src/main/java/nekiplay/main/events/hud/RenderMountHealthBarEvent.java
@@ -1,12 +1,13 @@
package nekiplay.main.events.hud;
+
import nekiplay.main.events.Cancellable;
-import net.minecraft.client.gui.DrawContext;
-import net.minecraft.entity.player.PlayerEntity;
+import net.minecraft.client.gui.GuiGraphicsExtractor;
public class RenderMountHealthBarEvent extends Cancellable {
private static final RenderMountHealthBarEvent INSTANCE = new RenderMountHealthBarEvent();
- private DrawContext context;
- public static RenderMountHealthBarEvent get(DrawContext context) {
+ private GuiGraphicsExtractor context;
+
+ public static RenderMountHealthBarEvent get(GuiGraphicsExtractor context) {
INSTANCE.context = context;
return INSTANCE;
}
diff --git a/src/main/java/nekiplay/main/events/packets/PacketEvent.java b/src/main/java/nekiplay/main/events/packets/PacketEvent.java
index ea659cf..8a25514 100644
--- a/src/main/java/nekiplay/main/events/packets/PacketEvent.java
+++ b/src/main/java/nekiplay/main/events/packets/PacketEvent.java
@@ -1,8 +1,8 @@
package nekiplay.main.events.packets;
import nekiplay.main.events.Cancellable;
-import net.minecraft.network.listener.PacketListener;
-import net.minecraft.network.packet.Packet;
+import net.minecraft.network.PacketListener;
+import net.minecraft.network.protocol.Packet;
public class PacketEvent {
public static class Receive extends Cancellable {
diff --git a/src/main/java/nekiplay/main/items/ModItems.java b/src/main/java/nekiplay/main/items/ModItems.java
index ae8d4b7..6452901 100644
--- a/src/main/java/nekiplay/main/items/ModItems.java
+++ b/src/main/java/nekiplay/main/items/ModItems.java
@@ -1,19 +1,26 @@
package nekiplay.main.items;
-import net.minecraft.item.Item;
-import net.minecraft.item.Items;
-import net.minecraft.registry.RegistryKey;
-import net.minecraft.registry.RegistryKeys;
-import net.minecraft.util.Identifier;
+import net.minecraft.core.Registry;
+import net.minecraft.core.registries.BuiltInRegistries;
+import net.minecraft.core.registries.Registries;
+import net.minecraft.resources.Identifier;
+import net.minecraft.resources.ResourceKey;
+import net.minecraft.world.item.Item;
import java.util.function.Function;
public class ModItems {
- public static Item register(String path, Function factory, Item.Settings settings) {
- final RegistryKey- registryKey = RegistryKey.of(RegistryKeys.ITEM, Identifier.of("meteorplus", path));
- return Items.register(registryKey, factory, settings);
+ public static Item register(String path, Function factory, Item.Properties settings) {
+ Identifier id = Identifier.fromNamespaceAndPath("meteorplus", path);
+ ResourceKey
- key = ResourceKey.create(Registries.ITEM, id);
+ return Registry.register(
+ BuiltInRegistries.ITEM,
+ key,
+ factory.apply(settings.setId(key))
+ );
}
+
public static Item METEOR_PLUS_LOGO_ITEM = null;
public static Item METEOR_PLUS_LOGO_MODS_ITEM = null;
@@ -22,11 +29,11 @@ public static Item register(String path, Function factory,
public static Item METEOR_PLUS_MONEY_ITEM = null;
public static void initialize() {
- METEOR_PLUS_LOGO_ITEM = register("logo", Item::new, new Item.Settings());
- METEOR_PLUS_LOGO_MODS_ITEM = register("logo_mods", Item::new, new Item.Settings());
+ METEOR_PLUS_LOGO_ITEM = register("logo", Item::new, new Item.Properties());
+ METEOR_PLUS_LOGO_MODS_ITEM = register("logo_mods", Item::new, new Item.Properties());
- METEOR_PLUS_STAR_ITEM = register("star", Item::new, new Item.Settings());
- METEOR_PLUS_DIAMOND_ITEM = register("diamond", Item::new, new Item.Settings());
- METEOR_PLUS_MONEY_ITEM = register("money", Item::new, new Item.Settings());
+ METEOR_PLUS_STAR_ITEM = register("star", Item::new, new Item.Properties());
+ METEOR_PLUS_DIAMOND_ITEM = register("diamond", Item::new, new Item.Properties());
+ METEOR_PLUS_MONEY_ITEM = register("money", Item::new, new Item.Properties());
}
}
diff --git a/src/main/java/nekiplay/meteorplus/MeteorPlusAddon.java b/src/main/java/nekiplay/meteorplus/MeteorPlusAddon.java
index 18aaa6f..dd74da4 100644
--- a/src/main/java/nekiplay/meteorplus/MeteorPlusAddon.java
+++ b/src/main/java/nekiplay/meteorplus/MeteorPlusAddon.java
@@ -2,49 +2,62 @@
import meteordevelopment.meteorclient.MeteorClient;
import meteordevelopment.meteorclient.addons.GithubRepo;
+import meteordevelopment.meteorclient.addons.MeteorAddon;
import meteordevelopment.meteorclient.commands.Commands;
+import meteordevelopment.meteorclient.systems.hud.HudGroup;
+import meteordevelopment.meteorclient.systems.modules.Category;
+import meteordevelopment.meteorclient.systems.modules.Modules;
import meteordevelopment.meteorclient.systems.modules.misc.BetterChat;
import nekiplay.MixinPlugin;
import nekiplay.main.items.ModItems;
-import nekiplay.meteorplus.features.commands.*;
+import nekiplay.meteorplus.features.commands.ClearInventoryCommand;
+import nekiplay.meteorplus.features.commands.EclipCommand;
+import nekiplay.meteorplus.features.commands.GotoPlusCommand;
+import nekiplay.meteorplus.features.commands.ItemRawIdCommand;
import nekiplay.meteorplus.features.modules.combat.*;
import nekiplay.meteorplus.features.modules.combat.velocity.VelocityPlus;
+import nekiplay.meteorplus.features.modules.integrations.MapIntegration;
import nekiplay.meteorplus.features.modules.integrations.WhereIsIt;
-import nekiplay.meteorplus.features.modules.misc.*;
-import nekiplay.meteorplus.features.modules.movement.*;
+import nekiplay.meteorplus.features.modules.misc.AutoAccept;
+import nekiplay.meteorplus.features.modules.misc.ChatPrefix;
+import nekiplay.meteorplus.features.modules.misc.CoordinateProtector;
+import nekiplay.meteorplus.features.modules.movement.Freeze;
+import nekiplay.meteorplus.features.modules.movement.NoJumpDelay;
import nekiplay.meteorplus.features.modules.movement.elytrafly.ElytraFlyPlus;
-import nekiplay.meteorplus.features.modules.movement.noslow.NoSlowPlus;
-import nekiplay.meteorplus.features.modules.player.*;
-import nekiplay.meteorplus.features.modules.render.*;
-import nekiplay.meteorplus.features.modules.render.holograms.*;
-import nekiplay.meteorplus.features.modules.world.*;
-import nekiplay.meteorplus.features.modules.world.autoobsidianmine.AutoObsidianFarm;
-import nekiplay.meteorplus.features.modules.world.customblocks.CustomBlocksModule;
-import nekiplay.meteorplus.features.modules.integrations.MapIntegration;
-import nekiplay.meteorplus.features.modules.world.timer.TimerPlus;
-import nekiplay.meteorplus.settings.ConfigModifier;
-import net.fabricmc.loader.api.FabricLoader;
-import meteordevelopment.meteorclient.addons.MeteorAddon;
-import meteordevelopment.meteorclient.systems.modules.Category;
-import meteordevelopment.meteorclient.systems.modules.Modules;
-import meteordevelopment.meteorclient.systems.hud.HudGroup;
import nekiplay.meteorplus.features.modules.movement.fastladder.FastLadderPlus;
import nekiplay.meteorplus.features.modules.movement.fly.FlyPlus;
import nekiplay.meteorplus.features.modules.movement.jesus.JesusPlus;
import nekiplay.meteorplus.features.modules.movement.nofall.NoFallPlus;
+import nekiplay.meteorplus.features.modules.movement.noslow.NoSlowPlus;
import nekiplay.meteorplus.features.modules.movement.speed.SpeedPlus;
import nekiplay.meteorplus.features.modules.movement.spider.SpiderPlus;
-import net.minecraft.util.Identifier;
+import nekiplay.meteorplus.features.modules.player.AutoDropPlus;
+import nekiplay.meteorplus.features.modules.render.EyeFinder;
+import nekiplay.meteorplus.features.modules.render.ItemFrameEsp;
+import nekiplay.meteorplus.features.modules.render.ItemHighlightPlus;
+import nekiplay.meteorplus.features.modules.render.KillEffect;
+import nekiplay.meteorplus.features.modules.render.holograms.HologramModule;
+import nekiplay.meteorplus.features.modules.world.BedrockStorageBruteforce;
+import nekiplay.meteorplus.features.modules.world.GhostBlockFixer;
+import nekiplay.meteorplus.features.modules.world.SafeMine;
+import nekiplay.meteorplus.features.modules.world.XrayBruteforce;
+import nekiplay.meteorplus.features.modules.world.autoobsidianmine.AutoObsidianFarm;
+import nekiplay.meteorplus.features.modules.world.customblocks.CustomBlocksModule;
+import nekiplay.meteorplus.features.modules.world.timer.TimerPlus;
+import nekiplay.meteorplus.settings.ConfigModifier;
+import net.fabricmc.loader.api.FabricLoader;
+import net.minecraft.resources.Identifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.ArrayList;
+
import static nekiplay.MixinPlugin.*;
public class MeteorPlusAddon extends MeteorAddon {
public static final Logger LOG = LoggerFactory.getLogger(MeteorPlusAddon.class);
- public static final Category CATEGORYMODS = new Category("Integrations", ModItems.METEOR_PLUS_LOGO_MODS_ITEM.getDefaultStack());
+ public static final Category CATEGORYMODS = new Category("Integrations", () -> ModItems.METEOR_PLUS_LOGO_MODS_ITEM.getDefaultInstance());
public static final String HUD_TITLE = "Meteor+";
public static final HudGroup HUD_GROUP = new HudGroup(HUD_TITLE);
@@ -66,33 +79,19 @@ public void onInitialize() {
ArrayList notFoundBaritoneIntegrations = new ArrayList<>();
ArrayList enabledIntegrations = new ArrayList<>();
- if (isXaeroWorldMapresent) {
+ if (isXaeroWorldMapPresent) {
if (!isBaritonePresent) {
notFoundBaritoneIntegrations.add("Xaero's World Map");
- }
- else {
+ } else {
enabledIntegrations.add("Xaero's World Map");
}
- }
- else {
+ } else {
notFoundIntegrations.add("Xaero's World Map");
}
- if (isJourneyMapPresent) {
- if (!isBaritonePresent) {
- notFoundBaritoneIntegrations.add("Journey Map");
- }
- else {
- enabledIntegrations.add("Journey Map");
- }
- }
- else {
- notFoundIntegrations.add("Journey Map");
- }
if (!isWhereIsIt) {
notFoundIntegrations.add("Where is it");
- }
- else {
+ } else {
enabledIntegrations.add("Where is it");
}
@@ -101,8 +100,7 @@ public void onInitialize() {
notFoundBaritoneIntegrations.add("Freecam");
notFoundBaritoneIntegrations.add("Waypoints");
notFoundBaritoneIntegrations.add("Goto+");
- }
- else {
+ } else {
enabledIntegrations.add("Hunt");
enabledIntegrations.add("Freecam");
enabledIntegrations.add("Waypoints");
@@ -119,7 +117,7 @@ public void onInitialize() {
LOG.warn(METEOR_LOGPREFIX + " Not found mods for integrations: " + String.join(", ", notFoundIntegrations));
}
- MeteorClient.EVENT_BUS.subscribe(new CordinateProtector());
+ MeteorClient.EVENT_BUS.subscribe(new CoordinateProtector());
ConfigModifier.get();
//region Commands
@@ -136,7 +134,7 @@ public void onInitialize() {
//endregion
LOG.info(METEOR_LOGPREFIX + " Initializing better chat custom head...");
- BetterChat.registerCustomHead("[Meteor+]", Identifier.of("meteorplus", "chat/icon.png"));
+ BetterChat.registerCustomHead("[Meteor+]", Identifier.fromNamespaceAndPath("meteorplus", "chat/icon.png"));
LOG.info(METEOR_LOGPREFIX + " Loaded better chat");
@@ -179,13 +177,12 @@ public void onInitialize() {
modules.add(new VelocityPlus());
if (!MixinPlugin.isMeteorRejects) {
modules.add(new NoJumpDelay());
- }
- else {
+ } else {
LOG.warn(METEOR_LOGPREFIX + " Meteor Rejects detected, removing No Jump Delay");
}
modules.add(new NoSlowPlus());
if (isBaritonePresent) {
- if (isXaeroWorldMapresent || isJourneyMapPresent) {
+ if (isXaeroWorldMapPresent) {
modules.add(new MapIntegration());
}
}
@@ -199,7 +196,6 @@ public void onInitialize() {
LOG.info(METEOR_LOGPREFIX + " Initializing hud...");
-
LOG.info(METEOR_LOGPREFIX + " Loaded hud");
//endregion
@@ -209,9 +205,7 @@ public void onInitialize() {
@Override
public void onRegisterCategories() {
LOG.info(METEOR_LOGPREFIX + " registering categories...");
- if (isXaeroWorldMapresent ||
- isJourneyMapPresent ||
- MixinPlugin.isLitematicaMapresent ||
+ if (isXaeroWorldMapPresent ||
MixinPlugin.isWhereIsIt
) {
Modules.registerCategory(CATEGORYMODS);
@@ -227,7 +221,7 @@ public String getWebsite() {
@Override
public GithubRepo getRepo() {
- return new GithubRepo("MeteorClientPlus", "MeteorPlus", "1.21.11", null);
+ return new GithubRepo("MeteorClientPlus", "MeteorPlus", "26.1.2", null);
}
@Override
diff --git a/src/main/java/nekiplay/meteorplus/features/commands/BlockRawIdCommand.java b/src/main/java/nekiplay/meteorplus/features/commands/BlockRawIdCommand.java
index bdf31f6..8149dbc 100644
--- a/src/main/java/nekiplay/meteorplus/features/commands/BlockRawIdCommand.java
+++ b/src/main/java/nekiplay/meteorplus/features/commands/BlockRawIdCommand.java
@@ -2,27 +2,24 @@
import com.mojang.brigadier.builder.LiteralArgumentBuilder;
import meteordevelopment.meteorclient.commands.Command;
-import meteordevelopment.meteorclient.utils.player.ChatUtils;
-import net.minecraft.block.Block;
-import net.minecraft.block.BlockState;
-import net.minecraft.command.CommandSource;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.text.Text;
-import net.minecraft.util.hit.BlockHitResult;
-import net.minecraft.util.hit.HitResult;
-import net.minecraft.util.math.BlockPos;
+import net.minecraft.client.multiplayer.ClientSuggestionProvider;
+import net.minecraft.core.BlockPos;
+import net.minecraft.world.level.block.Block;
+import net.minecraft.world.level.block.state.BlockState;
+import net.minecraft.world.phys.BlockHitResult;
+import net.minecraft.world.phys.HitResult;
public class BlockRawIdCommand extends Command {
public BlockRawIdCommand() {
super("rawblockid", "Get raw block id under mouse");
}
- public void build(LiteralArgumentBuilder builder) {
+
+ public void build(LiteralArgumentBuilder builder) {
builder.executes(context -> {
- if (mc.crosshairTarget != null && mc.crosshairTarget.getType() == HitResult.Type.BLOCK) {
- BlockPos pos = ((BlockHitResult) mc.crosshairTarget).getBlockPos();
- BlockState state = mc.world.getBlockState(pos);
- int raw_id = Block.getRawIdFromState(state);
+ if (mc.hitResult != null && mc.hitResult.getType() == HitResult.Type.BLOCK) {
+ BlockPos pos = ((BlockHitResult) mc.hitResult).getBlockPos();
+ BlockState state = mc.level.getBlockState(pos);
+ int raw_id = Block.getId(state);
info(String.valueOf(raw_id));
}
return SINGLE_SUCCESS;
diff --git a/src/main/java/nekiplay/meteorplus/features/commands/ClearInventoryCommand.java b/src/main/java/nekiplay/meteorplus/features/commands/ClearInventoryCommand.java
index d458afa..8cbd961 100644
--- a/src/main/java/nekiplay/meteorplus/features/commands/ClearInventoryCommand.java
+++ b/src/main/java/nekiplay/meteorplus/features/commands/ClearInventoryCommand.java
@@ -2,24 +2,23 @@
import com.mojang.brigadier.builder.LiteralArgumentBuilder;
import meteordevelopment.meteorclient.commands.Command;
-import net.minecraft.command.CommandSource;
-import net.minecraft.item.ItemStack;
-import net.minecraft.screen.slot.SlotActionType;
+import net.minecraft.client.multiplayer.ClientSuggestionProvider;
+import net.minecraft.world.inventory.ContainerInput;
+import net.minecraft.world.item.ItemStack;
-import static com.mojang.brigadier.Command.SINGLE_SUCCESS;
-import static meteordevelopment.meteorclient.MeteorClient.mc;
import static nekiplay.meteorplus.features.modules.player.AutoDropPlus.invIndexToSlotId;
public class ClearInventoryCommand extends Command {
public ClearInventoryCommand() {
super("clearinv", "Clear inventory");
}
- public void build(LiteralArgumentBuilder builder) {
+
+ public void build(LiteralArgumentBuilder builder) {
builder.executes(context -> {
- for (int i = 0; i < mc.player.getInventory().size(); i++) {
- ItemStack itemStack = mc.player.getInventory().getStack(i);
+ for (int i = 0; i < mc.player.getInventory().getContainerSize(); i++) {
+ ItemStack itemStack = mc.player.getInventory().getItem(i);
if (itemStack != null) {
- mc.interactionManager.clickSlot(0, invIndexToSlotId(i), 300, SlotActionType.SWAP, mc.player);
+ mc.gameMode.handleContainerInput(0, invIndexToSlotId(i), 300, ContainerInput.SWAP, mc.player);
}
}
return SINGLE_SUCCESS;
diff --git a/src/main/java/nekiplay/meteorplus/features/commands/EclipCommand.java b/src/main/java/nekiplay/meteorplus/features/commands/EclipCommand.java
index 72fdb4e..4c602ad 100644
--- a/src/main/java/nekiplay/meteorplus/features/commands/EclipCommand.java
+++ b/src/main/java/nekiplay/meteorplus/features/commands/EclipCommand.java
@@ -9,33 +9,29 @@
import meteordevelopment.meteorclient.utils.player.FindItemResult;
import meteordevelopment.meteorclient.utils.player.InvUtils;
import meteordevelopment.orbit.EventHandler;
-import net.minecraft.block.Block;
-import net.minecraft.block.Blocks;
-import net.minecraft.client.network.ClientPlayerEntity;
-import net.minecraft.command.CommandSource;
-import net.minecraft.item.Items;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
-import net.minecraft.util.math.BlockPos;
import nekiplay.meteorplus.utils.ElytraUtils;
-
-import static com.mojang.brigadier.Command.SINGLE_SUCCESS;
-import static meteordevelopment.meteorclient.MeteorClient.mc;
+import net.minecraft.client.multiplayer.ClientSuggestionProvider;
+import net.minecraft.client.player.LocalPlayer;
+import net.minecraft.core.BlockPos;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
+import net.minecraft.world.item.Items;
+import net.minecraft.world.level.block.Block;
+import net.minecraft.world.level.block.Blocks;
public class EclipCommand extends Command {
public EclipCommand() {
- super("eclip", "Elyta clip need elytra bypass most anticheats");
+ super("eclip", "Elytra clip need elytra bypass most anticheats");
}
- public void build(LiteralArgumentBuilder builder) {
+ public void build(LiteralArgumentBuilder builder) {
builder.then(argument("blocks", DoubleArgumentType.doubleArg()).executes(context -> {
- ClientPlayerEntity player = mc.player;
+ LocalPlayer player = mc.player;
assert player != null;
double blocks2 = context.getArgument("blocks", Double.class);
if (work()) {
blocks = blocks2;
MeteorClient.EVENT_BUS.subscribe(this);
- }
- else {
+ } else {
ticks = 0;
}
return SINGLE_SUCCESS;
@@ -44,8 +40,7 @@ public void build(LiteralArgumentBuilder builder) {
if (work()) {
blocks = findBlock(true, 15);
MeteorClient.EVENT_BUS.subscribe(this);
- }
- else {
+ } else {
ticks = 0;
}
return SINGLE_SUCCESS;
@@ -54,49 +49,48 @@ public void build(LiteralArgumentBuilder builder) {
if (work()) {
blocks = findBlock(false, 15);
MeteorClient.EVENT_BUS.subscribe(this);
- }
- else {
+ } else {
ticks = 0;
}
return SINGLE_SUCCESS;
}));
}
+
private boolean work() {
- ClientPlayerEntity player = mc.player;
+ LocalPlayer player = mc.player;
assert player != null;
FindItemResult elytra = InvUtils.find(Items.ELYTRA);
if (elytra.found()) {
ticks = 0;
return true;
- }
- else {
+ } else {
error(Names.get(Items.ELYTRA) + " not found");
return false;
}
}
+
private Block getBlock(BlockPos pos) {
- return mc.world.getBlockState(pos).getBlock();
+ return mc.level.getBlockState(pos).getBlock();
}
private double findBlock(boolean up, int maximum) {
if (up) {
- BlockPos pos = mc.player.getBlockPos();
+ BlockPos pos = mc.player.blockPosition();
for (int i = maximum; i >= 0; i--) {
- if (getBlock(pos.add(0, i, 0)) == Blocks.AIR
- && getBlock(pos.add(0, i + 1, 0)) == Blocks.AIR
- && getBlock(pos.add(0, i - 1, 0)) != Blocks.AIR
+ if (getBlock(pos.offset(0, i, 0)) == Blocks.AIR
+ && getBlock(pos.offset(0, i + 1, 0)) == Blocks.AIR
+ && getBlock(pos.offset(0, i - 1, 0)) != Blocks.AIR
) {
return i;
}
}
- }
- else {
- BlockPos pos = mc.player.getBlockPos();
+ } else {
+ BlockPos pos = mc.player.blockPosition();
for (int i = -maximum; i <= 0; i++) {
- if (getBlock(pos.add(0, i, 0)) == Blocks.AIR
- && getBlock(pos.add(0, i + 1, 0)) == Blocks.AIR
- && getBlock(pos.add(0, i - 1, 0)) != Blocks.AIR
+ if (getBlock(pos.offset(0, i, 0)) == Blocks.AIR
+ && getBlock(pos.offset(0, i + 1, 0)) == Blocks.AIR
+ && getBlock(pos.offset(0, i - 1, 0)) != Blocks.AIR
) {
return i;
}
@@ -116,7 +110,7 @@ private void onTick(TickEvent.Pre event) {
private void clip(double blocks) {
if (blocks != 0) {
- ClientPlayerEntity player = mc.player;
+ LocalPlayer player = mc.player;
assert player != null;
switch (ticks) {
case 0: {
@@ -126,11 +120,11 @@ private void clip(double blocks) {
ticks++;
}
case 1: {
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.OnGroundOnly(false, mc.player.horizontalCollision));
+ mc.player.connection.send(new ServerboundMovePlayerPacket.StatusOnly(false, mc.player.horizontalCollision));
ticks++;
}
case 2: {
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.OnGroundOnly(false, mc.player.horizontalCollision));
+ mc.player.connection.send(new ServerboundMovePlayerPacket.StatusOnly(false, mc.player.horizontalCollision));
ticks++;
}
case 3: {
@@ -138,8 +132,8 @@ private void clip(double blocks) {
ticks++;
}
case 4: {
- player.setPosition(player.getX(), player.getY() + blocks, player.getZ());
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.PositionAndOnGround(player.getX(), player.getY() + blocks, player.getZ(), false, mc.player.horizontalCollision));
+ player.setPos(player.getX(), player.getY() + blocks, player.getZ());
+ mc.player.connection.send(new ServerboundMovePlayerPacket.Pos(player.getX(), player.getY() + blocks, player.getZ(), false, mc.player.horizontalCollision));
ticks++;
}
case 5: {
@@ -152,8 +146,7 @@ private void clip(double blocks) {
MeteorClient.EVENT_BUS.unsubscribe(this);
}
}
- }
- else {
+ } else {
MeteorClient.EVENT_BUS.unsubscribe(this);
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/commands/GotoPlusCommand.java b/src/main/java/nekiplay/meteorplus/features/commands/GotoPlusCommand.java
index 6abba24..9b9c678 100644
--- a/src/main/java/nekiplay/meteorplus/features/commands/GotoPlusCommand.java
+++ b/src/main/java/nekiplay/meteorplus/features/commands/GotoPlusCommand.java
@@ -8,21 +8,18 @@
import meteordevelopment.meteorclient.utils.player.ChatUtils;
import meteordevelopment.meteorclient.utils.world.BlockIterator;
import meteordevelopment.meteorclient.utils.world.BlockUtils;
-import net.minecraft.block.Block;
-import net.minecraft.block.BlockState;
-import net.minecraft.block.Blocks;
-import net.minecraft.block.LeavesBlock;
-import net.minecraft.command.CommandSource;
-import net.minecraft.text.Text;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.util.math.Vec3d;
+import net.minecraft.client.multiplayer.ClientSuggestionProvider;
+import net.minecraft.core.BlockPos;
+import net.minecraft.network.chat.Component;
+import net.minecraft.world.level.block.Block;
+import net.minecraft.world.level.block.Blocks;
+import net.minecraft.world.level.block.LeavesBlock;
+import net.minecraft.world.level.block.state.BlockState;
+import net.minecraft.world.phys.Vec3;
import java.util.ArrayList;
import java.util.List;
-import static com.mojang.brigadier.Command.SINGLE_SUCCESS;
-import static meteordevelopment.meteorclient.MeteorClient.mc;
-
public class GotoPlusCommand extends Command {
public GotoPlusCommand() {
super("gotoplus", "Baritone goto to selected type");
@@ -31,22 +28,21 @@ public GotoPlusCommand() {
private final Pool crossPool = new Pool<>(Cross::new);
private final List crosses = new ArrayList<>();
- public void build(LiteralArgumentBuilder builder) {
+ public void build(LiteralArgumentBuilder builder) {
builder.then(literal("nolight").executes(c -> {
MeteorExecutor.execute(() -> {
for (Cross cross : crosses) crossPool.free(cross);
crosses.clear();
-
- BlockIterator.register(64, mc.world.getHeight() / 2, (blockPos, blockState) -> {
- switch (BlockUtils.isValidMobSpawn(blockPos, mc.world.getBlockState(blockPos), 0)) {
+ BlockIterator.register(64, mc.level.getHeight() / 2, (blockPos, blockState) -> {
+ switch (BlockUtils.isValidMobSpawn(blockPos, mc.level.getBlockState(blockPos), 0)) {
case Never:
break;
case Potential, Always:
crosses.add(crossPool.get().set(blockPos));
break;
- }
+ }
});
@@ -54,24 +50,25 @@ public void build(LiteralArgumentBuilder builder) {
BlockPos near = null;
double dst = Double.MAX_VALUE;
for (Cross cross : crosses) {
- BlockState ground = mc.world.getBlockState(new BlockPos(cross.x, cross.y - 1, cross.z));
+ BlockState ground = mc.level.getBlockState(new BlockPos(cross.x, cross.y - 1, cross.z));
Block ground_block = ground.getBlock();
- if (!(ground_block instanceof LeavesBlock) && ground_block != Blocks.CHORUS_FLOWER) {
- double dist = mc.player.squaredDistanceTo(new Vec3d(cross.x, cross.y, cross.z));
+ if (!(ground_block instanceof LeavesBlock) && ground_block != Blocks.CHORUS_FLOWER) {
+ double dist = mc.player.distanceToSqr(new Vec3(cross.x, cross.y, cross.z));
if (dist < dst) {
dst = dist;
near = new BlockPos(cross.x, cross.y, cross.z);
}
}
- }
- for (Cross cross : crosses) { crossPool.free(cross); }
+ }
+ for (Cross cross : crosses) {
+ crossPool.free(cross);
+ }
crosses.clear();
if (near != null) {
BaritoneAPI.getProvider().getPrimaryBaritone().getCommandManager().execute("goto " + near.getX() + " " + near.getY() + " " + near.getZ());
- }
- else {
- ChatUtils.sendMsg(Text.of("Not founded near light"));
+ } else {
+ ChatUtils.sendMsg(Component.nullToEmpty("Not founded near light"));
}
});
});
diff --git a/src/main/java/nekiplay/meteorplus/features/commands/ItemRawIdCommand.java b/src/main/java/nekiplay/meteorplus/features/commands/ItemRawIdCommand.java
index c7eba6f..cab1b29 100644
--- a/src/main/java/nekiplay/meteorplus/features/commands/ItemRawIdCommand.java
+++ b/src/main/java/nekiplay/meteorplus/features/commands/ItemRawIdCommand.java
@@ -3,25 +3,22 @@
import com.mojang.brigadier.builder.LiteralArgumentBuilder;
import meteordevelopment.meteorclient.commands.Command;
import meteordevelopment.meteorclient.utils.player.ChatUtils;
-import net.minecraft.command.CommandSource;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.text.Text;
-
-import static com.mojang.brigadier.Command.SINGLE_SUCCESS;
-import static meteordevelopment.meteorclient.MeteorClient.mc;
+import net.minecraft.client.multiplayer.ClientSuggestionProvider;
+import net.minecraft.network.chat.Component;
+import net.minecraft.world.item.Item;
+import net.minecraft.world.item.ItemStack;
public class ItemRawIdCommand extends Command {
public ItemRawIdCommand() {
super("rawitemid", "Get raw item id");
}
- public void build(LiteralArgumentBuilder builder) {
+ public void build(LiteralArgumentBuilder builder) {
builder.executes(context -> {
- ItemStack itemStack = mc.player.getMainHandStack();
+ ItemStack itemStack = mc.player.getMainHandItem();
if (itemStack != null) {
- int raw_id = Item.getRawId(itemStack.getItem());
- ChatUtils.sendMsg(Text.of("Raw Item ID: " + raw_id));
+ int raw_id = Item.getId(itemStack.getItem());
+ ChatUtils.sendMsg(Component.nullToEmpty("Raw Item ID: " + raw_id));
}
return SINGLE_SUCCESS;
});
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/combat/AntiBotPlus.java b/src/main/java/nekiplay/meteorplus/features/modules/combat/AntiBotPlus.java
index b5d77ef..9b2f713 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/combat/AntiBotPlus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/combat/AntiBotPlus.java
@@ -4,18 +4,20 @@
import meteordevelopment.meteorclient.events.entity.EntityRemovedEvent;
import meteordevelopment.meteorclient.events.game.GameLeftEvent;
import meteordevelopment.meteorclient.events.packets.PacketEvent;
-import meteordevelopment.meteorclient.settings.*;
+import meteordevelopment.meteorclient.settings.BoolSetting;
+import meteordevelopment.meteorclient.settings.EnumSetting;
+import meteordevelopment.meteorclient.settings.Setting;
+import meteordevelopment.meteorclient.settings.SettingGroup;
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.orbit.EventHandler;
-import nekiplay.meteorplus.MeteorPlusAddon;
-import net.minecraft.client.network.PlayerListEntry;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.LivingEntity;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.network.packet.s2c.play.EntityAnimationS2CPacket;
-import net.minecraft.network.packet.s2c.play.EntityPositionS2CPacket;
import nekiplay.meteorplus.utils.ColorRemover;
+import net.minecraft.client.multiplayer.PlayerInfo;
+import net.minecraft.network.protocol.game.ClientboundAnimatePacket;
+import net.minecraft.network.protocol.game.ClientboundTeleportEntityPacket;
+import net.minecraft.world.entity.Entity;
+import net.minecraft.world.entity.LivingEntity;
+import net.minecraft.world.entity.player.Player;
import java.util.*;
@@ -123,7 +125,7 @@ public String toString() {
private ArrayList swings = new ArrayList();
private ArrayList grounds = new ArrayList();
private ArrayList airs = new ArrayList();
- private Map invalidGrounds = new HashMap<>();
+ private Map invalidGrounds = new HashMap<>();
@Override
public void onDeactivate() {
@@ -138,53 +140,53 @@ public boolean isBot(Entity entity) {
}
public boolean isBot(LivingEntity entity) {
- if (!(entity instanceof PlayerEntity))
+ if (!(entity instanceof Player))
return false;
if (!isActive())
return false;
- if (useHash.get() && hash.contains(entity.getUuid())) {
+ if (useHash.get() && hash.contains(entity.getUUID())) {
return true;
}
if (color.get() && entity.getDisplayName().getString().replace("§r", "").contains("§")) {
if (useHash.get()) {
- hash.add(entity.getUuid());
+ hash.add(entity.getUUID());
}
return true;
}
if (ground.get() && !grounds.contains(entity.getId())) {
if (useHash.get()) {
- hash.add(entity.getUuid());
+ hash.add(entity.getUUID());
}
return true;
}
if (InvalidGround.get() && invalidGrounds.getOrDefault(entity.getId(), 0) >= 10) {
if (useHash.get()) {
- hash.add(entity.getUuid());
+ hash.add(entity.getUUID());
}
return true;
}
if (entityID.get() && (entity.getId() >= 1000000000 || entity.getId() <= -1)) {
if (useHash.get()) {
- hash.add(entity.getUuid());
+ hash.add(entity.getUUID());
}
return true;
}
- if (derp.get() && (entity.getPitch() > 90f || entity.getPitch() < -90)) {
+ if (derp.get() && (entity.getXRot() > 90f || entity.getXRot() < -90)) {
if (useHash.get()) {
- hash.add(entity.getUuid());
+ hash.add(entity.getUUID());
}
return true;
}
if (swing.get() && !swings.contains(entity.getId())) {
if (useHash.get()) {
- hash.add(entity.getUuid());
+ hash.add(entity.getUUID());
}
return true;
}
@@ -192,22 +194,20 @@ public boolean isBot(LivingEntity entity) {
if (tab.get()) {
String targetname = ColorRemover.GetVerbatim(entity.getDisplayName().getString());
- if (mc != null && mc.getNetworkHandler() != null) {
- Collection entryCollection = mc.getNetworkHandler().getPlayerList();
- for (PlayerListEntry info : entryCollection) {
- if (info.getDisplayName() != null) {
- String networkName = ColorRemover.GetVerbatim(info.getDisplayName().getString());
+ if (mc != null && mc.getConnection() != null) {
+ Collection entryCollection = mc.getConnection().getOnlinePlayers();
+ for (PlayerInfo info : entryCollection) {
+ if (info.getTabListDisplayName() != null) {
+ String networkName = ColorRemover.GetVerbatim(info.getTabListDisplayName().getString());
if (tabMode.get() == TabMode.Equals) {
if (targetname.equals(networkName)) {
return false;
}
- }
- else if (tabMode.get() == TabMode.Contains_LowerCase) {
+ } else if (tabMode.get() == TabMode.Contains_LowerCase) {
if (targetname.toLowerCase().contains(networkName.toLowerCase())) {
return false;
}
- }
- else {
+ } else {
if (targetname.contains(networkName)) {
return false;
}
@@ -215,7 +215,7 @@ else if (tabMode.get() == TabMode.Contains_LowerCase) {
}
}
if (useHash.get()) {
- hash.add(entity.getUuid());
+ hash.add(entity.getUUID());
}
return true;
}
@@ -231,10 +231,10 @@ private void onEntityAdd(EntityAddedEvent event) {
@EventHandler
private void onEntityRemove(EntityRemovedEvent event) {
- if (hash.contains(event.entity.getUuid())) {
+ if (hash.contains(event.entity.getUUID())) {
Iterator iterator = hash.iterator();
while (iterator.hasNext()) {
- if (iterator.next() == event.entity.getUuid()) {
+ if (iterator.next() == event.entity.getUUID()) {
iterator.remove();
return;
}
@@ -244,19 +244,19 @@ private void onEntityRemove(EntityRemovedEvent event) {
@EventHandler
private void livingEntityMove(PacketEvent.Receive event) {
- if (event.packet instanceof EntityPositionS2CPacket packet) {
- if (mc.world != null) {
- Entity entity = mc.world.getEntityById(packet.entityId());
+ if (event.packet instanceof ClientboundTeleportEntityPacket packet) {
+ if (mc.level != null) {
+ Entity entity = mc.level.getEntity(packet.id());
if (entity != null) {
- if (entity.isOnGround()) {
+ if (entity.onGround()) {
grounds.add(entity.getId());
}
- if (!entity.isOnGround() && !airs.contains(entity.getId()))
+ if (!entity.onGround() && !airs.contains(entity.getId()))
airs.add(entity.getId());
- if (entity.isOnGround()) {
- if (entity.lastY != entity.getY())
+ if (entity.onGround()) {
+ if (entity.yo != entity.getY())
invalidGrounds.put(entity.getId(), invalidGrounds.getOrDefault(entity.getId(), 0) + 1);
} else {
int currentVL = invalidGrounds.getOrDefault(entity.getId(), 0) / 2;
@@ -268,12 +268,11 @@ private void livingEntityMove(PacketEvent.Receive event) {
}
}
}
- }
- else if (event.packet instanceof EntityAnimationS2CPacket packet) {
- if (mc.world != null) {
- Entity entity = mc.world.getEntityById(packet.getEntityId());
+ } else if (event.packet instanceof ClientboundAnimatePacket packet) {
+ if (mc.level != null) {
+ Entity entity = mc.level.getEntity(packet.getId());
if (entity != null) {
- if (entity instanceof LivingEntity && packet.getAnimationId() == 0 && !swings.contains(entity.getId())) {
+ if (entity instanceof LivingEntity && packet.getAction() == 0 && !swings.contains(entity.getId())) {
swings.add(entity.getId());
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/combat/AutoLeave.java b/src/main/java/nekiplay/meteorplus/features/modules/combat/AutoLeave.java
index edaaac4..22b04cb 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/combat/AutoLeave.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/combat/AutoLeave.java
@@ -1,5 +1,6 @@
package nekiplay.meteorplus.features.modules.combat;
+import meteordevelopment.meteorclient.events.entity.EntityAddedEvent;
import meteordevelopment.meteorclient.settings.BoolSetting;
import meteordevelopment.meteorclient.settings.Setting;
import meteordevelopment.meteorclient.settings.SettingGroup;
@@ -8,17 +9,18 @@
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.meteorclient.utils.player.ChatUtils;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.network.packet.s2c.common.DisconnectS2CPacket;
-import net.minecraft.text.Text;
-import meteordevelopment.meteorclient.events.entity.EntityAddedEvent;
import meteordevelopment.orbit.EventHandler;
+import net.minecraft.network.chat.Component;
+import net.minecraft.network.protocol.common.ClientboundDisconnectPacket;
+import net.minecraft.world.entity.player.Player;
+
import java.util.Objects;
public class AutoLeave extends Module {
public AutoLeave() {
super(Categories.Combat, "auto-leave", "Automatically logs out from the server when someone enters your render distance.");
}
+
private final SettingGroup ALSettings = settings.getDefaultGroup();
private final Setting visualRangeIgnoreFriends = ALSettings.add(new BoolSetting.Builder()
.name("ignore-friends")
@@ -53,21 +55,20 @@ public AutoLeave() {
public void onEntityAdded(EntityAddedEvent event) {
if (mc.player == null) return;
if (visualRangeIgnoreFriends.get()) {
- if (event.entity.isPlayer() && !Friends.get().isFriend((PlayerEntity) event.entity) && !Objects.equals(event.entity.getName(), mc.player.getName()) && !Objects.equals(event.entity.getName(), "FreeCamera")) {
+ if (event.entity.isAlwaysTicking() && !Friends.get().isFriend((Player) event.entity) && !Objects.equals(event.entity.getName(), mc.player.getName()) && !Objects.equals(event.entity.getName(), "FreeCamera")) {
if (Command.get()) {
ChatUtils.sendPlayerMsg(command_str.get());
info((String.format("player §c%s§r was detected", event.entity.getName())));
} else {
- assert mc.world != null;
- mc.world.disconnect(Text.of(""));
- mc.player.networkHandler.onDisconnect(new DisconnectS2CPacket(Text.literal(String.format("[§dAuto Leaeve§r] player %s was detected", event.entity.getName()))));
+ assert mc.level != null;
+ mc.level.disconnect(Component.nullToEmpty(""));
+ mc.player.connection.handleDisconnect(new ClientboundDisconnectPacket(Component.literal(String.format("[§dAuto Leave§r] player %s was detected", event.entity.getName()))));
}
- if (AutoDisable.get()) this.toggle();
- }
- }
- else if (event.entity.isPlayer()){
- mc.player.networkHandler.onDisconnect(new DisconnectS2CPacket(Text.literal(String.format("[§dAuto Leaeve§r] player %s was detected", event.entity.getName()))));
if (AutoDisable.get()) this.toggle();
+ }
+ } else if (event.entity.isAlwaysTicking()) {
+ mc.player.connection.handleDisconnect(new ClientboundDisconnectPacket(Component.literal(String.format("[§dAuto Leave§r] player %s was detected", event.entity.getName()))));
+ if (AutoDisable.get()) this.toggle();
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/combat/Hunt.java b/src/main/java/nekiplay/meteorplus/features/modules/combat/Hunt.java
index 689f9c0..395ccf0 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/combat/Hunt.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/combat/Hunt.java
@@ -13,16 +13,16 @@
import meteordevelopment.meteorclient.utils.entity.SortPriority;
import meteordevelopment.meteorclient.utils.entity.TargetUtils;
import meteordevelopment.orbit.EventHandler;
-import net.minecraft.block.Block;
-import net.minecraft.block.Blocks;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityType;
-import net.minecraft.entity.LivingEntity;
-import net.minecraft.entity.Tameable;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.util.math.Vec3d;
-import net.minecraft.world.World;
+import net.minecraft.core.BlockPos;
+import net.minecraft.world.entity.Entity;
+import net.minecraft.world.entity.EntityType;
+import net.minecraft.world.entity.LivingEntity;
+import net.minecraft.world.entity.OwnableEntity;
+import net.minecraft.world.entity.player.Player;
+import net.minecraft.world.level.Level;
+import net.minecraft.world.level.block.Block;
+import net.minecraft.world.level.block.Blocks;
+import net.minecraft.world.phys.Vec3;
import java.util.ArrayList;
import java.util.Set;
@@ -57,12 +57,13 @@ public Hunt() {
private boolean entityCheck(Entity entity) {
if (entity.equals(mc.player) || entity.equals(mc.getCameraEntity())) return false;
- if ((entity instanceof LivingEntity && ((LivingEntity) entity).isDead()) || !entity.isAlive()) return false;
+ if ((entity instanceof LivingEntity && ((LivingEntity) entity).isDeadOrDying()) || !entity.isAlive())
+ return false;
if (!entities.get().contains(entity.getType())) return false;
- if (entity instanceof Tameable tameable
- && tameable.getOwner().getUuid() != null
- && tameable.getOwner().getUuid().equals(mc.player.getUuid())) return false;
- if (entity instanceof PlayerEntity player) {
+ if (entity instanceof OwnableEntity tameable
+ && tameable.getOwner().getUUID() != null
+ && tameable.getOwner().getUUID().equals(mc.player.getUUID())) return false;
+ if (entity instanceof Player player) {
if (player.isCreative()) return false;
if (!Friends.get().shouldAttack(player)) return false;
AntiBotPlus antiBotPlus = Modules.get().get(AntiBotPlus.class);
@@ -76,19 +77,19 @@ private boolean entityCheck(Entity entity) {
}
if (onGround.get()) {
if (customCheck.get()) {
- World world = entity.getEntityWorld();
+ Level world = entity.level();
- Vec3d entityPos = entity.getEntityPos();
+ Vec3 entityPos = entity.position();
BlockPos posBelow = new BlockPos((int) entityPos.x, (int) (entityPos.y - 1), (int) entityPos.z);
Block blockBelow = world.getBlockState(posBelow).getBlock();
return (blockBelow != Blocks.AIR && blockBelow != Blocks.WATER && blockBelow != Blocks.LAVA);
- }
- else return entity.isOnGround();
+ } else return entity.onGround();
}
return true;
}
+
private final ArrayList targets = new ArrayList<>();
@Override
@@ -99,12 +100,12 @@ public void onDeactivate() {
@EventHandler
private void onTickEvent(TickEvent.Pre event) {
- if (mc.world != null) {
+ if (mc.level != null) {
TargetUtils.getList(targets, this::entityCheck, SortPriority.LowestDistance, 25);
for (Entity entity : targets) {
- PathManagers.get().moveTo(entity.getBlockPos());
+ PathManagers.get().moveTo(entity.blockPosition());
return;
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/combat/Teams.java b/src/main/java/nekiplay/meteorplus/features/modules/combat/Teams.java
index b13baa7..dd8e755 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/combat/Teams.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/combat/Teams.java
@@ -5,18 +5,16 @@
import meteordevelopment.meteorclient.settings.SettingGroup;
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
-import meteordevelopment.meteorclient.utils.player.ChatUtils;
-import net.minecraft.client.network.ClientPlayerEntity;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.LivingEntity;
-import net.minecraft.text.Text;
-
-import java.nio.charset.CharsetEncoder;
+import net.minecraft.client.player.LocalPlayer;
+import net.minecraft.network.chat.Component;
+import net.minecraft.world.entity.Entity;
+import net.minecraft.world.entity.LivingEntity;
public class Teams extends Module {
public Teams() {
super(Categories.Combat, "teams", "Check if [entity] is in your own team using scoreboard, name color or team prefix.");
}
+
private final SettingGroup sgGeneral = settings.getDefaultGroup();
private final Setting scoreBoardTeam = sgGeneral.add(new BoolSetting.Builder()
.name("Scoreboard-Team")
@@ -35,23 +33,29 @@ public Teams() {
.defaultValue(false)
.build()
);
+
public boolean isInYourTeam(Entity entity) {
if (entity instanceof LivingEntity) {
return isInYourTeam((LivingEntity) entity);
}
return false;
}
+
public boolean isInYourTeam(LivingEntity entity) {
- ClientPlayerEntity player = mc.player;
- if (player == null) { return false; }
+ LocalPlayer player = mc.player;
+ if (player == null) {
+ return false;
+ }
- if (!isActive()) { return false; }
+ if (!isActive()) {
+ return false;
+ }
- if (scoreBoardTeam.get() && player.getScoreboardTeam() != null && entity.getScoreboardTeam() != null && player.isTeamPlayer(entity.getScoreboardTeam())) {
+ if (scoreBoardTeam.get() && player.getTeam() != null && entity.getTeam() != null && player.isAlliedTo(entity.getTeam())) {
return true;
}
- Text displayName = player.getDisplayName();
+ Component displayName = player.getDisplayName();
if (gommeSkyWars.get() && displayName != null && entity.getDisplayName() != null) {
String targetName = entity.getDisplayName().getString().replaceAll("§r", "");
String clientName = displayName.getString().replaceAll("§r", "");
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/combat/TriggerBot.java b/src/main/java/nekiplay/meteorplus/features/modules/combat/TriggerBot.java
index 33c3d0e..91f6adf 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/combat/TriggerBot.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/combat/TriggerBot.java
@@ -1,7 +1,6 @@
package nekiplay.meteorplus.features.modules.combat;
import meteordevelopment.meteorclient.events.render.Render3DEvent;
-import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.settings.*;
import meteordevelopment.meteorclient.systems.friends.Friends;
import meteordevelopment.meteorclient.systems.modules.Categories;
@@ -10,15 +9,15 @@
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
import meteordevelopment.orbit.EventHandler;
import nekiplay.meteorplus.features.modules.combat.criticals.CriticalsPlus;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityType;
-import net.minecraft.entity.LivingEntity;
-import net.minecraft.entity.Tameable;
-import net.minecraft.entity.effect.StatusEffects;
-import net.minecraft.entity.passive.AnimalEntity;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.util.Hand;
-import net.minecraft.world.GameMode;
+import net.minecraft.world.InteractionHand;
+import net.minecraft.world.effect.MobEffects;
+import net.minecraft.world.entity.Entity;
+import net.minecraft.world.entity.EntityType;
+import net.minecraft.world.entity.LivingEntity;
+import net.minecraft.world.entity.OwnableEntity;
+import net.minecraft.world.entity.animal.Animal;
+import net.minecraft.world.entity.player.Player;
+import net.minecraft.world.level.GameType;
import org.spongepowered.asm.mixin.Unique;
import java.util.Objects;
@@ -106,12 +105,13 @@ public void onDeactivate() {
private boolean entityCheck(Entity entity) {
if (entity.equals(mc.player) || entity.equals(mc.getCameraEntity())) return false;
- if ((entity instanceof LivingEntity && ((LivingEntity) entity).isDead()) || !entity.isAlive()) return false;
+ if ((entity instanceof LivingEntity && ((LivingEntity) entity).isDeadOrDying()) || !entity.isAlive())
+ return false;
if (!entities.get().contains(entity.getType())) return false;
- if (entity instanceof Tameable tameable
- && tameable.getOwner().getUuid() != null
- && tameable.getOwner().getUuid().equals(mc.player.getUuid())) return false;
- if (entity instanceof PlayerEntity player) {
+ if (entity instanceof OwnableEntity tameable
+ && tameable.getOwner().getUUID() != null
+ && tameable.getOwner().getUUID().equals(mc.player.getUUID())) return false;
+ if (entity instanceof Player player) {
if (player.isCreative()) return false;
if (!Friends.get().shouldAttack(player)) return false;
AntiBotPlus antiBotPlus = Modules.get().get(AntiBotPlus.class);
@@ -124,20 +124,19 @@ private boolean entityCheck(Entity entity) {
}
}
- return !(entity instanceof AnimalEntity) || babies.get() || !((AnimalEntity) entity).isBaby();
+ return !(entity instanceof Animal) || babies.get() || !((Animal) entity).isBaby();
}
private boolean delayCheck() {
- if (onlyCrits.get() && !CriticalsPlus.allowCrit() && needCrit(mc.targetedEntity)) {
- if (ignoreOnlyCritsOnLevitation.get() && !Objects.requireNonNull(mc.player).hasStatusEffect(StatusEffects.LEVITATION)) {
+ if (onlyCrits.get() && !CriticalsPlus.allowCrit() && needCrit(mc.crosshairPickEntity)) {
+ if (ignoreOnlyCritsOnLevitation.get() && !Objects.requireNonNull(mc.player).hasEffect(MobEffects.LEVITATION)) {
return false;
- }
- else if (!ignoreOnlyCritsOnLevitation.get()) {
+ } else if (!ignoreOnlyCritsOnLevitation.get()) {
return false;
}
}
- if (smartDelay.get()) return mc.player.getAttackCooldownProgress(0.5f) >= 1;
+ if (smartDelay.get()) return mc.player.getAttackStrengthScale(0.5f) >= 1;
if (hitDelayTimer > 0) {
hitDelayTimer--;
@@ -151,14 +150,14 @@ else if (!ignoreOnlyCritsOnLevitation.get()) {
@EventHandler
private void onTick(Render3DEvent event) {
- if (!mc.player.isAlive() || PlayerUtils.getGameMode() == GameMode.SPECTATOR) return;
- if (mc.targetedEntity == null) return;
+ if (!mc.player.isAlive() || PlayerUtils.getGameMode() == GameType.SPECTATOR) return;
+ if (mc.crosshairPickEntity == null) return;
- if (delayCheck() && entityCheck(mc.targetedEntity)) hitEntity(mc.targetedEntity);
+ if (delayCheck() && entityCheck(mc.crosshairPickEntity)) hitEntity(mc.crosshairPickEntity);
}
private void hitEntity(Entity target) {
- mc.interactionManager.attackEntity(mc.player, target);
- mc.player.swingHand(Hand.MAIN_HAND);
+ mc.gameMode.attack(mc.player, target);
+ mc.player.swing(InteractionHand.MAIN_HAND);
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/combat/criticals/CriticalsPlus.java b/src/main/java/nekiplay/meteorplus/features/modules/combat/criticals/CriticalsPlus.java
index 047865a..461626a 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/combat/criticals/CriticalsPlus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/combat/criticals/CriticalsPlus.java
@@ -5,31 +5,30 @@
import meteordevelopment.meteorclient.systems.modules.Modules;
import meteordevelopment.meteorclient.systems.modules.combat.Criticals;
import meteordevelopment.meteorclient.utils.entity.DamageUtils;
-import net.minecraft.client.MinecraftClient;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.LivingEntity;
+import net.minecraft.client.Minecraft;
+import net.minecraft.world.entity.Entity;
+import net.minecraft.world.entity.LivingEntity;
public class CriticalsPlus extends Module {
public CriticalsPlus() {
super(Categories.Combat, "Criticals+", "Better criticals module");
}
- private static MinecraftClient mc = MinecraftClient.getInstance();
+ private static Minecraft mc = Minecraft.getInstance();
public static boolean canCrit() {
- return !mc.player.isOnGround() && mc.player.fallDistance > 0;
+ return !mc.player.onGround() && mc.player.fallDistance > 0;
}
public static boolean skipCrit() {
- return !mc.player.isOnGround() || mc.player.isSubmergedInWater() || mc.player.isInLava() || mc.player.isClimbing();
+ return !mc.player.onGround() || mc.player.isUnderWater() || mc.player.isInLava() || mc.player.onClimbable();
}
public static boolean allowCrit() {
if (canCrit()) {
return true;
- }
- else if (Modules.get().get(Criticals.class).isActive()) {
- return !skipCrit();
+ } else if (Modules.get().get(Criticals.class).isActive()) {
+ return !skipCrit();
}
return false;
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/combat/killaura/KillAuraPlus.java b/src/main/java/nekiplay/meteorplus/features/modules/combat/killaura/KillAuraPlus.java
index de843fd..3a7bdcd 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/combat/killaura/KillAuraPlus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/combat/killaura/KillAuraPlus.java
@@ -9,10 +9,9 @@
import meteordevelopment.meteorclient.utils.entity.SortPriority;
import meteordevelopment.orbit.EventHandler;
import nekiplay.meteorplus.features.modules.combat.killaura.modes.Matrix;
-import net.minecraft.entity.EntityType;
+import net.minecraft.world.entity.EntityType;
import org.spongepowered.asm.mixin.Unique;
-import java.util.ArrayList;
import java.util.Set;
public class KillAuraPlus extends Module {
@@ -128,7 +127,6 @@ public KillAuraPlus() {
);
-
private KillAuraPlusMode currentMode;
private void onModeChanged(KillAuraPlusModes mode) {
@@ -136,14 +134,17 @@ private void onModeChanged(KillAuraPlusModes mode) {
case Matrix -> currentMode = new Matrix();
}
}
+
@EventHandler
private void onTickPre(TickEvent.Pre event) {
currentMode.onTickPre(event);
}
+
@EventHandler
private void onTickPost(TickEvent.Post event) {
currentMode.onTickPost(event);
}
+
@EventHandler
private void onSendPacket(PacketEvent.Send event) {
currentMode.onSendPacket(event);
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/combat/killaura/KillAuraPlusMode.java b/src/main/java/nekiplay/meteorplus/features/modules/combat/killaura/KillAuraPlusMode.java
index 33b9e59..92aaf76 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/combat/killaura/KillAuraPlusMode.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/combat/killaura/KillAuraPlusMode.java
@@ -3,24 +3,35 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.systems.modules.Modules;
-import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.Minecraft;
public class KillAuraPlusMode {
- protected final MinecraftClient mc;
+ protected final Minecraft mc;
protected final KillAuraPlus settings;
private final KillAuraPlusModes type;
public KillAuraPlusMode(KillAuraPlusModes type) {
this.settings = Modules.get().get(KillAuraPlus.class);
- this.mc = MinecraftClient.getInstance();
+ this.mc = Minecraft.getInstance();
this.type = type;
}
- public void onActivate() { }
- public void onDeactivate() { }
- public void onTickPre(TickEvent.Pre event) { }
- public void onTickPost(TickEvent.Post event) { }
- public void onSendPacket(PacketEvent.Send event) { }
+ public void onActivate() {
+ }
+
+ public void onDeactivate() {
+ }
+
+ public void onTickPre(TickEvent.Pre event) {
+ }
- public String getInfoString() { return ""; }
+ public void onTickPost(TickEvent.Post event) {
+ }
+
+ public void onSendPacket(PacketEvent.Send event) {
+ }
+
+ public String getInfoString() {
+ return "";
+ }
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/combat/killaura/modes/Matrix.java b/src/main/java/nekiplay/meteorplus/features/modules/combat/killaura/modes/Matrix.java
index 27f0573..e7921a5 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/combat/killaura/modes/Matrix.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/combat/killaura/modes/Matrix.java
@@ -11,36 +11,33 @@
import nekiplay.meteorplus.features.modules.combat.killaura.KillAuraPlusModes;
import nekiplay.meteorplus.utils.GameSensitivityUtils;
import nekiplay.meteorplus.utils.math.StopWatch;
-import net.minecraft.client.util.math.Vector2f;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.LivingEntity;
-import net.minecraft.entity.Tameable;
-import net.minecraft.entity.effect.StatusEffects;
-import net.minecraft.entity.mob.EndermanEntity;
-import net.minecraft.entity.mob.ZombifiedPiglinEntity;
-import net.minecraft.entity.passive.AnimalEntity;
-import net.minecraft.entity.passive.WolfEntity;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.util.Hand;
-import net.minecraft.util.hit.EntityHitResult;
-import net.minecraft.util.hit.HitResult;
-import net.minecraft.util.math.Box;
-import net.minecraft.util.math.Vec3d;
-import org.joml.Vector3d;
+import net.minecraft.client.model.geom.builders.UVPair;
+import net.minecraft.world.InteractionHand;
+import net.minecraft.world.entity.Entity;
+import net.minecraft.world.entity.LivingEntity;
+import net.minecraft.world.entity.OwnableEntity;
+import net.minecraft.world.entity.animal.wolf.Wolf;
+import net.minecraft.world.entity.monster.EnderMan;
+import net.minecraft.world.entity.monster.zombie.ZombifiedPiglin;
+import net.minecraft.world.entity.player.Player;
+import net.minecraft.world.phys.AABB;
+import net.minecraft.world.phys.EntityHitResult;
+import net.minecraft.world.phys.Vec3;
import java.util.ArrayList;
-import java.util.Objects;
import static nekiplay.meteorplus.features.modules.combat.criticals.CriticalsPlus.allowCrit;
import static nekiplay.meteorplus.features.modules.combat.criticals.CriticalsPlus.needCrit;
import static nekiplay.meteorplus.utils.RaycastUtils.raycastEntity;
-import static net.minecraft.util.math.MathHelper.*;
+import static net.minecraft.util.Mth.*;
public class Matrix extends KillAuraPlusMode {
public Matrix() {
super(KillAuraPlusModes.Matrix);
}
+
private final ArrayList targets = new ArrayList<>();
+
@Override
public void onTickPre(TickEvent.Pre event) {
if (target == null || !entityCheck(target)) {
@@ -53,24 +50,22 @@ public void onTickPre(TickEvent.Pre event) {
if (target != null && target.isAlive()) {
isRotated = false;
- EntityHitResult result = raycastEntity(settings.range.get(), rotateVector.x(), rotateVector.y(), 0f);
+ EntityHitResult result = raycastEntity(settings.range.get(), rotateVector.u(), rotateVector.v(), 0f);
if (result != null) {
ChatUtils.info(result.getType().name());
}
if (settings.onlyCrits.get() && !allowCrit() && needCrit(target)) {
- }
- else if (delayCheck() && result != null && result.getType() == HitResult.Type.ENTITY) {
+ } else if (delayCheck() && result != null && result.getType() == net.minecraft.world.phys.HitResult.Type.ENTITY) {
attack(target);
ticks = 2;
}
-
- if (settings.rotationType.get() == Type.Fast) {
+ if (settings.rotationType.get() == Type.Fast) {
if (ticks > 0) {
updateRotation(true, 180, 90);
- Rotations.rotate(rotateVector.x(), rotateVector.y());
+ Rotations.rotate(rotateVector.u(), rotateVector.v());
ticks--;
} else {
reset();
@@ -78,30 +73,30 @@ else if (delayCheck() && result != null && result.getType() == HitResult.Type.EN
} else {
if (!isRotated) {
updateRotation(false, 80, 35);
- Rotations.rotate(rotateVector.x(), rotateVector.y());
+ Rotations.rotate(rotateVector.u(), rotateVector.v());
}
}
- }
- else {
+ } else {
reset();
}
}
private boolean delayCheck() {
- return mc.player.getAttackCooldownProgress(0.5f) >= 1;
+ return mc.player.getAttackStrengthScale(0.5f) >= 1;
}
private void attack(Entity target) {
- mc.interactionManager.attackEntity(mc.player, target);
- mc.player.swingHand(Hand.MAIN_HAND);
+ mc.gameMode.attack(mc.player, target);
+ mc.player.swing(InteractionHand.MAIN_HAND);
}
- private boolean entityCheck(Entity entity) {
+ private boolean entityCheck(Entity entity) {
if (entity.equals(mc.player) || entity.equals(mc.getCameraEntity())) return false;
- if ((entity instanceof LivingEntity livingEntity && livingEntity.isDead()) || !entity.isAlive()) return false;
+ if ((entity instanceof LivingEntity livingEntity && livingEntity.isDeadOrDying()) || !entity.isAlive())
+ return false;
- Box hitbox = entity.getBoundingBox();
+ AABB hitbox = entity.getBoundingBox();
if (!PlayerUtils.isWithin(
clamp(mc.player.getX(), hitbox.minX, hitbox.maxX),
clamp(mc.player.getY(), hitbox.minY, hitbox.maxY),
@@ -112,17 +107,17 @@ private boolean entityCheck(Entity entity) {
if (!settings.entities.get().contains(entity.getType())) return false;
if (!PlayerUtils.canSeeEntity(entity) && !PlayerUtils.isWithin(entity, settings.wallsRange.get())) return false;
if (settings.ignoreTamed.get()) {
- if (entity instanceof Tameable tameable
- && tameable.getOwner().getUuid() != null
- && tameable.getOwner().getUuid().equals(mc.player.getUuid())
+ if (entity instanceof OwnableEntity tameable
+ && tameable.getOwner().getUUID() != null
+ && tameable.getOwner().getUUID().equals(mc.player.getUUID())
) return false;
}
if (settings.ignorePassive.get()) {
- if (entity instanceof EndermanEntity enderman && !enderman.isAngry()) return false;
- if (entity instanceof ZombifiedPiglinEntity piglin && !piglin.isAttacking()) return false;
- if (entity instanceof WolfEntity wolf && !wolf.isAttacking()) return false;
+ if (entity instanceof EnderMan enderman && !enderman.isCreepy()) return false;
+ if (entity instanceof ZombifiedPiglin piglin && !piglin.isAggressive()) return false;
+ if (entity instanceof Wolf wolf && !wolf.isAggressive()) return false;
}
- if (entity instanceof PlayerEntity player) {
+ if (entity instanceof Player player) {
if (player.isCreative()) return false;
if (!Friends.get().shouldAttack(player)) return false;
if (settings.shieldMode.get() == KillAura.ShieldMode.Ignore && player.isBlocking()) return false;
@@ -131,7 +126,7 @@ private boolean entityCheck(Entity entity) {
}
private final StopWatch stopWatch = new StopWatch();
- private Vector2f rotateVector = new Vector2f(0, 0);
+ private UVPair rotateVector = new UVPair(0, 0);
private LivingEntity target;
private Entity selected;
float lastYaw, lastPitch;
@@ -144,19 +139,18 @@ public enum Type {
}
-
private void updateRotation(boolean attack, float rotationYawSpeed, float rotationPitchSpeed) {
- Vec3d vec = target.getEntityPos().add(0, clamp(mc.player.getEyeHeight(mc.player.getPose()) - target.getY(),
- 0, target.getHeight() * (mc.player.distanceTo(target) / settings.range.get())), 0)
- .subtract(mc.player.getEyePos());
+ Vec3 vec = target.position().add(0, clamp(mc.player.getEyeHeight(mc.player.getPose()) - target.getY(),
+ 0, target.getBbHeight() * (mc.player.distanceTo(target) / settings.range.get())), 0)
+ .subtract(mc.player.getEyePosition());
isRotated = true;
float yawToTarget = (float) wrapDegrees(Math.toDegrees(Math.atan2(vec.z, vec.x)) - 90);
- float pitchToTarget = (float) (-Math.toDegrees(Math.atan2(vec.y, hypot(vec.x, vec.z))));
+ float pitchToTarget = (float) (-Math.toDegrees(Math.atan2(vec.y, length(vec.x, vec.z))));
- float yawDelta = (wrapDegrees(yawToTarget - rotateVector.x()));
- float pitchDelta = (wrapDegrees(pitchToTarget - rotateVector.y()));
+ float yawDelta = (wrapDegrees(yawToTarget - rotateVector.u()));
+ float pitchDelta = (wrapDegrees(pitchToTarget - rotateVector.v()));
int roundedYaw = (int) yawDelta;
switch (settings.rotationType.get()) {
@@ -175,31 +169,31 @@ private void updateRotation(boolean attack, float rotationYawSpeed, float rotati
clampedYaw = this.lastYaw + 3.1f;
}
- float yaw = rotateVector.x() + (yawDelta > 0 ? clampedYaw : -clampedYaw);
- float pitch = clamp(rotateVector.y() + (pitchDelta > 0 ? clampedPitch : -clampedPitch), -89.0F, 89.0F);
+ float yaw = rotateVector.u() + (yawDelta > 0 ? clampedYaw : -clampedYaw);
+ float pitch = clamp(rotateVector.v() + (pitchDelta > 0 ? clampedPitch : -clampedPitch), -89.0F, 89.0F);
float gcd = GameSensitivityUtils.getGCDValue();
- yaw -= (yaw - rotateVector.x()) % gcd;
- pitch -= (pitch - rotateVector.y()) % gcd;
+ yaw -= (yaw - rotateVector.u()) % gcd;
+ pitch -= (pitch - rotateVector.v()) % gcd;
- rotateVector = new Vector2f(yaw, pitch);
+ rotateVector = new UVPair(yaw, pitch);
lastYaw = clampedYaw;
lastPitch = clampedPitch;
//if (options.getValueByName("Коррекция движения").get()) {
- //mc.player.rotationYawOffset = yaw;
+ //mc.player.rotationYawOffset = yaw;
//}
}
case Fast -> {
- float yaw = rotateVector.x() + roundedYaw;
- float pitch = clamp(rotateVector.y() + pitchDelta, -90, 90);
+ float yaw = rotateVector.u() + roundedYaw;
+ float pitch = clamp(rotateVector.v() + pitchDelta, -90, 90);
float gcd = GameSensitivityUtils.getGCDValue();
- yaw -= (yaw - rotateVector.x()) % gcd;
- pitch -= (pitch - rotateVector.y()) % gcd;
+ yaw -= (yaw - rotateVector.u()) % gcd;
+ pitch -= (pitch - rotateVector.v()) % gcd;
- rotateVector = new Vector2f(yaw, pitch);
+ rotateVector = new UVPair(yaw, pitch);
//if (options.getValueByName("Коррекция движения").get()) {
// mc.player.rotationYawOffset = yaw;
@@ -209,6 +203,6 @@ private void updateRotation(boolean attack, float rotationYawSpeed, float rotati
}
private void reset() {
- rotateVector = new Vector2f(mc.player.getYaw(), mc.player.getPitch());
+ rotateVector = new UVPair(mc.player.getYRot(), mc.player.getXRot());
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/VelocityMode.java b/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/VelocityMode.java
index 837cce8..7e5661e 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/VelocityMode.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/VelocityMode.java
@@ -3,26 +3,38 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.systems.modules.Modules;
-import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.Minecraft;
public class VelocityMode {
- protected final MinecraftClient mc;
+ protected final Minecraft mc;
protected final VelocityPlus settings;
private final VelocityModes type;
public VelocityMode(VelocityModes type) {
- this.settings = Modules.get().get(VelocityPlus.class);;
- this.mc = MinecraftClient.getInstance();
+ this.settings = Modules.get().get(VelocityPlus.class);
+ ;
+ this.mc = Minecraft.getInstance();
this.type = type;
}
- public void onSendPacket(PacketEvent.Send event) {}
- public void onSentPacket(PacketEvent.Sent event) {}
- public void onReceivePacket(PacketEvent.Receive event) {}
+ public void onSendPacket(PacketEvent.Send event) {
+ }
+
+ public void onSentPacket(PacketEvent.Sent event) {
+ }
- public void onTickEventPre(TickEvent.Pre event) {}
- public void onTickEventPost(TickEvent.Post event) {}
+ public void onReceivePacket(PacketEvent.Receive event) {
+ }
+
+ public void onTickEventPre(TickEvent.Pre event) {
+ }
- public void onActivate() {}
- public void onDeactivate() {}
+ public void onTickEventPost(TickEvent.Post event) {
+ }
+
+ public void onActivate() {
+ }
+
+ public void onDeactivate() {
+ }
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/VelocityPlus.java b/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/VelocityPlus.java
index d61ea1b..a3ebcc1 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/VelocityPlus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/VelocityPlus.java
@@ -2,7 +2,9 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.settings.*;
+import meteordevelopment.meteorclient.settings.EnumSetting;
+import meteordevelopment.meteorclient.settings.Setting;
+import meteordevelopment.meteorclient.settings.SettingGroup;
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.orbit.EventHandler;
@@ -14,6 +16,7 @@ public class VelocityPlus extends Module {
public VelocityPlus() {
super(Categories.Movement, "velocity+", "Bypass velocity.");
}
+
private final SettingGroup settingsGroup = settings.getDefaultGroup();
private final SettingGroup sgGeneral = settings.getDefaultGroup();
@@ -57,16 +60,19 @@ private void onPreTick(TickEvent.Pre event) {
private void onPostTick(TickEvent.Post event) {
currentMode.onTickEventPost(event);
}
+
@EventHandler
public void onSendPacket(PacketEvent.Send event) {
currentMode.onSendPacket(event);
}
+
@EventHandler
public void onSentPacket(PacketEvent.Sent event) {
currentMode.onSentPacket(event);
}
+
@EventHandler
- private void onRecivePacket(PacketEvent.Receive event) {
+ private void onReceivePacket(PacketEvent.Receive event) {
currentMode.onReceivePacket(event);
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/modes/GrimCancel.java b/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/modes/GrimCancel.java
index 97f9fd7..a2280b5 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/modes/GrimCancel.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/modes/GrimCancel.java
@@ -4,12 +4,8 @@
import meteordevelopment.meteorclient.utils.network.MeteorExecutor;
import nekiplay.meteorplus.features.modules.combat.velocity.VelocityMode;
import nekiplay.meteorplus.features.modules.combat.velocity.VelocityModes;
-import net.minecraft.network.packet.Packet;
-import net.minecraft.network.packet.c2s.play.PlayerActionC2SPacket;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
-import net.minecraft.network.packet.s2c.play.EntityDamageS2CPacket;
-import net.minecraft.network.packet.s2c.play.EntityVelocityUpdateS2CPacket;
-import net.minecraft.network.packet.s2c.play.ExplosionS2CPacket;
+import net.minecraft.network.protocol.Packet;
+import net.minecraft.network.protocol.game.*;
public class GrimCancel extends VelocityMode {
public GrimCancel() {
@@ -32,19 +28,22 @@ public void onDeactivate() {
public void onReceivePacket(PacketEvent.Receive event) {
Packet> packet = event.packet;
- if (packet instanceof EntityDamageS2CPacket && ((EntityDamageS2CPacket) packet).entityId() == mc.player.getId()) {
+ if (packet instanceof ClientboundDamageEventPacket && ((ClientboundDamageEventPacket) packet).entityId() == mc.player.getId()) {
canCancel = true;
}
- if (((packet instanceof EntityVelocityUpdateS2CPacket && ((EntityVelocityUpdateS2CPacket) packet).getEntityId() == mc.player.getId()) || packet instanceof ExplosionS2CPacket) && canCancel) {
+ if (((packet instanceof ClientboundSetEntityMotionPacket motionPacket && motionPacket.id() == mc.player.getId()) || packet instanceof ClientboundExplodePacket) && canCancel) {
event.cancel();
MeteorExecutor.execute(() -> {
- try { Thread.sleep(20); } catch (Exception ignore) { }
+ try {
+ Thread.sleep(20);
+ } catch (Exception ignore) {
+ }
- mc.getNetworkHandler().sendPacket(new PlayerMoveC2SPacket.Full(mc.player.getX(), mc.player.getY(), mc.player.getZ(), mc.player.getYaw(), mc.player.getPitch(), mc.player.isOnGround(), mc.player.horizontalCollision));
- mc.getNetworkHandler().sendPacket(new PlayerActionC2SPacket(PlayerActionC2SPacket.Action.STOP_DESTROY_BLOCK, mc.player.getBlockPos(), mc.player.getHorizontalFacing().getOpposite()));
+ mc.getConnection().send(new ServerboundMovePlayerPacket.PosRot(mc.player.getX(), mc.player.getY(), mc.player.getZ(), mc.player.getYRot(), mc.player.getXRot(), mc.player.onGround(), mc.player.horizontalCollision));
+ mc.getConnection().send(new ServerboundPlayerActionPacket(ServerboundPlayerActionPacket.Action.STOP_DESTROY_BLOCK, mc.player.blockPosition(), mc.player.getDirection().getOpposite()));
canCancel = false;
- });
+ });
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/modes/GrimCancel_v2.java b/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/modes/GrimCancel_v2.java
index c52ba82..0fb3dd5 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/modes/GrimCancel_v2.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/modes/GrimCancel_v2.java
@@ -3,14 +3,9 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import nekiplay.meteorplus.features.modules.combat.velocity.VelocityMode;
import nekiplay.meteorplus.features.modules.combat.velocity.VelocityModes;
-import net.minecraft.network.packet.Packet;
-import net.minecraft.network.packet.c2s.play.PlayerActionC2SPacket;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
-import net.minecraft.network.packet.s2c.play.EntityVelocityUpdateS2CPacket;
-import net.minecraft.network.packet.s2c.play.ExplosionS2CPacket;
-import net.minecraft.network.packet.s2c.play.PlayerPositionLookS2CPacket;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.util.math.Direction;
+import net.minecraft.core.Direction;
+import net.minecraft.network.protocol.Packet;
+import net.minecraft.network.protocol.game.*;
public class GrimCancel_v2 extends VelocityMode {
public GrimCancel_v2() {
@@ -37,11 +32,10 @@ public void onDeactivate() {
public void onReceivePacket(PacketEvent.Receive event) {
Packet> packet = event.packet;
- if (((packet instanceof EntityVelocityUpdateS2CPacket && ((EntityVelocityUpdateS2CPacket) packet).getEntityId() == mc.player.getId()) || packet instanceof ExplosionS2CPacket) && canCancel) {
+ if (((packet instanceof ClientboundSetEntityMotionPacket motionPacket && motionPacket.id() == mc.player.getId()) || packet instanceof ClientboundExplodePacket) && canCancel) {
event.cancel();
canCancel = true;
- }
- else if (packet instanceof PlayerPositionLookS2CPacket) {
+ } else if (packet instanceof ClientboundPlayerPositionPacket) {
skip = 3;
}
}
@@ -50,12 +44,12 @@ else if (packet instanceof PlayerPositionLookS2CPacket) {
public void onSendPacket(PacketEvent.Send event) {
Packet> packet = event.packet;
- if (packet instanceof PlayerMoveC2SPacket) {
+ if (packet instanceof ServerboundMovePlayerPacket) {
skip--;
if (canCancel) {
if (skip <= 0) {
- mc.getNetworkHandler().sendPacket(new PlayerMoveC2SPacket.Full(mc.player.getX(), mc.player.getY(), mc.player.getZ(), mc.player.getYaw(), mc.player.getPitch(), mc.player.isOnGround(), mc.player.horizontalCollision));
- mc.getNetworkHandler().sendPacket(new PlayerActionC2SPacket(PlayerActionC2SPacket.Action.STOP_DESTROY_BLOCK, mc.player.getBlockPos(), Direction.UP));
+ mc.getConnection().send(new ServerboundMovePlayerPacket.PosRot(mc.player.getX(), mc.player.getY(), mc.player.getZ(), mc.player.getYRot(), mc.player.getXRot(), mc.player.onGround(), mc.player.horizontalCollision));
+ mc.getConnection().send(new ServerboundPlayerActionPacket(ServerboundPlayerActionPacket.Action.STOP_DESTROY_BLOCK, mc.player.blockPosition(), Direction.UP));
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/modes/GrimSkip.java b/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/modes/GrimSkip.java
index 5a4915f..90c9fd8 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/modes/GrimSkip.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/combat/velocity/modes/GrimSkip.java
@@ -3,11 +3,11 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import nekiplay.meteorplus.features.modules.combat.velocity.VelocityMode;
import nekiplay.meteorplus.features.modules.combat.velocity.VelocityModes;
-import net.minecraft.network.packet.Packet;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
-import net.minecraft.network.packet.s2c.play.EntityDamageS2CPacket;
-import net.minecraft.network.packet.s2c.play.EntityVelocityUpdateS2CPacket;
-import net.minecraft.network.packet.s2c.play.ExplosionS2CPacket;
+import net.minecraft.network.protocol.Packet;
+import net.minecraft.network.protocol.game.ClientboundDamageEventPacket;
+import net.minecraft.network.protocol.game.ClientboundExplodePacket;
+import net.minecraft.network.protocol.game.ClientboundSetEntityMotionPacket;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
public class GrimSkip extends VelocityMode {
public GrimSkip() {
@@ -33,10 +33,10 @@ public void onDeactivate() {
@Override
public void onReceivePacket(PacketEvent.Receive event) {
Packet> packet = event.packet;
- if (packet instanceof EntityDamageS2CPacket && ((EntityDamageS2CPacket) packet).entityId() == mc.player.getId()) {
+ if (packet instanceof ClientboundDamageEventPacket && ((ClientboundDamageEventPacket) packet).entityId() == mc.player.getId()) {
canCancel = true;
}
- if (((packet instanceof EntityVelocityUpdateS2CPacket && ((EntityVelocityUpdateS2CPacket) packet).getEntityId() == mc.player.getId()) || packet instanceof ExplosionS2CPacket) && canCancel) {
+ if (((packet instanceof ClientboundSetEntityMotionPacket motionPacket && motionPacket.id() == mc.player.getId()) || packet instanceof ClientboundExplodePacket) && canCancel) {
skip = 6;
event.cancel();
}
@@ -46,7 +46,7 @@ public void onReceivePacket(PacketEvent.Receive event) {
public void onSendPacket(PacketEvent.Send event) {
Packet> packet = event.packet;
- if (packet instanceof PlayerMoveC2SPacket) {
+ if (packet instanceof ServerboundMovePlayerPacket) {
if (skip > 0) {
skip--;
event.cancel();
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/integrations/MapIntegration.java b/src/main/java/nekiplay/meteorplus/features/modules/integrations/MapIntegration.java
index b684a1d..655ac52 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/integrations/MapIntegration.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/integrations/MapIntegration.java
@@ -6,8 +6,8 @@
import meteordevelopment.meteorclient.settings.Setting;
import meteordevelopment.meteorclient.settings.SettingGroup;
import meteordevelopment.meteorclient.systems.modules.Module;
-import nekiplay.meteorplus.MeteorPlusAddon;
import nekiplay.MixinPlugin;
+import nekiplay.meteorplus.MeteorPlusAddon;
public class MapIntegration extends Module {
public MapIntegration() {
@@ -48,7 +48,7 @@ public MapIntegration() {
public final Setting showBlock = fullMap.add(new BoolSetting.Builder()
.name("Show block")
.description("Shows the name of the block in the clicked position.")
- .visible(() -> MixinPlugin.isXaeroWorldMapresent)
+ .visible(() -> MixinPlugin.isXaeroWorldMapPresent)
.defaultValue(true)
.build()
);
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/integrations/WhereIsIt.java b/src/main/java/nekiplay/meteorplus/features/modules/integrations/WhereIsIt.java
index 257a39c..b5c1e9a 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/integrations/WhereIsIt.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/integrations/WhereIsIt.java
@@ -18,7 +18,7 @@ public WhereIsIt() {
.build()
);
- public final Setting suport_color_symbols = defaultGroup.add(new BoolSetting.Builder()
+ public final Setting support_color_symbols = defaultGroup.add(new BoolSetting.Builder()
.name("use-color-symbols")
.defaultValue(true)
.build()
@@ -26,7 +26,7 @@ public WhereIsIt() {
public final Setting text_color = defaultGroup.add(new ColorSetting.Builder()
.name("text-color")
- .visible(() -> !suport_color_symbols.get())
+ .visible(() -> !support_color_symbols.get())
.build()
);
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/misc/AutoAccept.java b/src/main/java/nekiplay/meteorplus/features/modules/misc/AutoAccept.java
index b7183b6..414d67a 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/misc/AutoAccept.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/misc/AutoAccept.java
@@ -32,7 +32,7 @@ public AutoAccept() {
.name("Pattern command")
.description("Custom pattern.")
.defaultValue(".*Игрок (.*) просит телепортироваться к вам!.*")
- .visible(() -> mode.get() == Mode.Custom)
+ .visible(() -> mode.get() == Mode.Custom)
.build()
);
@@ -65,14 +65,14 @@ public AutoAccept() {
.build()
);
- private final Setting Debug = AASettings.add(new BoolSetting.Builder()
+ private final Setting Debug = AASettings.add(new BoolSetting.Builder()
.name("Debug")
.description("Prints all incoming messages in console (raw format).")
.defaultValue(false)
.build()
);
- public enum Mode
- {
+
+ public enum Mode {
Auto,
Custom
}
@@ -94,6 +94,7 @@ public void onActivate() {
patterns.add(DonutSMP);
}
+
@Override
public void onDeactivate() {
patterns.clear();
@@ -119,18 +120,16 @@ private void Accept(String username, TPPattern pattern, String message) {
info("Accepting request from " + "§c" + username);
ChatUtils.sendPlayerMsg(accept_command.get().replace("{username}", username));
}
- }
- else {
+ } else {
BetterAccept(username, pattern);
}
}
@EventHandler()
- public void onMessageRecieve(ReceiveMessageEvent event) {
+ public void onMessageReceive(ReceiveMessageEvent event) {
if (event.getMessage() != null && mc.player != null) {
String message = ColorRemover.GetVerbatim(event.getMessage().getString());
- if (Debug.get())
- {
+ if (Debug.get()) {
MeteorPlusAddon.LOG.info(message);
}
Thread th = new Thread(() -> {
@@ -144,8 +143,7 @@ public void onMessageRecieve(ReceiveMessageEvent event) {
e.printStackTrace();
}
Accept(nickname, pattern, message);
- }
- else {
+ } else {
nickname = getName(custom, message);
if (!nickname.equals("")) {
try {
@@ -172,8 +170,7 @@ private String getName(String message) {
return nickname;
}
- private String getName(TPPattern tpPattern, String message)
- {
+ private String getName(TPPattern tpPattern, String message) {
String nickname = "";
Pattern pattern = Pattern.compile(tpPattern.pattern);
Matcher matcher = pattern.matcher(message);
@@ -186,8 +183,7 @@ private String getName(TPPattern tpPattern, String message)
return nickname;
}
- private TPPattern getPattern(String message)
- {
+ private TPPattern getPattern(String message) {
for (TPPattern tpPattern : patterns) {
Pattern pattern = Pattern.compile(tpPattern.pattern);
Matcher matcher = pattern.matcher(message);
@@ -201,8 +197,7 @@ private TPPattern getPattern(String message)
return null;
}
- private boolean isFriend(String username)
- {
+ private boolean isFriend(String username) {
Friends friends = Friends.get();
var it = friends.iterator();
while (it.hasNext()) {
@@ -213,14 +208,12 @@ private boolean isFriend(String username)
return false;
}
- private static class TPPattern
- {
+ private static class TPPattern {
public String pattern;
public int group;
public String command;
- public TPPattern(String pattern, int group, String command)
- {
+ public TPPattern(String pattern, int group, String command) {
this.pattern = pattern;
this.group = group;
this.command = command;
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/misc/ChatPrefix.java b/src/main/java/nekiplay/meteorplus/features/modules/misc/ChatPrefix.java
index edcbdec..61a9e0f 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/misc/ChatPrefix.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/misc/ChatPrefix.java
@@ -8,16 +8,16 @@
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.meteorclient.utils.player.ChatUtils;
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
-import nekiplay.meteorplus.MeteorPlusAddon;
-import net.minecraft.text.MutableText;
-import net.minecraft.text.Text;
-import net.minecraft.text.TextColor;
-import net.minecraft.util.Formatting;
+import net.minecraft.ChatFormatting;
+import net.minecraft.network.chat.Component;
+import net.minecraft.network.chat.MutableComponent;
+import net.minecraft.network.chat.TextColor;
public class ChatPrefix extends Module {
public ChatPrefix() {
super(Categories.Misc, "meteor+-chat-prefix", "prefix for enabling and disabling Meteor+ modules.");
}
+
private final SettingGroup sgGeneral = settings.getDefaultGroup();
private final Setting prefix = sgGeneral.add(new StringSetting.Builder()
.name("prefix")
@@ -50,14 +50,14 @@ public void setPrefixes() {
}
}
- public Text getPrefix() {
- MutableText value = Text.literal(prefix.get());
- MutableText prefix = Text.literal("");
+ public Component getPrefix() {
+ MutableComponent value = Component.literal(prefix.get());
+ MutableComponent prefix = Component.literal("");
value.setStyle(value.getStyle().withColor(TextColor.fromRgb(prefixColor.get().getPacked())));
- prefix.setStyle(prefix.getStyle().withFormatting(Formatting.GRAY))
- .append(Text.literal("["))
+ prefix.setStyle(prefix.getStyle().applyFormat(ChatFormatting.GRAY))
+ .append(Component.literal("["))
.append(value)
- .append(Text.literal("] "));
+ .append(Component.literal("] "));
return prefix;
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/misc/CordinateProtector.java b/src/main/java/nekiplay/meteorplus/features/modules/misc/CoordinateProtector.java
similarity index 69%
rename from src/main/java/nekiplay/meteorplus/features/modules/misc/CordinateProtector.java
rename to src/main/java/nekiplay/meteorplus/features/modules/misc/CoordinateProtector.java
index ede523d..a53e37f 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/misc/CordinateProtector.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/misc/CoordinateProtector.java
@@ -6,19 +6,19 @@
import nekiplay.main.events.hud.DebugDrawTextEvent;
import nekiplay.meteorplus.mixinclasses.SpoofMode;
import nekiplay.meteorplus.settings.ConfigModifier;
-import net.minecraft.util.Formatting;
-import net.minecraft.util.hit.BlockHitResult;
-import net.minecraft.util.hit.HitResult;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.util.math.ChunkPos;
-import net.minecraft.util.math.ChunkSectionPos;
+import net.minecraft.ChatFormatting;
+import net.minecraft.core.BlockPos;
+import net.minecraft.core.SectionPos;
+import net.minecraft.world.level.ChunkPos;
+import net.minecraft.world.phys.BlockHitResult;
+import net.minecraft.world.phys.HitResult;
import java.util.List;
import java.util.Locale;
import static meteordevelopment.meteorclient.MeteorClient.mc;
-public class CordinateProtector {
+public class CoordinateProtector {
@EventHandler
private void onDebugF3RenderText(DebugDrawTextEvent event) {
List lines = event.getLines();
@@ -36,8 +36,8 @@ private void onDebugF3RenderText(DebugDrawTextEvent event) {
lines.set(index, "XYZ: *** / *** / ***");
}
} else if (str.startsWith("Block: ")) {
- BlockPos blockPos = mc.getCameraEntity().getBlockPos();
- blockPos = blockPos.add(ConfigModifier.get().x_spoof.get(), 0, ConfigModifier.get().z_spoof.get());
+ BlockPos blockPos = mc.getCameraEntity().blockPosition();
+ blockPos = blockPos.offset(ConfigModifier.get().x_spoof.get(), 0, ConfigModifier.get().z_spoof.get());
String block = String.format(Locale.ROOT, "Block: %d %d %d", blockPos.getX(), blockPos.getY(), blockPos.getZ());
if (ConfigModifier.get().spoofMode.get() == SpoofMode.Fake) {
@@ -46,23 +46,23 @@ private void onDebugF3RenderText(DebugDrawTextEvent event) {
lines.set(index, "Block: *** *** ***");
}
} else if (str.startsWith("Chunk:")) {
- BlockPos blockPos = mc.getCameraEntity().getBlockPos();
- blockPos = blockPos.add(ConfigModifier.get().x_spoof.get(), 0, ConfigModifier.get().z_spoof.get());
- ChunkPos chunkPos = new ChunkPos(blockPos);
+ BlockPos blockPos = mc.getCameraEntity().blockPosition();
+ blockPos = blockPos.offset(ConfigModifier.get().x_spoof.get(), 0, ConfigModifier.get().z_spoof.get());
+ ChunkPos chunkPos = ChunkPos.containing(blockPos);
if (ConfigModifier.get().spoofMode.get() == SpoofMode.Fake) {
- String chunk = String.format(Locale.ROOT, "Chunk: %d %d %d [%d %d in r.%d.%d.mca]", chunkPos.x, ChunkSectionPos.getSectionCoord(blockPos.getY()), chunkPos.z, chunkPos.getRegionRelativeX(), chunkPos.getRegionRelativeZ(), chunkPos.getRegionX(), chunkPos.getRegionZ());
+ String chunk = String.format(Locale.ROOT, "Chunk: %d %d %d [%d %d in r.%d.%d.mca]", chunkPos.x(), SectionPos.blockToSectionCoord(blockPos.getY()), chunkPos.z(), chunkPos.getRegionLocalX(), chunkPos.getRegionLocalZ(), chunkPos.getRegionX(), chunkPos.getRegionZ());
lines.set(index, chunk);
} else if (ConfigModifier.get().spoofMode.get() == SpoofMode.Sensor) {
lines.set(index, "Chunk: *** *** *** [*** *** in ***.***.mca]");
}
} else if (str.contains("Targeted Block:")) {
- HitResult blockHitResult = mc.player.raycast(Modules.get().get(Reach.class).blockReach(), 1f, false);
+ HitResult blockHitResult = mc.player.pick(Modules.get().get(Reach.class).blockReach(), 1f, false);
if (blockHitResult != null && blockHitResult.getType() == HitResult.Type.BLOCK) {
- Formatting var10001 = Formatting.UNDERLINE;
+ ChatFormatting var10001 = ChatFormatting.UNDERLINE;
BlockPos blockPos = ((BlockHitResult) blockHitResult).getBlockPos();
- blockPos = blockPos.add(ConfigModifier.get().x_spoof.get(), 0, ConfigModifier.get().z_spoof.get());
+ blockPos = blockPos.offset(ConfigModifier.get().x_spoof.get(), 0, ConfigModifier.get().z_spoof.get());
if (ConfigModifier.get().spoofMode.get() == SpoofMode.Fake) {
lines.set(index, "" + var10001 + "Targeted Block: " + blockPos.getX() + ", " + blockPos.getY() + ", " + blockPos.getZ());
} else if (ConfigModifier.get().spoofMode.get() == SpoofMode.Sensor) {
@@ -70,12 +70,12 @@ private void onDebugF3RenderText(DebugDrawTextEvent event) {
}
}
} else if (str.contains("Targeted Fluid:")) {
- HitResult blockHitResult = mc.player.raycast(Modules.get().get(Reach.class).blockReach(), 1f, true);
+ HitResult blockHitResult = mc.player.pick(Modules.get().get(Reach.class).blockReach(), 1f, true);
if (blockHitResult != null && blockHitResult.getType() == HitResult.Type.BLOCK) {
- Formatting var10001 = Formatting.UNDERLINE;
+ ChatFormatting var10001 = ChatFormatting.UNDERLINE;
BlockPos blockPos = ((BlockHitResult) blockHitResult).getBlockPos();
- blockPos = blockPos.add(ConfigModifier.get().x_spoof.get(), 0, ConfigModifier.get().z_spoof.get());
+ blockPos = blockPos.offset(ConfigModifier.get().x_spoof.get(), 0, ConfigModifier.get().z_spoof.get());
if (ConfigModifier.get().spoofMode.get() == SpoofMode.Fake) {
lines.set(index, "" + var10001 + "Targeted Fluid: " + blockPos.getX() + ", " + blockPos.getY() + ", " + blockPos.getZ());
} else if (ConfigModifier.get().spoofMode.get() == SpoofMode.Sensor) {
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/Freeze.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/Freeze.java
index 35f1542..35744c6 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/Freeze.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/Freeze.java
@@ -12,14 +12,14 @@
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.orbit.EventHandler;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
-import net.minecraft.util.math.Vec3d;
-import nekiplay.meteorplus.MeteorPlusAddon;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
+import net.minecraft.world.phys.Vec3;
public class Freeze extends Module {
public Freeze() {
super(Categories.Movement, "Freeze", "Freezes your position for server.");
}
+
private final SettingGroup FSettings = settings.getDefaultGroup();
private final Setting FreezeLook = FSettings.add(new BoolSetting.Builder()
@@ -46,7 +46,7 @@ public Freeze() {
private final Setting FreezeLookPlace = FSettings.add(new BoolSetting.Builder()
.name("Freeze look place support")
- .description("Unfreez you yaw and pitch on place")
+ .description("Unfreeze you yaw and pitch on place")
.defaultValue(false)
.visible(FreezeLookSilent::get)
.build()
@@ -54,50 +54,47 @@ public Freeze() {
private float yaw = 0;
private float pitch = 0;
- private Vec3d position = Vec3d.ZERO;
+ private Vec3 position = Vec3.ZERO;
@Override()
public void onActivate() {
- if (mc.player != null){
- yaw = mc.player.getYaw();
- pitch = mc.player.getPitch();
- position = mc.player.getEntityPos();
+ if (mc.player != null) {
+ yaw = mc.player.getYRot();
+ pitch = mc.player.getXRot();
+ position = mc.player.position();
}
}
private boolean rotate = false;
- private void setFreezeLook(PacketEvent.Send event, PlayerMoveC2SPacket playerMove)
- {
- if (playerMove.changesLook() && FreezeLook.get() && FreezeLookSilent.get() && !rotate) {
+ private void setFreezeLook(PacketEvent.Send event, ServerboundMovePlayerPacket playerMove) {
+ if (playerMove.hasRotation() && FreezeLook.get() && FreezeLookSilent.get() && !rotate) {
event.setCancelled(true);
- }
- else if (mc.player != null && playerMove.changesLook() && FreezeLook.get() && !FreezeLookSilent.get()) {
+ } else if (mc.player != null && playerMove.hasRotation() && FreezeLook.get() && !FreezeLookSilent.get()) {
event.setCancelled(true);
- mc.player.setYaw(yaw);
- mc.player.setPitch(pitch);
+ mc.player.setYRot(yaw);
+ mc.player.setXRot(pitch);
}
- if (mc.player != null && playerMove.changesPosition()) {
- mc.player.setVelocity(0, 0, 0);
- mc.player.setPos(position.x, position.y, position.z);
+ if (mc.player != null && playerMove.hasPosition()) {
+ mc.player.setDeltaMovement(0, 0, 0);
+ mc.player.setPosRaw(position.x, position.y, position.z);
event.setCancelled(true);
}
}
@EventHandler
- private void InteractBlockEvent(InteractBlockEvent event)
- {
- if (mc.player != null && mc.getNetworkHandler() != null && FreezeLookPlace.get()) {
- PlayerMoveC2SPacket.LookAndOnGround r = new PlayerMoveC2SPacket.LookAndOnGround(mc.player.getYaw(), mc.player.getPitch(), mc.player.isOnGround(), mc.player.horizontalCollision);
+ private void InteractBlockEvent(InteractBlockEvent event) {
+ if (mc.player != null && mc.getConnection() != null && FreezeLookPlace.get()) {
+ ServerboundMovePlayerPacket.Rot r = new ServerboundMovePlayerPacket.Rot(mc.player.getYRot(), mc.player.getXRot(), mc.player.onGround(), mc.player.horizontalCollision);
rotate = true;
- mc.getNetworkHandler().sendPacket(r);
+ mc.getConnection().send(r);
rotate = false;
}
}
@EventHandler
private void onMovePacket(PacketEvent.Send event) {
- if (event.packet instanceof PlayerMoveC2SPacket playerMove) {
+ if (event.packet instanceof ServerboundMovePlayerPacket playerMove) {
if (Packet.get()) {
setFreezeLook(event, playerMove);
}
@@ -112,19 +109,19 @@ private void connectToServerEvent(GameLeftEvent event) {
@EventHandler
private void onTick(TickEvent.Pre event) {
if (mc.player != null) {
- mc.player.setVelocity(0, 0, 0);
- mc.player.setPos(position.x, position.y, position.z);
+ mc.player.setDeltaMovement(0, 0, 0);
+ mc.player.setPosRaw(position.x, position.y, position.z);
}
}
+
@EventHandler
private void onPlayerMove(PlayerMoveEvent event) {
- event.movement = new Vec3d(0, 0, 0);
+ event.movement = new Vec3(0, 0, 0);
}
+
@EventHandler
- private void remove(EntityRemovedEvent event)
- {
- if (event.entity == mc.player)
- {
+ private void remove(EntityRemovedEvent event) {
+ if (event.entity == mc.player) {
if (isActive()) {
toggle();
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/NoJumpDelay.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/NoJumpDelay.java
index 3546f9f..962df89 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/NoJumpDelay.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/NoJumpDelay.java
@@ -2,7 +2,6 @@
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
-import nekiplay.meteorplus.MeteorPlusAddon;
public class NoJumpDelay extends Module {
public NoJumpDelay() {
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/ElytraFlyMode.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/ElytraFlyMode.java
index 3be090d..1d052f7 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/ElytraFlyMode.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/ElytraFlyMode.java
@@ -3,11 +3,11 @@
import meteordevelopment.meteorclient.events.entity.player.PlayerMoveEvent;
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.systems.modules.Modules;
-import net.minecraft.client.MinecraftClient;
-import net.minecraft.util.math.Vec3d;
+import net.minecraft.client.Minecraft;
+import net.minecraft.world.phys.Vec3;
public class ElytraFlyMode {
- protected final MinecraftClient mc;
+ protected final Minecraft mc;
protected final ElytraFlyPlus elytraFly;
private final ElytraFlyModes type;
@@ -17,12 +17,12 @@ public class ElytraFlyMode {
protected int jumpTimer;
protected double velX, velY, velZ;
protected double ticksLeft;
- protected Vec3d forward, right;
+ protected Vec3 forward, right;
protected double acceleration;
public ElytraFlyMode(ElytraFlyModes type) {
this.elytraFly = Modules.get().get(ElytraFlyPlus.class);
- this.mc = MinecraftClient.getInstance();
+ this.mc = Minecraft.getInstance();
this.type = type;
}
@@ -53,8 +53,6 @@ public void onDeactivate() {
}
-
-
public String getHudString() {
return type.name();
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/ElytraFlyPlus.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/ElytraFlyPlus.java
index 1bd6380..1b045bc 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/ElytraFlyPlus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/ElytraFlyPlus.java
@@ -3,17 +3,17 @@
import meteordevelopment.meteorclient.events.entity.player.PlayerMoveEvent;
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.mixininterface.IVec3d;
+import meteordevelopment.meteorclient.mixininterface.IVec3;
import meteordevelopment.meteorclient.settings.*;
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.orbit.EventHandler;
import nekiplay.meteorplus.features.modules.movement.elytrafly.modes.Control;
import nekiplay.meteorplus.features.modules.movement.elytrafly.modes.Wasp;
-import net.minecraft.util.hit.BlockHitResult;
-import net.minecraft.util.hit.HitResult;
-import net.minecraft.util.math.Vec3d;
-import net.minecraft.world.RaycastContext;
+import net.minecraft.world.level.ClipContext;
+import net.minecraft.world.phys.BlockHitResult;
+import net.minecraft.world.phys.HitResult;
+import net.minecraft.world.phys.Vec3;
public class ElytraFlyPlus extends Module {
private final SettingGroup sgGeneral = settings.getDefaultGroup();
@@ -164,12 +164,12 @@ public void onDeactivate() {
private void onPlayerMove(PlayerMoveEvent event) {
currentMode.onPlayerMove(event);
- if (noCrash.get() && mc.player.isGliding()) {
- Vec3d lookAheadPos = mc.player.getEntityPos().add(mc.player.getVelocity().normalize().multiply(crashLookAhead.get()));
- RaycastContext raycastContext = new RaycastContext(mc.player.getEntityPos(), new Vec3d(lookAheadPos.getX(), mc.player.getY(), lookAheadPos.getZ()), RaycastContext.ShapeType.COLLIDER, RaycastContext.FluidHandling.NONE, mc.player);
- BlockHitResult hitResult = mc.world.raycast(raycastContext);
+ if (noCrash.get() && mc.player.isFallFlying()) {
+ Vec3 lookAheadPos = mc.player.position().add(mc.player.getDeltaMovement().normalize().scale(crashLookAhead.get()));
+ ClipContext raycastContext = new ClipContext(mc.player.position(), new Vec3(lookAheadPos.x(), mc.player.getY(), lookAheadPos.z()), ClipContext.Block.COLLIDER, ClipContext.Fluid.NONE, mc.player);
+ BlockHitResult hitResult = mc.level.clip(raycastContext);
if (hitResult != null && hitResult.getType() == HitResult.Type.BLOCK) {
- ((IVec3d) event.movement).meteor$set(0, currentMode.velY, 0);
+ ((IVec3) event.movement).meteor$set(0, currentMode.velY, 0);
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/modes/Control.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/modes/Control.java
index de25e1c..30fc6f4 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/modes/Control.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/modes/Control.java
@@ -1,30 +1,33 @@
package nekiplay.meteorplus.features.modules.movement.elytrafly.modes;
import meteordevelopment.meteorclient.events.entity.player.PlayerMoveEvent;
-import meteordevelopment.meteorclient.mixininterface.IVec3d;
+import meteordevelopment.meteorclient.mixininterface.IVec3;
import nekiplay.meteorplus.features.modules.movement.elytrafly.ElytraFlyMode;
import nekiplay.meteorplus.features.modules.movement.elytrafly.ElytraFlyModes;
-import net.minecraft.entity.EntityPose;
public class Control extends ElytraFlyMode {
public Control() {
super(ElytraFlyModes.Control);
}
+
private boolean moving;
private float yaw;
private float pitch;
private float p;
private double velocity;
+
@Override
public void onPlayerMove(PlayerMoveEvent event) {
- if (!mc.player.isGliding()) {return;}
+ if (!mc.player.isFallFlying()) {
+ return;
+ }
updateControlMovement();
pitch = 0;
boolean movingUp = false;
- if (!mc.options.sneakKey.isPressed() && mc.options.jumpKey.isPressed() && velocity > elytraFly.speed_control.get() * 0.4) {
+ if (!mc.options.keyShift.isDown() && mc.options.keyJump.isDown() && velocity > elytraFly.speed_control.get() * 0.4) {
p = (float) Math.min(p + 0.1 * (1 - p) * (1 - p) * (1 - p), 1f);
pitch = Math.max(Math.max(p, 0) * -90, -90);
@@ -45,23 +48,23 @@ public void onPlayerMove(PlayerMoveEvent event) {
double y = pitch < 0 ? velocity * elytraFly.upMultiplier_control.get() * -Math.sin(Math.toRadians(pitch)) * velocity : -elytraFly.fallSpeed_control.get();
double z = moving && !movingUp ? sin * elytraFly.speed_control.get() : movingUp ? velocity * Math.cos(Math.toRadians(pitch)) * sin : 0;
- y *= Math.abs(Math.sin(Math.toRadians(movingUp ? pitch : mc.player.getPitch())));
+ y *= Math.abs(Math.sin(Math.toRadians(movingUp ? pitch : mc.player.getXRot())));
- if (mc.options.sneakKey.isPressed() && !mc.options.jumpKey.isPressed()) {
+ if (mc.options.keyShift.isDown() && !mc.options.keyJump.isDown()) {
y = -elytraFly.downSpeed_control.get();
}
- ((IVec3d) event.movement).meteor$set(x, y, z);
+ ((IVec3) event.movement).meteor$set(x, y, z);
if (elytraFly.resetSpeed.get()) {
- mc.player.setVelocity(0, 0, 0);
+ mc.player.setDeltaMovement(0, 0, 0);
}
}
private void updateControlMovement() {
- float yaw = mc.player.getYaw();
+ float yaw = mc.player.getYRot();
- float forward = mc.player.input.getMovementInput().y;
- float sideways = mc.player.input.getMovementInput().x;
+ float forward = mc.player.input.getMoveVector().y;
+ float sideways = mc.player.input.getMoveVector().x;
if (forward > 0) {
moving = true;
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/modes/Wasp.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/modes/Wasp.java
index 10dd784..85cc5ac 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/modes/Wasp.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/elytrafly/modes/Wasp.java
@@ -1,7 +1,7 @@
package nekiplay.meteorplus.features.modules.movement.elytrafly.modes;
import meteordevelopment.meteorclient.events.entity.player.PlayerMoveEvent;
-import meteordevelopment.meteorclient.mixininterface.IVec3d;
+import meteordevelopment.meteorclient.mixininterface.IVec3;
import nekiplay.meteorplus.features.modules.movement.elytrafly.ElytraFlyMode;
import nekiplay.meteorplus.features.modules.movement.elytrafly.ElytraFlyModes;
@@ -16,10 +16,12 @@ public Wasp() {
@Override
public void onPlayerMove(PlayerMoveEvent event) {
- if (!mc.player.isGliding()) {return;}
+ if (!mc.player.isFallFlying()) {
+ return;
+ }
updateWaspMovement();
- pitch = mc.player.getPitch();
+ pitch = mc.player.getXRot();
double cos = Math.cos(Math.toRadians(yaw + 90));
double sin = Math.sin(Math.toRadians(yaw + 90));
@@ -32,25 +34,25 @@ public void onPlayerMove(PlayerMoveEvent event) {
y *= Math.abs(Math.sin(Math.toRadians(pitch)));
}
- if (mc.options.sneakKey.isPressed() && !mc.options.jumpKey.isPressed()) {
+ if (mc.options.keyShift.isDown() && !mc.options.keyJump.isDown()) {
y = -elytraFly.down_wasp.get();
}
- if (!mc.options.sneakKey.isPressed() && mc.options.jumpKey.isPressed()) {
+ if (!mc.options.keyShift.isDown() && mc.options.keyJump.isDown()) {
y = elytraFly.up_wasp.get();
}
- ((IVec3d) event.movement).meteor$set(x, y, z);
+ ((IVec3) event.movement).meteor$set(x, y, z);
if (elytraFly.resetSpeed.get()) {
- mc.player.setVelocity(0, 0, 0);
+ mc.player.setDeltaMovement(0, 0, 0);
}
}
private void updateWaspMovement() {
- float yaw = mc.player.getYaw();
+ float yaw = mc.player.getYRot();
- float forward = mc.player.input.getMovementInput().y;
- float sideways = mc.player.input.getMovementInput().x;
+ float forward = mc.player.input.getMoveVector().y;
+ float sideways = mc.player.input.getMoveVector().x;
if (forward > 0) {
moving = true;
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/fastladder/FastLadderMode.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/fastladder/FastLadderMode.java
index c0a761a..1cd12ee 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/fastladder/FastLadderMode.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/fastladder/FastLadderMode.java
@@ -3,25 +3,34 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.systems.modules.Modules;
-import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.Minecraft;
public class FastLadderMode {
- protected final MinecraftClient mc;
+ protected final Minecraft mc;
protected final FastLadderPlus settings;
private final FastLadderModes type;
public FastLadderMode(FastLadderModes type) {
this.settings = Modules.get().get(FastLadderPlus.class);
- this.mc = MinecraftClient.getInstance();
+ this.mc = Minecraft.getInstance();
this.type = type;
}
- public void onSendPacket(PacketEvent.Send event) {}
- public void onSentPacket(PacketEvent.Sent event) {}
+ public void onSendPacket(PacketEvent.Send event) {
+ }
- public void onTickEventPre(TickEvent.Pre event) {}
- public void onTickEventPost(TickEvent.Post event) {}
+ public void onSentPacket(PacketEvent.Sent event) {
+ }
- public void onActivate() {}
- public void onDeactivate() {}
+ public void onTickEventPre(TickEvent.Pre event) {
+ }
+
+ public void onTickEventPost(TickEvent.Post event) {
+ }
+
+ public void onActivate() {
+ }
+
+ public void onDeactivate() {
+ }
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/fastladder/FastLadderPlus.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/fastladder/FastLadderPlus.java
index f61b591..cf4c8b7 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/fastladder/FastLadderPlus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/fastladder/FastLadderPlus.java
@@ -15,6 +15,7 @@ public FastLadderPlus() {
super(Categories.Movement, "fast-climb+", "Bypass fast-climb");
onSpiderModeChanged(spiderMode.get());
}
+
private final SettingGroup sgGeneral = settings.getDefaultGroup();
public final Setting spiderMode = sgGeneral.add(new EnumSetting.Builder()
@@ -47,10 +48,12 @@ private void onPreTick(TickEvent.Pre event) {
private void onPostTick(TickEvent.Post event) {
currentMode.onTickEventPost(event);
}
+
@EventHandler
public void onSendPacket(PacketEvent.Send event) {
currentMode.onSendPacket(event);
}
+
@EventHandler
public void onSentPacket(PacketEvent.Sent event) {
currentMode.onSentPacket(event);
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/fastladder/modes/Spartan.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/fastladder/modes/Spartan.java
index 60cd3f7..eabd391 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/fastladder/modes/Spartan.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/fastladder/modes/Spartan.java
@@ -2,16 +2,15 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.mixin.PlayerMoveC2SPacketAccessor;
-import net.minecraft.block.BlockState;
-import net.minecraft.block.Blocks;
-import net.minecraft.client.network.ClientPlayNetworkHandler;
-import net.minecraft.client.network.ClientPlayerEntity;
-import net.minecraft.network.packet.Packet;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
-import net.minecraft.util.math.Vec3d;
+import meteordevelopment.meteorclient.mixin.ServerboundMovePlayerPacketAccessor;
import nekiplay.meteorplus.features.modules.movement.fastladder.FastLadderMode;
import nekiplay.meteorplus.features.modules.movement.fastladder.FastLadderModes;
+import net.minecraft.client.multiplayer.ClientPacketListener;
+import net.minecraft.client.player.LocalPlayer;
+import net.minecraft.network.protocol.Packet;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
+import net.minecraft.world.level.block.state.BlockState;
+import net.minecraft.world.phys.Vec3;
public class Spartan extends FastLadderMode {
public Spartan() {
@@ -34,7 +33,7 @@ public void onActivate() {
modify = false;
assert mc.player != null;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
}
private boolean YGround(double height, double min, double max) {
@@ -62,25 +61,25 @@ public void onSentPacket(PacketEvent.Sent event) {
private void work(Packet> packet) {
if (modify) {
- if (packet instanceof PlayerMoveC2SPacket move) {
+ if (packet instanceof ServerboundMovePlayerPacket move) {
assert mc.player != null;
double y = mc.player.getY();
y = move.getY(y);
if (YGround(y, RGround(startY) - 0.1, RGround(startY) + 0.1)) {
- ((PlayerMoveC2SPacketAccessor) packet).meteor$setOnGround(true);
+ ((ServerboundMovePlayerPacketAccessor) packet).meteor$setOnGround(true);
}
- if (mc.player.isOnGround() && block) {
+ if (mc.player.onGround() && block) {
block = false;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
start = false;
}
}
} else {
assert mc.player != null;
- if (mc.player.isOnGround() && block) {
+ if (mc.player.onGround() && block) {
block = false;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
start = false;
}
}
@@ -91,8 +90,8 @@ private void work(Packet> packet) {
@Override
public void onTickEventPre(TickEvent.Pre event) {
if (modify) {
- ClientPlayerEntity player = mc.player;
- double y = player.getEntityPos().y;
+ LocalPlayer player = mc.player;
+ double y = player.position().y;
if (lastY == y && tick > 1) {
block = true;
} else {
@@ -104,35 +103,35 @@ public void onTickEventPre(TickEvent.Pre event) {
@Override
public void onTickEventPost(TickEvent.Post event) {
- ClientPlayerEntity player = mc.player;
+ LocalPlayer player = mc.player;
assert player != null;
- Vec3d pl_velocity = player.getVelocity();
- Vec3d pos = player.getEntityPos();
- ClientPlayNetworkHandler h = mc.getNetworkHandler();
- BlockState state = mc.world.getBlockState(player.getBlockPos());
- BlockState state2 = mc.world.getBlockState(player.getBlockPos().add(0, 1, 0));
- if (mc.player.isClimbing()) {
- modify = player.horizontalCollision && player.isHoldingOntoLadder();
- if (mc.player.isOnGround()) {
+ Vec3 pl_velocity = player.getDeltaMovement();
+ Vec3 pos = player.position();
+ ClientPacketListener h = mc.getConnection();
+ BlockState state = mc.level.getBlockState(player.blockPosition());
+ BlockState state2 = mc.level.getBlockState(player.blockPosition().offset(0, 1, 0));
+ if (mc.player.onClimbable()) {
+ modify = player.horizontalCollision && player.isSuppressingSlidingDownLadder();
+ if (mc.player.onGround()) {
block = false;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
start = false;
}
if (player.horizontalCollision) {
if (!start) {
start = true;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
lastY = mc.player.getY();
}
if (!block) {
if (tick == 0) {
- mc.player.setVelocity(pl_velocity.x, 0.41999998688698, pl_velocity.z);
+ mc.player.setDeltaMovement(pl_velocity.x, 0.41999998688698, pl_velocity.z);
tick = 1;
} else if (tick == 1) {
- mc.player.setVelocity(pl_velocity.x, 0.41999998688698 - 0.08679999325 - coff, pl_velocity.z);
+ mc.player.setDeltaMovement(pl_velocity.x, 0.41999998688698 - 0.08679999325 - coff, pl_velocity.z);
tick = 2;
} else if (tick == 2) {
- mc.player.setVelocity(pl_velocity.x, 0.41999998688698 - 0.17186398826 - coff, pl_velocity.z);
+ mc.player.setDeltaMovement(pl_velocity.x, 0.41999998688698 - 0.17186398826 - coff, pl_velocity.z);
tick = 0;
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/FlyMode.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/FlyMode.java
index a0a90fd..55bbc44 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/FlyMode.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/FlyMode.java
@@ -7,31 +7,49 @@
import meteordevelopment.meteorclient.events.world.CollisionShapeEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.systems.modules.Modules;
-import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.Minecraft;
public class FlyMode {
- protected final MinecraftClient mc;
+ protected final Minecraft mc;
protected final FlyPlus settings;
private final FlyModes type;
public FlyMode(FlyModes type) {
this.settings = Modules.get().get(FlyPlus.class);
- this.mc = MinecraftClient.getInstance();
+ this.mc = Minecraft.getInstance();
this.type = type;
}
- public void onSendPacket(PacketEvent.Send event) {}
- public void onSentPacket(PacketEvent.Sent event) {}
- public void onRecivePacket(PacketEvent.Receive event) {}
- public void onPlayerMoveEvent(PlayerMoveEvent event) {}
- public void onPlayerMoveSendPre(SendMovementPacketsEvent.Pre event) {}
+ public void onSendPacket(PacketEvent.Send event) {
+ }
+
+ public void onSentPacket(PacketEvent.Sent event) {
+ }
+
+ public void onReceivePacket(PacketEvent.Receive event) {
+ }
+
+ public void onPlayerMoveEvent(PlayerMoveEvent event) {
+ }
+
+ public void onPlayerMoveSendPre(SendMovementPacketsEvent.Pre event) {
+ }
- public void onCanWalkOnFluid(CanWalkOnFluidEvent event) {}
- public void onCollisionShape(CollisionShapeEvent event) {}
+ public void onCanWalkOnFluid(CanWalkOnFluidEvent event) {
+ }
- public void onTickEventPre(TickEvent.Pre event) {}
- public void onTickEventPost(TickEvent.Post event) {}
+ public void onCollisionShape(CollisionShapeEvent event) {
+ }
- public void onActivate() {}
- public void onDeactivate() {}
+ public void onTickEventPre(TickEvent.Pre event) {
+ }
+
+ public void onTickEventPost(TickEvent.Post event) {
+ }
+
+ public void onActivate() {
+ }
+
+ public void onDeactivate() {
+ }
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/FlyPlus.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/FlyPlus.java
index a013582..20122cf 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/FlyPlus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/FlyPlus.java
@@ -12,7 +12,9 @@
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.orbit.EventHandler;
-import nekiplay.meteorplus.features.modules.movement.fly.modes.*;
+import nekiplay.meteorplus.features.modules.movement.fly.modes.MatrixExploit;
+import nekiplay.meteorplus.features.modules.movement.fly.modes.MatrixExploit2;
+import nekiplay.meteorplus.features.modules.movement.fly.modes.VulcanClip;
public class FlyPlus extends Module {
private final SettingGroup sgGeneral = settings.getDefaultGroup();
@@ -96,24 +98,27 @@ private void onPreTick(TickEvent.Pre event) {
private void onPostTick(TickEvent.Post event) {
currentMode.onTickEventPost(event);
}
+
@EventHandler
public void onSendPacket(PacketEvent.Send event) {
currentMode.onSendPacket(event);
}
+
@EventHandler
public void onSentPacket(PacketEvent.Sent event) {
currentMode.onSentPacket(event);
}
@EventHandler
- public void onRecivePacket(PacketEvent.Receive event) {
- currentMode.onRecivePacket(event);
+ public void onReceivePacket(PacketEvent.Receive event) {
+ currentMode.onReceivePacket(event);
}
@EventHandler
public void onCanWalkOnFluid(CanWalkOnFluidEvent event) {
currentMode.onCanWalkOnFluid(event);
}
+
@EventHandler
public void onCollisionShape(CollisionShapeEvent event) {
currentMode.onCollisionShape(event);
@@ -123,6 +128,7 @@ public void onCollisionShape(CollisionShapeEvent event) {
private void onPlayerMoveEvent(PlayerMoveEvent event) {
currentMode.onPlayerMoveEvent(event);
}
+
@EventHandler
private void onPlayerMoveSendPre(SendMovementPacketsEvent.Pre event) {
currentMode.onPlayerMoveSendPre(event);
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/modes/MatrixExploit.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/modes/MatrixExploit.java
index 755f86c..9a882cf 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/modes/MatrixExploit.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/modes/MatrixExploit.java
@@ -2,19 +2,19 @@
import meteordevelopment.meteorclient.events.entity.player.PlayerMoveEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.mixininterface.IVec3d;
+import meteordevelopment.meteorclient.mixininterface.IVec3;
import meteordevelopment.meteorclient.systems.modules.Modules;
import meteordevelopment.meteorclient.systems.modules.movement.Anchor;
import meteordevelopment.meteorclient.utils.misc.Names;
import meteordevelopment.meteorclient.utils.player.FindItemResult;
import meteordevelopment.meteorclient.utils.player.InvUtils;
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
-import net.minecraft.entity.effect.StatusEffects;
-import net.minecraft.item.Items;
-import net.minecraft.network.packet.c2s.play.ClientCommandC2SPacket;
-import net.minecraft.util.math.Vec3d;
import nekiplay.meteorplus.features.modules.movement.fly.FlyMode;
import nekiplay.meteorplus.features.modules.movement.fly.FlyModes;
+import net.minecraft.network.protocol.game.ServerboundPlayerCommandPacket;
+import net.minecraft.world.effect.MobEffects;
+import net.minecraft.world.item.Items;
+import net.minecraft.world.phys.Vec3;
public class MatrixExploit extends FlyMode {
public MatrixExploit() {
@@ -39,42 +39,42 @@ public void onActivate() {
public void onDeactivate() {
if (!mc.player.isSpectator()) {
mc.player.getAbilities().flying = false;
- mc.player.getAbilities().setFlySpeed(0.05f);
- if (mc.player.getAbilities().creativeMode) return;
- mc.player.getAbilities().allowFlying = false;
+ mc.player.getAbilities().setFlyingSpeed(0.05f);
+ if (mc.player.getAbilities().instabuild) return;
+ mc.player.getAbilities().mayfly = false;
}
}
public void startFly() {
- mc.player.networkHandler.sendPacket(new ClientCommandC2SPacket(mc.player, ClientCommandC2SPacket.Mode.START_FALL_FLYING));
+ mc.player.connection.send(new ServerboundPlayerCommandPacket(mc.player, ServerboundPlayerCommandPacket.Action.START_FALL_FLYING));
}
@Override
public void onTickEventPre(TickEvent.Pre event) {
FindItemResult r = InvUtils.find(Items.ELYTRA);
- float yaw = mc.player.getYaw();
- Vec3d forward = Vec3d.fromPolar(0, yaw);
- Vec3d right = Vec3d.fromPolar(0, yaw + 90);
+ float yaw = mc.player.getYRot();
+ Vec3 forward = Vec3.directionFromRotation(0, yaw);
+ Vec3 right = Vec3.directionFromRotation(0, yaw + 90);
double velX = 0;
double velZ = 0;
double s = settings.speed_1.get();
double speedValue = 0.01;
- if (mc.options.forwardKey.isPressed()) {
+ if (mc.options.keyUp.isDown()) {
velX += forward.x * s;
velZ += forward.z * s;
}
- if (mc.options.backKey.isPressed()) {
+ if (mc.options.keyDown.isDown()) {
velX -= forward.x * s;
velZ -= forward.z * s;
}
- if (mc.options.rightKey.isPressed()) {
+ if (mc.options.keyRight.isDown()) {
velX += right.x * s;
velZ += right.z * s;
}
- if (mc.options.leftKey.isPressed()) {
+ if (mc.options.keyLeft.isDown()) {
velX -= right.x * s;
velZ -= right.z * s;
}
@@ -87,17 +87,16 @@ public void onTickEventPre(TickEvent.Pre event) {
InvUtils.move().fromArmor(2).to(r.slot());
tick = 21;
}
- }
- else {
+ } else {
tick--;
}
if (tick2 >= 0) {
- mc.player.setVelocity(mc.player.getVelocity().x, 0.100000001490116, mc.player.getVelocity().z);
+ mc.player.setDeltaMovement(mc.player.getDeltaMovement().x, 0.100000001490116, mc.player.getDeltaMovement().z);
y = 0.100000001490116f;
tick2++;
if (tick2 >= 13) {
y = -0.060000001490116f;
- mc.player.setVelocity(mc.player.getVelocity().x, -0.060000001490116, mc.player.getVelocity().z);
+ mc.player.setDeltaMovement(mc.player.getDeltaMovement().x, -0.060000001490116, mc.player.getDeltaMovement().z);
if (tick2 == 16) {
tick2 = 0;
}
@@ -109,12 +108,12 @@ public void onTickEventPre(TickEvent.Pre event) {
@Override
public void onPlayerMoveEvent(PlayerMoveEvent event) {
- Vec3d vel = PlayerUtils.getHorizontalVelocity(settings.speed_1.get());
- double velX = vel.getX();
- double velZ = vel.getZ();
+ Vec3 vel = PlayerUtils.getHorizontalVelocity(settings.speed_1.get());
+ double velX = vel.x();
+ double velZ = vel.z();
- if (mc.player.hasStatusEffect(StatusEffects.SPEED)) {
- double value = (mc.player.getStatusEffect(StatusEffects.SPEED).getAmplifier() + 1) * 0.205;
+ if (mc.player.hasEffect(MobEffects.SPEED)) {
+ double value = (mc.player.getEffect(MobEffects.SPEED).getAmplifier() + 1) * 0.205;
velX += velX * value;
velZ += velZ * value;
}
@@ -125,10 +124,10 @@ public void onPlayerMoveEvent(PlayerMoveEvent event) {
velZ = anchor.deltaZ;
}
- ((IVec3d) event.movement).meteor$set(velX, event.movement.y, velZ);
+ ((IVec3) event.movement).meteor$set(velX, event.movement.y, velZ);
}
private void fly(double y) {
- mc.player.setVelocity(0, y, 0);
+ mc.player.setDeltaMovement(0, y, 0);
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/modes/MatrixExploit2.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/modes/MatrixExploit2.java
index 6781053..2707c39 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/modes/MatrixExploit2.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/modes/MatrixExploit2.java
@@ -4,12 +4,12 @@
import meteordevelopment.meteorclient.utils.misc.Names;
import meteordevelopment.meteorclient.utils.player.FindItemResult;
import meteordevelopment.meteorclient.utils.player.InvUtils;
-import net.minecraft.client.network.ClientPlayerEntity;
-import net.minecraft.item.Items;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
import nekiplay.meteorplus.features.modules.movement.fly.FlyMode;
import nekiplay.meteorplus.features.modules.movement.fly.FlyModes;
import nekiplay.meteorplus.utils.ElytraUtils;
+import net.minecraft.client.player.LocalPlayer;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
+import net.minecraft.world.item.Items;
public class MatrixExploit2 extends FlyMode {
public MatrixExploit2() {
@@ -18,6 +18,7 @@ public MatrixExploit2() {
private int ticks = 0;
private int slot = 0;
+
@Override
public void onActivate() {
ticks = 0;
@@ -27,9 +28,10 @@ public void onActivate() {
settings.toggle();
}
}
+
@Override
public void onTickEventPre(TickEvent.Pre event) {
- ClientPlayerEntity player = mc.player;
+ LocalPlayer player = mc.player;
assert player != null;
switch (ticks) {
case 0: {
@@ -40,13 +42,13 @@ public void onTickEventPre(TickEvent.Pre event) {
ticks++;
}
case 1: {
- if (mc.player.isOnGround())
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.OnGroundOnly(false, mc.player.horizontalCollision));
+ if (mc.player.onGround())
+ mc.player.connection.send(new ServerboundMovePlayerPacket.StatusOnly(false, mc.player.horizontalCollision));
ticks++;
}
case 2: {
- if (mc.player.isOnGround())
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.OnGroundOnly(false, mc.player.horizontalCollision));
+ if (mc.player.onGround())
+ mc.player.connection.send(new ServerboundMovePlayerPacket.StatusOnly(false, mc.player.horizontalCollision));
ticks++;
}
case 3: {
@@ -54,33 +56,31 @@ public void onTickEventPre(TickEvent.Pre event) {
ticks++;
}
case 4: {
- player.getAbilities().setFlySpeed(settings.speed_1.get().floatValue());
- mc.player.setVelocity(mc.player.getVelocity().x, 0.100000001490116, mc.player.getVelocity().z);
+ player.getAbilities().setFlyingSpeed(settings.speed_1.get().floatValue());
+ mc.player.setDeltaMovement(mc.player.getDeltaMovement().x, 0.100000001490116, mc.player.getDeltaMovement().z);
ticks++;
}
case 5: {
ElytraUtils.startFly();
- mc.player.setVelocity(mc.player.getVelocity().x, 0.100000001490116, mc.player.getVelocity().z);
+ mc.player.setDeltaMovement(mc.player.getDeltaMovement().x, 0.100000001490116, mc.player.getDeltaMovement().z);
ticks++;
}
case 6: {
InvUtils.move().fromArmor(2).to(slot);
//InvUtils.quickMove().fromArmor(2).to(slot);
- mc.player.setVelocity(mc.player.getVelocity().x, 0.100000001490116, mc.player.getVelocity().z);
+ mc.player.setDeltaMovement(mc.player.getDeltaMovement().x, 0.100000001490116, mc.player.getDeltaMovement().z);
ticks++;
}
default: {
if (ticks >= 13 && ticks <= 16) {
ticks++;
- mc.player.setVelocity(mc.player.getVelocity().x, -0.060000001490116, mc.player.getVelocity().z);
- player.getAbilities().setFlySpeed(settings.speed2.get().floatValue() - 0.1f);
- }
- else if (ticks <= 16) {
+ mc.player.setDeltaMovement(mc.player.getDeltaMovement().x, -0.060000001490116, mc.player.getDeltaMovement().z);
+ player.getAbilities().setFlyingSpeed(settings.speed2.get().floatValue() - 0.1f);
+ } else if (ticks <= 16) {
ticks++;
- mc.player.setVelocity(mc.player.getVelocity().x, 0.100000001490116, mc.player.getVelocity().z);
- player.getAbilities().setFlySpeed(settings.speed2.get().floatValue());
- }
- else {
+ mc.player.setDeltaMovement(mc.player.getDeltaMovement().x, 0.100000001490116, mc.player.getDeltaMovement().z);
+ player.getAbilities().setFlyingSpeed(settings.speed2.get().floatValue());
+ } else {
ticks = 0;
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/modes/VulcanClip.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/modes/VulcanClip.java
index 64dacb2..0b9b516 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/modes/VulcanClip.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/fly/modes/VulcanClip.java
@@ -6,9 +6,9 @@
import meteordevelopment.meteorclient.systems.modules.world.Timer;
import nekiplay.meteorplus.features.modules.movement.fly.FlyMode;
import nekiplay.meteorplus.features.modules.movement.fly.FlyModes;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
-import net.minecraft.network.packet.s2c.play.PlayerPositionLookS2CPacket;
-import net.minecraft.util.math.Vec3d;
+import net.minecraft.network.protocol.game.ClientboundPlayerPositionPacket;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
+import net.minecraft.world.phys.Vec3;
import static java.lang.Math.cos;
import static java.lang.Math.sin;
@@ -31,14 +31,13 @@ public void onDeactivate() {
@Override
public void onActivate() {
timer = Modules.get().get(Timer.class);
- if (mc.player.isOnGround() && settings.canClip.get()) {
+ if (mc.player.onGround() && settings.canClip.get()) {
clip(0f, -0.1f);
waitFlag = true;
canGlide = false;
ticks = 0;
timer.setOverride(0.1f);
- }
- else {
+ } else {
waitFlag = false;
canGlide = true;
}
@@ -49,27 +48,27 @@ public void onPlayerMoveSendPre(SendMovementPacketsEvent.Pre event) {
if (canGlide) {
timer.setOverride(1f);
- Vec3d velocity = mc.player.getVelocity();
+ Vec3 velocity = mc.player.getDeltaMovement();
velocity.add(0, -(ticks % 2 == 0 ? 0.17 : 0.10), 0);
- if(ticks == 0) {
+ if (ticks == 0) {
velocity.add(0, -0.07, 0);
}
- mc.player.setVelocity(velocity);
+ mc.player.setDeltaMovement(velocity);
ticks++;
}
}
@Override
- public void onRecivePacket(PacketEvent.Receive event) {
- super.onRecivePacket(event);
- if (event.packet instanceof PlayerPositionLookS2CPacket && waitFlag) {
- PlayerPositionLookS2CPacket packet = (PlayerPositionLookS2CPacket)event.packet;
- Vec3d playerPos = mc.player.getEntityPos();
+ public void onReceivePacket(PacketEvent.Receive event) {
+ super.onReceivePacket(event);
+ if (event.packet instanceof ClientboundPlayerPositionPacket && waitFlag) {
+ ClientboundPlayerPositionPacket packet = (ClientboundPlayerPositionPacket) event.packet;
+ Vec3 playerPos = mc.player.position();
waitFlag = false;
- mc.player.setPosition(packet.change().position().x, packet.change().position().y, packet.change().position().z);
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.PositionAndOnGround(playerPos.x, playerPos.y, playerPos.z, false, mc.player.horizontalCollision));
+ mc.player.setPos(packet.change().position().x, packet.change().position().y, packet.change().position().z);
+ mc.player.connection.send(new ServerboundMovePlayerPacket.Pos(playerPos.x, playerPos.y, playerPos.z, false, mc.player.horizontalCollision));
event.cancel();
- mc.player.jump();
+ mc.player.jumpFromGround();
clip(0.127318f, 0f);
clip(3.425559f, 3.7f);
clip(3.14285f, 3.54f);
@@ -79,11 +78,11 @@ public void onRecivePacket(PacketEvent.Receive event) {
}
private void clip(float dist, float y) {
- float tickDelta = mc.getRenderTickCounter().getTickProgress(true);
- double yaw = Math.toRadians(mc.player.getYaw(tickDelta));
+ float tickDelta = mc.getDeltaTracker().getGameTimeDeltaPartialTick(true);
+ double yaw = Math.toRadians(mc.player.getViewYRot(tickDelta));
double x = -sin(yaw) * dist;
double z = cos(yaw) * dist;
- mc.player.setPosition(mc.player.getEntityPos().x + x, mc.player.getEntityPos().y + y, mc.player.getEntityPos().z + z);
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.PositionAndOnGround(mc.player.getX(), mc.player.getY(), mc.player.getZ(), false, mc.player.horizontalCollision));
+ mc.player.setPos(mc.player.position().x + x, mc.player.position().y + y, mc.player.position().z + z);
+ mc.player.connection.send(new ServerboundMovePlayerPacket.Pos(mc.player.getX(), mc.player.getY(), mc.player.getZ(), false, mc.player.horizontalCollision));
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/JesusMode.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/JesusMode.java
index 192433e..df637e4 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/JesusMode.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/JesusMode.java
@@ -6,29 +6,43 @@
import meteordevelopment.meteorclient.events.world.CollisionShapeEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.systems.modules.Modules;
-import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.Minecraft;
public class JesusMode {
- protected final MinecraftClient mc;
+ protected final Minecraft mc;
protected final JesusPlus settings;
private final JesusModes type;
public JesusMode(JesusModes type) {
this.settings = Modules.get().get(JesusPlus.class);
- this.mc = MinecraftClient.getInstance();
+ this.mc = Minecraft.getInstance();
this.type = type;
}
- public void onSendPacket(PacketEvent.Send event) {}
- public void onSentPacket(PacketEvent.Sent event) {}
- public void onPlayerMoveEvent(PlayerMoveEvent event) {}
+ public void onSendPacket(PacketEvent.Send event) {
+ }
+
+ public void onSentPacket(PacketEvent.Sent event) {
+ }
+
+ public void onPlayerMoveEvent(PlayerMoveEvent event) {
+ }
+
+ public void onCanWalkOnFluid(CanWalkOnFluidEvent event) {
+ }
- public void onCanWalkOnFluid(CanWalkOnFluidEvent event) {}
- public void onCollisionShape(CollisionShapeEvent event) {}
+ public void onCollisionShape(CollisionShapeEvent event) {
+ }
+
+ public void onTickEventPre(TickEvent.Pre event) {
+ }
- public void onTickEventPre(TickEvent.Pre event) {}
- public void onTickEventPost(TickEvent.Post event) {}
+ public void onTickEventPost(TickEvent.Post event) {
+ }
- public void onActivate() {}
- public void onDeactivate() {}
+ public void onActivate() {
+ }
+
+ public void onDeactivate() {
+ }
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/JesusPlus.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/JesusPlus.java
index d31ddd7..b48cd29 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/JesusPlus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/JesusPlus.java
@@ -77,10 +77,12 @@ private void onPreTick(TickEvent.Pre event) {
private void onPostTick(TickEvent.Post event) {
currentMode.onTickEventPost(event);
}
+
@EventHandler
public void onSendPacket(PacketEvent.Send event) {
currentMode.onSendPacket(event);
}
+
@EventHandler
public void onSentPacket(PacketEvent.Sent event) {
currentMode.onSentPacket(event);
@@ -90,6 +92,7 @@ public void onSentPacket(PacketEvent.Sent event) {
public void onCanWalkOnFluid(CanWalkOnFluidEvent event) {
currentMode.onCanWalkOnFluid(event);
}
+
@EventHandler
public void onCollisionShape(CollisionShapeEvent event) {
currentMode.onCollisionShape(event);
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/MatrixZoom.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/MatrixZoom.java
index b68f61a..e15d6ff 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/MatrixZoom.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/MatrixZoom.java
@@ -1,12 +1,12 @@
package nekiplay.meteorplus.features.modules.movement.jesus.modes;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.mixininterface.IVec3d;
-import net.minecraft.block.Blocks;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.util.math.Vec3d;
+import meteordevelopment.meteorclient.mixininterface.IVec3;
import nekiplay.meteorplus.features.modules.movement.jesus.JesusMode;
import nekiplay.meteorplus.features.modules.movement.jesus.JesusModes;
+import net.minecraft.core.BlockPos;
+import net.minecraft.world.level.block.Blocks;
+import net.minecraft.world.phys.Vec3;
public class MatrixZoom extends JesusMode {
public MatrixZoom() {
@@ -17,34 +17,34 @@ public MatrixZoom() {
@Override
public void onTickEventPre(TickEvent.Pre event) {
- float yaw = mc.player.getYaw();
- Vec3d forward = Vec3d.fromPolar(0, yaw);
- Vec3d right = Vec3d.fromPolar(0, yaw + 90);
+ float yaw = mc.player.getYRot();
+ Vec3 forward = Vec3.directionFromRotation(0, yaw);
+ Vec3 right = Vec3.directionFromRotation(0, yaw + 90);
double velX = 0;
double velZ = 0;
double s = 0.5;
double speedValue = settings.speed.get();
- if (mc.options.forwardKey.isPressed()) {
+ if (mc.options.keyUp.isDown()) {
velX += forward.x * s * speedValue;
velZ += forward.z * s * speedValue;
}
- if (mc.options.backKey.isPressed()) {
+ if (mc.options.keyDown.isDown()) {
velX -= forward.x * s * speedValue;
velZ -= forward.z * s * speedValue;
}
- if (mc.options.rightKey.isPressed()) {
+ if (mc.options.keyRight.isDown()) {
velX += right.x * s * speedValue;
velZ += right.z * s * speedValue;
}
- if (mc.options.leftKey.isPressed()) {
+ if (mc.options.keyLeft.isDown()) {
velX -= right.x * s * speedValue;
velZ -= right.z * s * speedValue;
}
- if (mc.world.getBlockState(new BlockPos(mc.player.getBlockX(), (int) (mc.player.getBlockY() + range), mc.player.getBlockZ())).getBlock() == Blocks.WATER && !mc.player.horizontalCollision) {
- ((IVec3d) mc.player.getVelocity()).meteor$set(velX, 0, velZ);
+ if (mc.level.getBlockState(new BlockPos(mc.player.getBlockX(), (int) (mc.player.getBlockY() + range), mc.player.getBlockZ())).getBlock() == Blocks.WATER && !mc.player.horizontalCollision) {
+ ((IVec3) mc.player.getDeltaMovement()).meteor$set(velX, 0, velZ);
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/MatrixZoom2.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/MatrixZoom2.java
index e6784dc..7210da2 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/MatrixZoom2.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/MatrixZoom2.java
@@ -1,12 +1,12 @@
package nekiplay.meteorplus.features.modules.movement.jesus.modes;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.mixininterface.IVec3d;
-import net.minecraft.block.Blocks;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.util.math.Vec3d;
+import meteordevelopment.meteorclient.mixininterface.IVec3;
import nekiplay.meteorplus.features.modules.movement.jesus.JesusMode;
import nekiplay.meteorplus.features.modules.movement.jesus.JesusModes;
+import net.minecraft.core.BlockPos;
+import net.minecraft.world.level.block.Blocks;
+import net.minecraft.world.phys.Vec3;
public class MatrixZoom2 extends JesusMode {
public MatrixZoom2() {
@@ -18,38 +18,37 @@ public MatrixZoom2() {
@Override
public void onTickEventPre(TickEvent.Pre event) {
- float yaw = mc.player.getYaw();
- Vec3d forward = Vec3d.fromPolar(0, yaw);
- Vec3d right = Vec3d.fromPolar(0, yaw + 90);
+ float yaw = mc.player.getYRot();
+ Vec3 forward = Vec3.directionFromRotation(0, yaw);
+ Vec3 right = Vec3.directionFromRotation(0, yaw + 90);
double velX = 0;
double velZ = 0;
double s = 0.5;
double speedValue = settings.speed.get();
- if (mc.options.forwardKey.isPressed()) {
+ if (mc.options.keyUp.isDown()) {
velX += forward.x * s * speedValue;
velZ += forward.z * s * speedValue;
}
- if (mc.options.backKey.isPressed()) {
+ if (mc.options.keyDown.isDown()) {
velX -= forward.x * s * speedValue;
velZ -= forward.z * s * speedValue;
}
- if (mc.options.rightKey.isPressed()) {
+ if (mc.options.keyRight.isDown()) {
velX += right.x * s * speedValue;
velZ += right.z * s * speedValue;
}
- if (mc.options.leftKey.isPressed()) {
+ if (mc.options.keyLeft.isDown()) {
velX -= right.x * s * speedValue;
velZ -= right.z * s * speedValue;
}
- if (mc.world.getBlockState(new BlockPos((int) mc.player.getEntityPos().x, (int) (mc.player.getEntityPos().y + range), (int) mc.player.getEntityPos().z)).getBlock() == Blocks.WATER && !mc.player.horizontalCollision) {
+ if (mc.level.getBlockState(new BlockPos((int) mc.player.position().x, (int) (mc.player.position().y + range), (int) mc.player.position().z)).getBlock() == Blocks.WATER && !mc.player.horizontalCollision) {
if (tick == 0) {
- ((IVec3d) mc.player.getVelocity()).meteor$set(velX, 0.030091, velZ);
- }
- else if (tick == 1) {
- ((IVec3d) mc.player.getVelocity()).meteor$set(velX, -0.030091, velZ);
+ ((IVec3) mc.player.getDeltaMovement()).meteor$set(velX, 0.030091, velZ);
+ } else if (tick == 1) {
+ ((IVec3) mc.player.getDeltaMovement()).meteor$set(velX, -0.030091, velZ);
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/NCP.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/NCP.java
index 5371610..c47e7ae 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/NCP.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/NCP.java
@@ -1,61 +1,63 @@
package nekiplay.meteorplus.features.modules.movement.jesus.modes;
import meteordevelopment.meteorclient.events.entity.player.PlayerMoveEvent;
-import meteordevelopment.meteorclient.mixininterface.IVec3d;
+import meteordevelopment.meteorclient.mixininterface.IVec3;
import nekiplay.meteorplus.features.modules.movement.jesus.JesusMode;
import nekiplay.meteorplus.features.modules.movement.jesus.JesusModes;
-import net.minecraft.block.AirBlock;
-import net.minecraft.util.math.Vec3d;
+import net.minecraft.world.level.block.AirBlock;
+import net.minecraft.world.phys.Vec3;
public class NCP extends JesusMode {
public NCP() {
super(JesusModes.NCP);
}
+
float newSpeed = 0;
+
@Override
public void onPlayerMoveEvent(PlayerMoveEvent event) {
mc.player.setSprinting(false);
- if (!mc.player.isInFluid()) {
+ if (!mc.player.isInLiquid()) {
return;
}
- Vec3d velocity = mc.player.getVelocity();
+ Vec3 velocity = mc.player.getDeltaMovement();
- if (mc.options.jumpKey.isPressed() && !mc.player.isSneaking() && !(mc.world.getBlockState(mc.player.getBlockPos().add(0, 1, 0)).getBlock() instanceof AirBlock)) {
- mc.player.setVelocity(velocity.x, 0.12, velocity.z);
+ if (mc.options.keyJump.isDown() && !mc.player.isShiftKeyDown() && !(mc.level.getBlockState(mc.player.blockPosition().offset(0, 1, 0)).getBlock() instanceof AirBlock)) {
+ mc.player.setDeltaMovement(velocity.x, 0.12, velocity.z);
}
- velocity = mc.player.getVelocity();
- if (mc.options.sneakKey.isPressed()) {
- mc.player.setVelocity(velocity.x, -0.12, velocity.z);
+ velocity = mc.player.getDeltaMovement();
+ if (mc.options.keyShift.isDown()) {
+ mc.player.setDeltaMovement(velocity.x, -0.12, velocity.z);
}
- velocity = mc.player.getVelocity();
- if (mc.world.getBlockState(mc.player.getBlockPos().add(0, 1, 0)).getBlock() instanceof AirBlock && mc.options.jumpKey.isPressed()) {
- mc.player.setSneaking(true);
- mc.player.setVelocity(velocity.x, 0.12, velocity.z);
+ velocity = mc.player.getDeltaMovement();
+ if (mc.level.getBlockState(mc.player.blockPosition().offset(0, 1, 0)).getBlock() instanceof AirBlock && mc.options.keyJump.isDown()) {
+ mc.player.setShiftKeyDown(true);
+ mc.player.setDeltaMovement(velocity.x, 0.12, velocity.z);
}
- float yaw = mc.player.getYaw();
- Vec3d forward = Vec3d.fromPolar(0, yaw);
- Vec3d right = Vec3d.fromPolar(0, yaw + 90);
+ float yaw = mc.player.getYRot();
+ Vec3 forward = Vec3.directionFromRotation(0, yaw);
+ Vec3 right = Vec3.directionFromRotation(0, yaw + 90);
double velX = 0;
double velZ = 0;
double s = 0.5;
double speedValue = settings.speed.get();
- if (mc.options.forwardKey.isPressed()) {
+ if (mc.options.keyUp.isDown()) {
velX += forward.x * s * speedValue;
velZ += forward.z * s * speedValue;
}
- if (mc.options.backKey.isPressed()) {
+ if (mc.options.keyDown.isDown()) {
velX -= forward.x * s * speedValue;
velZ -= forward.z * s * speedValue;
}
- if (mc.options.rightKey.isPressed()) {
+ if (mc.options.keyRight.isDown()) {
velX += right.x * s * speedValue;
velZ += right.z * s * speedValue;
}
- if (mc.options.leftKey.isPressed()) {
+ if (mc.options.keyLeft.isDown()) {
velX -= right.x * s * speedValue;
velZ -= right.z * s * speedValue;
}
@@ -66,9 +68,10 @@ public void onPlayerMoveEvent(PlayerMoveEvent event) {
if (velZ >= settings.limit_speed.get().floatValue()) {
velZ = settings.limit_speed.get().floatValue();
}
- ((IVec3d) mc.player.getVelocity()).meteor$set(velX, 0, velZ);
- mc.player.setSneaking(true);
+ ((IVec3) mc.player.getDeltaMovement()).meteor$set(velX, 0, velZ);
+ mc.player.setShiftKeyDown(true);
}
+
@Override
public void onDeactivate() {
newSpeed = 0.6f;
@@ -83,15 +86,15 @@ public void onActivate() {
}
public void setMotion(double motion) {
- float forward = mc.player.forwardSpeed;
- float yaw = mc.player.getYaw();
+ float forward = mc.player.zza;
+ float yaw = mc.player.getYRot();
if (forward == 0) {
- ((IVec3d) mc.player.getVelocity()).meteor$set(0, mc.player.getVelocity().y, 0);
+ ((IVec3) mc.player.getDeltaMovement()).meteor$set(0, mc.player.getDeltaMovement().y, 0);
} else {
double x = forward * motion * Math.cos(Math.toRadians(yaw + 90.0f)) * motion * Math.sin(Math.toRadians(yaw + 90.0f));
double z = forward * motion * Math.sin(Math.toRadians(yaw + 90.0f)) * motion * Math.cos(Math.toRadians(yaw + 90.0f));
- ((IVec3d) mc.player.getVelocity()).meteor$set(x, mc.player.getVelocity().y, z);
+ ((IVec3) mc.player.getDeltaMovement()).meteor$set(x, mc.player.getDeltaMovement().y, z);
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/VulcanExploit.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/VulcanExploit.java
index 823051d..3bbbd69 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/VulcanExploit.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/jesus/modes/VulcanExploit.java
@@ -3,7 +3,7 @@
import meteordevelopment.meteorclient.events.entity.player.CanWalkOnFluidEvent;
import meteordevelopment.meteorclient.events.entity.player.PlayerMoveEvent;
import meteordevelopment.meteorclient.events.world.CollisionShapeEvent;
-import meteordevelopment.meteorclient.mixininterface.IVec3d;
+import meteordevelopment.meteorclient.mixininterface.IVec3;
import meteordevelopment.meteorclient.systems.modules.Modules;
import meteordevelopment.meteorclient.systems.modules.movement.Anchor;
import meteordevelopment.meteorclient.utils.misc.Names;
@@ -11,16 +11,16 @@
import meteordevelopment.meteorclient.utils.player.InvUtils;
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
import meteordevelopment.meteorclient.utils.player.SlotUtils;
-import net.minecraft.block.Blocks;
-import net.minecraft.entity.EquipmentSlot;
-import net.minecraft.entity.effect.StatusEffects;
-import net.minecraft.fluid.Fluids;
-import net.minecraft.item.Item;
-import net.minecraft.item.Items;
-import net.minecraft.util.math.Vec3d;
-import net.minecraft.util.shape.VoxelShapes;
import nekiplay.meteorplus.features.modules.movement.jesus.JesusMode;
import nekiplay.meteorplus.features.modules.movement.jesus.JesusModes;
+import net.minecraft.world.effect.MobEffects;
+import net.minecraft.world.entity.EquipmentSlot;
+import net.minecraft.world.item.Item;
+import net.minecraft.world.item.Items;
+import net.minecraft.world.level.block.Blocks;
+import net.minecraft.world.level.material.Fluids;
+import net.minecraft.world.phys.Vec3;
+import net.minecraft.world.phys.shapes.Shapes;
public class VulcanExploit extends JesusMode {
public VulcanExploit() {
@@ -28,10 +28,11 @@ public VulcanExploit() {
}
public Item chestPlate;
+
@Override
public void onDeactivate() {
FindItemResult chest = InvUtils.find(chestPlate);
- if (chest.found() && mc.player.getEquippedStack(EquipmentSlot.CHEST).getItem() == Items.ELYTRA && settings.autoSwapVulcan.get()) {
+ if (chest.found() && mc.player.getItemBySlot(EquipmentSlot.CHEST).getItem() == Items.ELYTRA && settings.autoSwapVulcan.get()) {
InvUtils.move().from(chest.slot()).toArmor(2);
}
}
@@ -42,11 +43,10 @@ public void onActivate() {
if (!elytra.found()) {
settings.error(Names.get(Items.ELYTRA) + " not found");
settings.toggle();
- }
- else {
+ } else {
if (!SlotUtils.isArmor(elytra.slot()) && settings.autoSwapVulcan.get()) {
- if (mc.player.getEquippedStack(EquipmentSlot.CHEST).getItem() != Items.ELYTRA) {
- chestPlate = mc.player.getEquippedStack(EquipmentSlot.CHEST).getItem();
+ if (mc.player.getItemBySlot(EquipmentSlot.CHEST).getItem() != Items.ELYTRA) {
+ chestPlate = mc.player.getItemBySlot(EquipmentSlot.CHEST).getItem();
InvUtils.move().from(elytra.slot()).toArmor(2);
}
}
@@ -55,31 +55,32 @@ public void onActivate() {
@Override
public void onCanWalkOnFluid(CanWalkOnFluidEvent event) {
- if ((event.fluidState.getFluid() == Fluids.WATER || event.fluidState.getFluid() == Fluids.FLOWING_WATER)) {
- if (mc.player.getEquippedStack(EquipmentSlot.CHEST).getItem() == Items.ELYTRA) {
+ if ((event.fluidState.getType() == Fluids.WATER || event.fluidState.getType() == Fluids.FLOWING_WATER)) {
+ if (mc.player.getItemBySlot(EquipmentSlot.CHEST).getItem() == Items.ELYTRA) {
event.walkOnFluid = true;
}
}
}
+
@Override
public void onCollisionShape(CollisionShapeEvent event) {
- if (!event.state.getFluidState().isEmpty() && mc.player.getEquippedStack(EquipmentSlot.CHEST).getItem() == Items.ELYTRA) {
- if (mc.player != null && event.state != null && event.state.isOf(Blocks.WATER) && !mc.player.isTouchingWater()) {
- event.shape = VoxelShapes.fullCube();
+ if (!event.state.getFluidState().isEmpty() && mc.player.getItemBySlot(EquipmentSlot.CHEST).getItem() == Items.ELYTRA) {
+ if (mc.player != null && event.state != null && event.state.is(Blocks.WATER) && !mc.player.isInWater()) {
+ event.shape = Shapes.block();
}
}
}
@Override
public void onPlayerMoveEvent(PlayerMoveEvent event) {
- if (mc.world.getBlockState(mc.player.getBlockPos().add(0, -1, 0)).getBlock() == Blocks.WATER || mc.world.getBlockState(mc.player.getBlockPos()).getBlock() == Blocks.WATER) {
- if (mc.player.getEquippedStack(EquipmentSlot.CHEST).getItem() == Items.ELYTRA) {
- Vec3d vel = PlayerUtils.getHorizontalVelocity(settings.speed.get());
- double velX = vel.getX();
- double velZ = vel.getZ();
+ if (mc.level.getBlockState(mc.player.blockPosition().offset(0, -1, 0)).getBlock() == Blocks.WATER || mc.level.getBlockState(mc.player.blockPosition()).getBlock() == Blocks.WATER) {
+ if (mc.player.getItemBySlot(EquipmentSlot.CHEST).getItem() == Items.ELYTRA) {
+ Vec3 vel = PlayerUtils.getHorizontalVelocity(settings.speed.get());
+ double velX = vel.x();
+ double velZ = vel.z();
- if (mc.player.hasStatusEffect(StatusEffects.SPEED)) {
- double value = (mc.player.getStatusEffect(StatusEffects.SPEED).getAmplifier() + 1) * 0.205;
+ if (mc.player.hasEffect(MobEffects.SPEED)) {
+ double value = (mc.player.getEffect(MobEffects.SPEED).getAmplifier() + 1) * 0.205;
velX += velX * value;
velZ += velZ * value;
}
@@ -90,7 +91,7 @@ public void onPlayerMoveEvent(PlayerMoveEvent event) {
velZ = anchor.deltaZ;
}
- ((IVec3d) event.movement).meteor$set(velX, event.movement.y, velZ);
+ ((IVec3) event.movement).meteor$set(velX, event.movement.y, velZ);
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/NoFallMode.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/NoFallMode.java
index f963343..88a85ac 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/NoFallMode.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/NoFallMode.java
@@ -3,26 +3,37 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.systems.modules.Modules;
-import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.Minecraft;
public class NoFallMode {
- protected final MinecraftClient mc;
+ protected final Minecraft mc;
protected final NoFallPlus settings;
private final NoFallModes type;
public NoFallMode(NoFallModes type) {
this.settings = Modules.get().get(NoFallPlus.class);
- this.mc = MinecraftClient.getInstance();
+ this.mc = Minecraft.getInstance();
this.type = type;
}
- public void onSendPacket(PacketEvent.Send event) {}
- public void onSentPacket(PacketEvent.Sent event) {}
- public void onReceivePacket(PacketEvent.Receive event) {}
+ public void onSendPacket(PacketEvent.Send event) {
+ }
+
+ public void onSentPacket(PacketEvent.Sent event) {
+ }
- public void onTickEventPre(TickEvent.Pre event) {}
- public void onTickEventPost(TickEvent.Post event) {}
+ public void onReceivePacket(PacketEvent.Receive event) {
+ }
+
+ public void onTickEventPre(TickEvent.Pre event) {
+ }
- public void onActivate() {}
- public void onDeactivate() {}
+ public void onTickEventPost(TickEvent.Post event) {
+ }
+
+ public void onActivate() {
+ }
+
+ public void onDeactivate() {
+ }
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/NoFallModes.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/NoFallModes.java
index 1c9d15d..f1556b2 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/NoFallModes.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/NoFallModes.java
@@ -9,6 +9,7 @@ public enum NoFallModes {
Elytra_Fly,
No_Ground,
No_Ground_Elytra;
+
@Override
public String toString() {
return super.toString().replace('_', ' ').replaceAll("dot", ".");
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/NoFallPlus.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/NoFallPlus.java
index 4d81b51..e440b4a 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/NoFallPlus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/NoFallPlus.java
@@ -47,10 +47,12 @@ private void onPreTick(TickEvent.Pre event) {
private void onPostTick(TickEvent.Post event) {
currentMode.onTickEventPost(event);
}
+
@EventHandler
public void onSendPacket(PacketEvent.Send event) {
currentMode.onSendPacket(event);
}
+
@EventHandler
public void onSentPacket(PacketEvent.Sent event) {
currentMode.onSentPacket(event);
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Eclip.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Eclip.java
index 85a02ee..6bb6802 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Eclip.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Eclip.java
@@ -2,20 +2,20 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.mixin.PlayerMoveC2SPacketAccessor;
-import meteordevelopment.meteorclient.mixininterface.IPlayerMoveC2SPacket;
+import meteordevelopment.meteorclient.mixin.ServerboundMovePlayerPacketAccessor;
+import meteordevelopment.meteorclient.mixininterface.IServerboundMovePlayerPacket;
import meteordevelopment.meteorclient.utils.player.ChatUtils;
import meteordevelopment.meteorclient.utils.player.FindItemResult;
import meteordevelopment.meteorclient.utils.player.InvUtils;
import nekiplay.meteorplus.features.modules.movement.nofall.NoFallMode;
-import net.minecraft.client.network.ClientPlayerEntity;
-import net.minecraft.item.Items;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
-import net.minecraft.util.hit.BlockHitResult;
-import net.minecraft.util.hit.HitResult;
-import net.minecraft.world.RaycastContext;
import nekiplay.meteorplus.features.modules.movement.nofall.NoFallModes;
import nekiplay.meteorplus.utils.ElytraUtils;
+import net.minecraft.client.player.LocalPlayer;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
+import net.minecraft.world.item.Items;
+import net.minecraft.world.level.ClipContext;
+import net.minecraft.world.phys.BlockHitResult;
+import net.minecraft.world.phys.HitResult;
import static meteordevelopment.meteorclient.utils.player.ChatUtils.error;
@@ -31,28 +31,28 @@ public Eclip() {
private boolean groundcheck = false;
private int timer = 0;
private int teleports = 0;
+
@Override
public void onTickEventPre(TickEvent.Pre event) {
FindItemResult elytra = InvUtils.find(Items.ELYTRA);
if (!elytra.found()) {
error("Elytra not found");
settings.toggle();
- }
- else {
+ } else {
- if (mc.player.isOnGround() && groundcheck) {
+ if (mc.player.onGround() && groundcheck) {
groundcheck = false;
cliped = false;
ChatUtils.infoPrefix("No Fall Plus", "Grounded in " + teleports + " teleports");
mc.player.fallDistance = 0;
teleports = 0;
} else if (mc.player.fallDistance > 3) {
- BlockHitResult result = mc.world.raycast(new RaycastContext(mc.player.getEntityPos(), mc.player.getEntityPos().subtract(0, 10, 0), RaycastContext.ShapeType.OUTLINE, RaycastContext.FluidHandling.NONE, mc.player));
+ BlockHitResult result = mc.level.clip(new ClipContext(mc.player.position(), mc.player.position().subtract(0, 10, 0), ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, mc.player));
if (result != null && result.getType() == HitResult.Type.BLOCK) {
- blocks = result.getBlockPos().add(0, 1, 0).getY();
+ blocks = result.getBlockPos().offset(0, 1, 0).getY();
cliped = true;
} else if (result == null || result.getType() == HitResult.Type.MISS) {
- blocks = (int) mc.player.getEntityPos().y - 10;
+ blocks = (int) mc.player.position().y - 10;
cliped = true;
}
}
@@ -65,14 +65,14 @@ public void onTickEventPre(TickEvent.Pre event) {
@Override
public void onSendPacket(PacketEvent.Send event) {
if (!groundcheck) return;
- if (!(event.packet instanceof PlayerMoveC2SPacket)
- || ((IPlayerMoveC2SPacket) event.packet).meteor$getTag() == 1337) return;
- ((PlayerMoveC2SPacketAccessor) event.packet).meteor$setOnGround(true);
+ if (!(event.packet instanceof ServerboundMovePlayerPacket)
+ || ((IServerboundMovePlayerPacket) event.packet).meteor$getTag() == 1337) return;
+ ((ServerboundMovePlayerPacketAccessor) event.packet).meteor$setOnGround(true);
}
private void clip() {
if (blocks != 0) {
- ClientPlayerEntity player = mc.player;
+ LocalPlayer player = mc.player;
assert player != null;
switch (ticks) {
case 0: {
@@ -83,11 +83,11 @@ private void clip() {
}
case 1: {
groundcheck = true;
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.OnGroundOnly(false, mc.player.horizontalCollision));
+ mc.player.connection.send(new ServerboundMovePlayerPacket.StatusOnly(false, mc.player.horizontalCollision));
ticks++;
}
case 2: {
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.OnGroundOnly(false, mc.player.horizontalCollision));
+ mc.player.connection.send(new ServerboundMovePlayerPacket.StatusOnly(false, mc.player.horizontalCollision));
ticks++;
}
case 3: {
@@ -95,8 +95,8 @@ private void clip() {
ticks++;
}
case 4: {
- player.setPosition(player.getX(), blocks, player.getZ());
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.PositionAndOnGround(player.getX(), blocks, player.getZ(), true, mc.player.horizontalCollision));
+ player.setPos(player.getX(), blocks, player.getZ());
+ mc.player.connection.send(new ServerboundMovePlayerPacket.Pos(player.getX(), blocks, player.getZ(), true, mc.player.horizontalCollision));
teleports++;
ticks++;
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/ElytraFly.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/ElytraFly.java
index e7687e4..272f595 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/ElytraFly.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/ElytraFly.java
@@ -3,17 +3,13 @@
import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.utils.player.FindItemResult;
import meteordevelopment.meteorclient.utils.player.InvUtils;
-import nekiplay.meteorplus.features.modules.movement.nofall.NoFallModes;
import nekiplay.meteorplus.features.modules.movement.nofall.NoFallMode;
-import net.minecraft.entity.EquipmentSlot;
-import net.minecraft.item.Items;
-import net.minecraft.network.packet.c2s.play.ClientCommandC2SPacket;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
-import net.minecraft.util.hit.BlockHitResult;
-import net.minecraft.util.hit.HitResult;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.util.math.Vec3d;
-import net.minecraft.world.RaycastContext;
+import nekiplay.meteorplus.features.modules.movement.nofall.NoFallModes;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
+import net.minecraft.network.protocol.game.ServerboundPlayerCommandPacket;
+import net.minecraft.world.entity.EquipmentSlot;
+import net.minecraft.world.item.Items;
+import net.minecraft.world.phys.Vec3;
public class ElytraFly extends NoFallMode {
public ElytraFly() {
@@ -27,16 +23,16 @@ public void onTickEventPre(TickEvent.Pre event) {
FindItemResult elytra = InvUtils.find(Items.ELYTRA);
if (elytra.found()) {
int slot = elytra.slot();
- if (mc.player.getEquippedStack(EquipmentSlot.CHEST).getItem() != Items.ELYTRA) {
+ if (mc.player.getItemBySlot(EquipmentSlot.CHEST).getItem() != Items.ELYTRA) {
InvUtils.move().from(slot).toArmor(2);
}
}
if (mc.player.fallDistance > 2.7) {
- mc.player.networkHandler.sendPacket(new ClientCommandC2SPacket(mc.player, ClientCommandC2SPacket.Mode.START_FALL_FLYING));
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.OnGroundOnly(true, mc.player.horizontalCollision));
- Vec3d vel = mc.player.getVelocity();
- mc.player.setVelocity(vel.x, 0, vel.z);
+ mc.player.connection.send(new ServerboundPlayerCommandPacket(mc.player, ServerboundPlayerCommandPacket.Action.START_FALL_FLYING));
+ mc.player.connection.send(new ServerboundMovePlayerPacket.StatusOnly(true, mc.player.horizontalCollision));
+ Vec3 vel = mc.player.getDeltaMovement();
+ mc.player.setDeltaMovement(vel.x, 0, vel.z);
mc.player.fallDistance = 0.0f;
mc.player.setOnGround(true);
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/MatrixNew.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/MatrixNew.java
index e4db85a..6555927 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/MatrixNew.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/MatrixNew.java
@@ -1,13 +1,13 @@
package nekiplay.meteorplus.features.modules.movement.nofall.modes;
import meteordevelopment.meteorclient.events.packets.PacketEvent;
-import meteordevelopment.meteorclient.mixin.PlayerMoveC2SPacketAccessor;
+import meteordevelopment.meteorclient.mixin.ServerboundMovePlayerPacketAccessor;
import meteordevelopment.meteorclient.systems.modules.Modules;
import meteordevelopment.meteorclient.systems.modules.world.Timer;
-import nekiplay.meteorplus.features.modules.movement.nofall.NoFallModes;
import nekiplay.meteorplus.features.modules.movement.nofall.NoFallMode;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
-import net.minecraft.util.shape.VoxelShape;
+import nekiplay.meteorplus.features.modules.movement.nofall.NoFallModes;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
+import net.minecraft.world.phys.shapes.VoxelShape;
import java.util.Iterator;
@@ -15,6 +15,7 @@ public class MatrixNew extends NoFallMode {
public MatrixNew() {
super(NoFallModes.Matrix_New);
}
+
private Timer timer;
@Override
@@ -25,12 +26,12 @@ public void onDeactivate() {
@Override
public void onSendPacket(PacketEvent.Send event) {
- if (event.packet instanceof PlayerMoveC2SPacket) {
- PlayerMoveC2SPacket packet = (PlayerMoveC2SPacket)event.packet;
- PlayerMoveC2SPacketAccessor accessor = (PlayerMoveC2SPacketAccessor)packet;
+ if (event.packet instanceof ServerboundMovePlayerPacket) {
+ ServerboundMovePlayerPacket packet = (ServerboundMovePlayerPacket) event.packet;
+ ServerboundMovePlayerPacketAccessor accessor = (ServerboundMovePlayerPacketAccessor) packet;
timer = Modules.get().get(Timer.class);
- if (!mc.player.isOnGround()) {
+ if (!mc.player.onGround()) {
if (mc.player.fallDistance > 2.69) {
timer.setOverride(0.3);
accessor.meteor$setOnGround(true);
@@ -38,19 +39,18 @@ public void onSendPacket(PacketEvent.Send event) {
}
if (mc.player.fallDistance > 3.5) {
timer.setOverride(0.3);
- }
- else {
+ } else {
timer.setOverride(Timer.OFF);
}
}
- Iterator voxelShapeIterator = mc.world.getCollisions(mc.player, mc.player.getBoundingBox().offset(0.0, mc.player.getVelocity().y, 0.0)).iterator();
+ Iterator voxelShapeIterator = mc.level.getCollisions(mc.player, mc.player.getBoundingBox().move(0.0, mc.player.getDeltaMovement().y, 0.0)).iterator();
boolean isEmpty = true;
while (voxelShapeIterator.hasNext()) {
VoxelShape shape = voxelShapeIterator.next();
isEmpty = shape.isEmpty();
}
if (!isEmpty) {
- if (!((PlayerMoveC2SPacket) event.packet).isOnGround() && mc.player.getVelocity().y < -0.6) {
+ if (!((ServerboundMovePlayerPacket) event.packet).isOnGround() && mc.player.getDeltaMovement().y < -0.6) {
accessor.meteor$setOnGround(true);
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/No_Ground.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/No_Ground.java
index ea299ad..c5bc82e 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/No_Ground.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/No_Ground.java
@@ -1,10 +1,10 @@
package nekiplay.meteorplus.features.modules.movement.nofall.modes;
import meteordevelopment.meteorclient.events.packets.PacketEvent;
-import meteordevelopment.meteorclient.mixininterface.IPlayerMoveC2SPacket;
+import meteordevelopment.meteorclient.mixininterface.IServerboundMovePlayerPacket;
import nekiplay.meteorplus.features.modules.movement.nofall.NoFallMode;
import nekiplay.meteorplus.features.modules.movement.nofall.NoFallModes;
-import nekiplay.meteorplus.mixin.minecraft.entity.PlayerMoveC2SPacketAccessor;
+import nekiplay.meteorplus.mixin.minecraft.entity.ServerboundMovePlayerPacketAccessor;
public class No_Ground extends NoFallMode {
/*
@@ -16,8 +16,8 @@ public No_Ground() {
@Override
public void onSendPacket(PacketEvent.Send event) {
- if (event.packet instanceof IPlayerMoveC2SPacket move) {
- PlayerMoveC2SPacketAccessor move2 = (PlayerMoveC2SPacketAccessor) move;
+ if (event.packet instanceof IServerboundMovePlayerPacket move) {
+ ServerboundMovePlayerPacketAccessor move2 = (ServerboundMovePlayerPacketAccessor) move;
if (move2.getOnGround()) {
move2.setOnGround(false);
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/No_Ground_Elytra.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/No_Ground_Elytra.java
index 5100cb0..3bee476 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/No_Ground_Elytra.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/No_Ground_Elytra.java
@@ -2,16 +2,16 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.mixininterface.IPlayerMoveC2SPacket;
+import meteordevelopment.meteorclient.mixininterface.IServerboundMovePlayerPacket;
import meteordevelopment.meteorclient.utils.player.ChatUtils;
import meteordevelopment.meteorclient.utils.player.FindItemResult;
import meteordevelopment.meteorclient.utils.player.InvUtils;
import nekiplay.meteorplus.features.modules.movement.nofall.NoFallMode;
import nekiplay.meteorplus.features.modules.movement.nofall.NoFallModes;
-import nekiplay.meteorplus.mixin.minecraft.entity.PlayerMoveC2SPacketAccessor;
-import net.minecraft.entity.EquipmentSlot;
-import net.minecraft.item.Items;
-import net.minecraft.network.packet.c2s.play.ClientCommandC2SPacket;
+import nekiplay.meteorplus.mixin.minecraft.entity.ServerboundMovePlayerPacketAccessor;
+import net.minecraft.network.protocol.game.ServerboundPlayerCommandPacket;
+import net.minecraft.world.entity.EquipmentSlot;
+import net.minecraft.world.item.Items;
public class No_Ground_Elytra extends NoFallMode {
/*
@@ -37,7 +37,7 @@ public void onTickEventPre(TickEvent.Pre event) {
FindItemResult elytra = InvUtils.find(Items.ELYTRA);
if (elytra.found()) {
int slot = elytra.slot();
- if (mc.player.getEquippedStack(EquipmentSlot.CHEST).getItem() != Items.ELYTRA) {
+ if (mc.player.getItemBySlot(EquipmentSlot.CHEST).getItem() != Items.ELYTRA) {
InvUtils.move().from(slot).toArmor(2);
}
}
@@ -46,10 +46,10 @@ public void onTickEventPre(TickEvent.Pre event) {
@Override
public void onSendPacket(PacketEvent.Send event) {
- if (event.packet instanceof IPlayerMoveC2SPacket move) {
- PlayerMoveC2SPacketAccessor move2 = (PlayerMoveC2SPacketAccessor) move;
+ if (event.packet instanceof IServerboundMovePlayerPacket move) {
+ ServerboundMovePlayerPacketAccessor move2 = (ServerboundMovePlayerPacketAccessor) move;
if (move2.getOnGround()) {
- mc.player.networkHandler.sendPacket(new ClientCommandC2SPacket(mc.player, ClientCommandC2SPacket.Mode.START_FALL_FLYING));
+ mc.player.connection.send(new ServerboundPlayerCommandPacket(mc.player, ServerboundPlayerCommandPacket.Action.START_FALL_FLYING));
move2.setOnGround(false);
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Verus.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Verus.java
index 3c1fbce..dd8deec 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Verus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Verus.java
@@ -1,10 +1,10 @@
package nekiplay.meteorplus.features.modules.movement.nofall.modes;
import meteordevelopment.meteorclient.events.packets.PacketEvent;
-import meteordevelopment.meteorclient.mixin.PlayerMoveC2SPacketAccessor;
+import meteordevelopment.meteorclient.mixin.ServerboundMovePlayerPacketAccessor;
import nekiplay.meteorplus.features.modules.movement.nofall.NoFallMode;
import nekiplay.meteorplus.features.modules.movement.nofall.NoFallModes;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
public class Verus extends NoFallMode {
@@ -14,15 +14,15 @@ public Verus() {
@Override
public void onSendPacket(PacketEvent.Send event) {
- if (event.packet instanceof PlayerMoveC2SPacket) {
- PlayerMoveC2SPacket packet = (PlayerMoveC2SPacket)event.packet;
- PlayerMoveC2SPacketAccessor accessor = (PlayerMoveC2SPacketAccessor)packet;
+ if (event.packet instanceof ServerboundMovePlayerPacket) {
+ ServerboundMovePlayerPacket packet = (ServerboundMovePlayerPacket) event.packet;
+ ServerboundMovePlayerPacketAccessor accessor = (ServerboundMovePlayerPacketAccessor) packet;
if (mc.player.fallDistance > 3.35) {
accessor.meteor$setOnGround(true);
mc.player.fallDistance = 0f;
- var vel = mc.player.getVelocity();
- mc.player.setVelocity(vel.x, 0, vel.z);
+ var vel = mc.player.getDeltaMovement();
+ mc.player.setDeltaMovement(vel.x, 0, vel.z);
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Vulcan.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Vulcan.java
index 345168d..7e49601 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Vulcan.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Vulcan.java
@@ -2,11 +2,11 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.mixin.PlayerMoveC2SPacketAccessor;
-import nekiplay.meteorplus.features.modules.movement.nofall.NoFallModes;
+import meteordevelopment.meteorclient.mixin.ServerboundMovePlayerPacketAccessor;
import nekiplay.meteorplus.features.modules.movement.nofall.NoFallMode;
+import nekiplay.meteorplus.features.modules.movement.nofall.NoFallModes;
import nekiplay.meteorplus.utils.MovementUtils;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
public class Vulcan extends NoFallMode {
public Vulcan() {
@@ -28,20 +28,20 @@ public void onActivate() {
@Override
public void onTickEventPre(TickEvent.Pre event) {
- if(!vulCanNoFall && mc.player.fallDistance > 3.25) {
+ if (!vulCanNoFall && mc.player.fallDistance > 3.25) {
vulCanNoFall = true;
}
- if(vulCanNoFall && mc.player.isOnGround() && vulCantNoFall) {
+ if (vulCanNoFall && mc.player.onGround() && vulCantNoFall) {
vulCantNoFall = false;
}
- if(vulCantNoFall) return;
- if(nextSpoof) {
- mc.player.getVelocity().add(0, -0.1, 0);
+ if (vulCantNoFall) return;
+ if (nextSpoof) {
+ mc.player.getDeltaMovement().add(0, -0.1, 0);
mc.player.fallDistance = -0.1f;
MovementUtils.strafe(0.3f);
nextSpoof = false;
}
- if(mc.player.fallDistance > 3.5625f) {
+ if (mc.player.fallDistance > 3.5625f) {
mc.player.fallDistance = 0.0f;
doSpoof = true;
nextSpoof = true;
@@ -50,15 +50,15 @@ public void onTickEventPre(TickEvent.Pre event) {
@Override
public void onSendPacket(PacketEvent.Send event) {
- if (event.packet instanceof PlayerMoveC2SPacket) {
- PlayerMoveC2SPacket packet = (PlayerMoveC2SPacket) event.packet;
- PlayerMoveC2SPacketAccessor accessor = (PlayerMoveC2SPacketAccessor) packet;
+ if (event.packet instanceof ServerboundMovePlayerPacket) {
+ ServerboundMovePlayerPacket packet = (ServerboundMovePlayerPacket) event.packet;
+ ServerboundMovePlayerPacketAccessor accessor = (ServerboundMovePlayerPacketAccessor) packet;
accessor.meteor$setOnGround(true);
doSpoof = false;
- accessor.meteor$setY((double) Math.round(mc.player.getEntityPos().y * 2) / 2);
- mc.player.setPosition(mc.player.getEntityPos().x, ((PlayerMoveC2SPacket) event.packet).getY(mc.player.getEntityPos().y), mc.player.getEntityPos().z);
+ accessor.meteor$setY((double) Math.round(mc.player.position().y * 2) / 2);
+ mc.player.setPos(mc.player.position().x, ((ServerboundMovePlayerPacket) event.packet).getY(mc.player.position().y), mc.player.position().z);
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Vulcan277.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Vulcan277.java
index eca6fdf..aca6059 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Vulcan277.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/nofall/modes/Vulcan277.java
@@ -1,10 +1,10 @@
package nekiplay.meteorplus.features.modules.movement.nofall.modes;
import meteordevelopment.meteorclient.events.packets.PacketEvent;
-import meteordevelopment.meteorclient.mixin.PlayerMoveC2SPacketAccessor;
-import nekiplay.meteorplus.features.modules.movement.nofall.NoFallModes;
+import meteordevelopment.meteorclient.mixin.ServerboundMovePlayerPacketAccessor;
import nekiplay.meteorplus.features.modules.movement.nofall.NoFallMode;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
+import nekiplay.meteorplus.features.modules.movement.nofall.NoFallModes;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
public class Vulcan277 extends NoFallMode {
@@ -14,15 +14,15 @@ public Vulcan277() {
@Override
public void onSendPacket(PacketEvent.Send event) {
- if (event.packet instanceof PlayerMoveC2SPacket) {
- PlayerMoveC2SPacket packet = (PlayerMoveC2SPacket)event.packet;
- PlayerMoveC2SPacketAccessor accessor = (PlayerMoveC2SPacketAccessor)packet;
+ if (event.packet instanceof ServerboundMovePlayerPacket) {
+ ServerboundMovePlayerPacket packet = (ServerboundMovePlayerPacket) event.packet;
+ ServerboundMovePlayerPacketAccessor accessor = (ServerboundMovePlayerPacketAccessor) packet;
if (mc.player.fallDistance > 7.0) {
accessor.meteor$setOnGround(true);
mc.player.fallDistance = 0f;
- var vel = mc.player.getVelocity();
- mc.player.setVelocity(vel.x, 0, vel.z);
+ var vel = mc.player.getDeltaMovement();
+ mc.player.setDeltaMovement(vel.x, 0, vel.z);
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/NoSlowMode.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/NoSlowMode.java
index 26329a9..ecf327a 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/NoSlowMode.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/NoSlowMode.java
@@ -3,19 +3,25 @@
import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.systems.modules.Modules;
import nekiplay.main.events.PlayerUseMultiplierEvent;
-import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.Minecraft;
public class NoSlowMode {
- protected final MinecraftClient mc;
+ protected final Minecraft mc;
protected final NoSlowPlus settings;
private final NoSlowModes type;
public NoSlowMode(NoSlowModes type) {
this.settings = Modules.get().get(NoSlowPlus.class);
- this.mc = MinecraftClient.getInstance();
+ this.mc = Minecraft.getInstance();
this.type = type;
}
- public void onUse(PlayerUseMultiplierEvent event) { }
- public void onTickEventPre(TickEvent.Pre event) { }
- public void onActivate() { }
+
+ public void onUse(PlayerUseMultiplierEvent event) {
+ }
+
+ public void onTickEventPre(TickEvent.Pre event) {
+ }
+
+ public void onActivate() {
+ }
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/NoSlowModes.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/NoSlowModes.java
index b17f765..b314e82 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/NoSlowModes.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/NoSlowModes.java
@@ -1,7 +1,7 @@
package nekiplay.meteorplus.features.modules.movement.noslow;
public enum NoSlowModes {
- Vanila,
+ Vanilla,
NCP_Strict,
Grim_1dot8,
Grim_New,
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/NoSlowPlus.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/NoSlowPlus.java
index ca37032..d084063 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/NoSlowPlus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/NoSlowPlus.java
@@ -15,6 +15,7 @@ public class NoSlowPlus extends Module {
public NoSlowPlus() {
super(Categories.Movement, "no-slow+", "Remove or increase slowness.");
}
+
public SettingGroup defaultGroup = settings.getDefaultGroup();
private NoSlowMode currentMode;
@@ -22,7 +23,7 @@ public NoSlowPlus() {
public final Setting mode = defaultGroup.add(new EnumSetting.Builder()
.name("mode")
.description("The method of applying no slow.")
- .defaultValue(NoSlowModes.Vanila)
+ .defaultValue(NoSlowModes.Vanilla)
.onModuleActivated(spiderModesSetting -> onModeChanged(spiderModesSetting.get()))
.onChanged(this::onModeChanged)
.build()
@@ -89,7 +90,7 @@ public NoSlowPlus() {
private void onModeChanged(NoSlowModes mode) {
switch (mode) {
- case Vanila -> currentMode = new Vanila();
+ case Vanilla -> currentMode = new Vanilla();
case NCP_Strict -> currentMode = new NCPStrict();
case Grim_1dot8 -> currentMode = new Grim();
case Grim_New -> currentMode = new GrimNew();
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/Grim.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/Grim.java
index 793554f..5ff8f92 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/Grim.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/Grim.java
@@ -3,33 +3,32 @@
import nekiplay.main.events.PlayerUseMultiplierEvent;
import nekiplay.meteorplus.features.modules.movement.noslow.NoSlowMode;
import nekiplay.meteorplus.features.modules.movement.noslow.NoSlowModes;
-import net.minecraft.client.network.ClientPlayNetworkHandler;
-import net.minecraft.network.packet.c2s.play.UpdateSelectedSlotC2SPacket;
+import net.minecraft.client.multiplayer.ClientPacketListener;
+import net.minecraft.network.protocol.game.ServerboundSetCarriedItemPacket;
public class Grim extends NoSlowMode {
public Grim() {
super(NoSlowModes.Grim_1dot8);
}
+
@Override
public void onUse(PlayerUseMultiplierEvent event) {
- if (mc.player.isSneaking()) {
+ if (mc.player.isShiftKeyDown()) {
event.setForward(settings.sneakForward.get().floatValue());
event.setSideways(settings.sneakSideways.get().floatValue());
- }
- else if (mc.player.isUsingItem()) {
+ } else if (mc.player.isUsingItem()) {
event.setForward(settings.usingForward.get().floatValue());
event.setSideways(settings.usingSideways.get().floatValue());
- }
- else {
+ } else {
event.setForward(settings.otherForward.get().floatValue());
event.setSideways(settings.otherSideways.get().floatValue());
}
if (mc.player.isUsingItem()) {
- ClientPlayNetworkHandler network = mc.getNetworkHandler();
- assert network != null;
- network.sendPacket(new UpdateSelectedSlotC2SPacket(mc.player.getInventory().getSelectedSlot() % 8 + 1));
- network.sendPacket(new UpdateSelectedSlotC2SPacket(mc.player.getInventory().getSelectedSlot()));
+ ClientPacketListener network = mc.getConnection();
+ assert network != null;
+ network.send(new ServerboundSetCarriedItemPacket(mc.player.getInventory().getSelectedSlot() % 8 + 1));
+ network.send(new ServerboundSetCarriedItemPacket(mc.player.getInventory().getSelectedSlot()));
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/GrimNew.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/GrimNew.java
index 345da5b..72cc372 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/GrimNew.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/GrimNew.java
@@ -3,10 +3,10 @@
import nekiplay.main.events.PlayerUseMultiplierEvent;
import nekiplay.meteorplus.features.modules.movement.noslow.NoSlowMode;
import nekiplay.meteorplus.features.modules.movement.noslow.NoSlowModes;
-import net.minecraft.client.network.ClientPlayNetworkHandler;
-import net.minecraft.network.packet.c2s.play.PlayerInteractItemC2SPacket;
-import net.minecraft.network.packet.c2s.play.UpdateSelectedSlotC2SPacket;
-import net.minecraft.util.Hand;
+import net.minecraft.client.multiplayer.ClientPacketListener;
+import net.minecraft.network.protocol.game.ServerboundSetCarriedItemPacket;
+import net.minecraft.network.protocol.game.ServerboundUseItemPacket;
+import net.minecraft.world.InteractionHand;
public class GrimNew extends NoSlowMode {
public GrimNew() {
@@ -15,28 +15,25 @@ public GrimNew() {
@Override
public void onUse(PlayerUseMultiplierEvent event) {
- if (mc.player.isSneaking()) {
+ if (mc.player.isShiftKeyDown()) {
event.setForward(settings.sneakForward.get().floatValue());
event.setSideways(settings.sneakSideways.get().floatValue());
- }
- else if (mc.player.isUsingItem()) {
+ } else if (mc.player.isUsingItem()) {
event.setForward(settings.usingForward.get().floatValue());
event.setSideways(settings.usingSideways.get().floatValue());
- }
- else {
+ } else {
event.setForward(settings.otherForward.get().floatValue());
event.setSideways(settings.otherSideways.get().floatValue());
}
- Hand hand = mc.player.getActiveHand();
- ClientPlayNetworkHandler network = mc.getNetworkHandler();
+ InteractionHand hand = mc.player.getUsedItemHand();
+ ClientPacketListener network = mc.getConnection();
assert network != null;
- if (hand == Hand.MAIN_HAND) {
- network.sendPacket(new PlayerInteractItemC2SPacket(Hand.OFF_HAND, 0, 0, 0));
- }
- else if (hand == Hand.OFF_HAND) {
- network.sendPacket(new UpdateSelectedSlotC2SPacket(mc.player.getInventory().getSelectedSlot() % 8 + 1));
- network.sendPacket(new UpdateSelectedSlotC2SPacket(mc.player.getInventory().getSelectedSlot()));
+ if (hand == InteractionHand.MAIN_HAND) {
+ network.send(new ServerboundUseItemPacket(InteractionHand.OFF_HAND, 0, 0, 0));
+ } else if (hand == InteractionHand.OFF_HAND) {
+ network.send(new ServerboundSetCarriedItemPacket(mc.player.getInventory().getSelectedSlot() % 8 + 1));
+ network.send(new ServerboundSetCarriedItemPacket(mc.player.getInventory().getSelectedSlot()));
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/Matrix.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/Matrix.java
index c217c4a..e937034 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/Matrix.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/Matrix.java
@@ -3,13 +3,13 @@
import meteordevelopment.meteorclient.events.world.TickEvent;
import nekiplay.meteorplus.features.modules.movement.noslow.NoSlowMode;
import nekiplay.meteorplus.features.modules.movement.noslow.NoSlowModes;
-import nekiplay.meteorplus.features.modules.movement.noslow.NoSlowPlus;
-import net.minecraft.util.math.Vec3d;
+import net.minecraft.world.phys.Vec3;
public class Matrix extends NoSlowMode {
public Matrix() {
super(NoSlowModes.Matrix);
}
+
private int ticks = 0;
@Override
@@ -20,14 +20,14 @@ public void onActivate() {
@Override
public void onTickEventPre(TickEvent.Pre event) {
if (mc.player.isUsingItem()) {
- if (mc.player.isOnGround()) {
+ if (mc.player.onGround()) {
if (ticks % 2 == 0) {
float speed = 0.4f;
- Vec3d vel = mc.player.getVelocity();
- double x = vel.getX() * speed;
- double z = vel.getZ() * speed;
+ Vec3 vel = mc.player.getDeltaMovement();
+ double x = vel.x() * speed;
+ double z = vel.z() * speed;
- mc.player.setVelocity(x, vel.getY(), z);
+ mc.player.setDeltaMovement(x, vel.y(), z);
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/NCPStrict.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/NCPStrict.java
index 4d18635..0d2109e 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/NCPStrict.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/NCPStrict.java
@@ -3,32 +3,31 @@
import nekiplay.main.events.PlayerUseMultiplierEvent;
import nekiplay.meteorplus.features.modules.movement.noslow.NoSlowMode;
import nekiplay.meteorplus.features.modules.movement.noslow.NoSlowModes;
-import net.minecraft.client.network.ClientPlayNetworkHandler;
-import net.minecraft.network.packet.c2s.play.PlayerActionC2SPacket;
-import net.minecraft.util.math.Direction;
+import net.minecraft.client.multiplayer.ClientPacketListener;
+import net.minecraft.core.Direction;
+import net.minecraft.network.protocol.game.ServerboundPlayerActionPacket;
public class NCPStrict extends NoSlowMode {
public NCPStrict() {
super(NoSlowModes.NCP_Strict);
}
+
@Override
public void onUse(PlayerUseMultiplierEvent event) {
- if (mc.player.isSneaking()) {
+ if (mc.player.isShiftKeyDown()) {
event.setForward(settings.sneakForward.get().floatValue());
event.setSideways(settings.sneakSideways.get().floatValue());
- }
- else if (mc.player.isUsingItem()) {
+ } else if (mc.player.isUsingItem()) {
event.setForward(settings.usingForward.get().floatValue());
event.setSideways(settings.usingSideways.get().floatValue());
- }
- else {
+ } else {
event.setForward(settings.otherForward.get().floatValue());
event.setSideways(settings.otherSideways.get().floatValue());
}
if (mc.player.isUsingItem()) {
- ClientPlayNetworkHandler network = mc.getNetworkHandler();
- network.sendPacket(new PlayerActionC2SPacket(PlayerActionC2SPacket.Action.ABORT_DESTROY_BLOCK, mc.player.getBlockPos(), Direction.DOWN));
+ ClientPacketListener network = mc.getConnection();
+ network.send(new ServerboundPlayerActionPacket(ServerboundPlayerActionPacket.Action.ABORT_DESTROY_BLOCK, mc.player.blockPosition(), Direction.DOWN));
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/Vanila.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/Vanilla.java
similarity index 80%
rename from src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/Vanila.java
rename to src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/Vanilla.java
index d6dc37d..49a0d67 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/Vanila.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/noslow/modes/Vanilla.java
@@ -4,22 +4,20 @@
import nekiplay.meteorplus.features.modules.movement.noslow.NoSlowMode;
import nekiplay.meteorplus.features.modules.movement.noslow.NoSlowModes;
-public class Vanila extends NoSlowMode {
- public Vanila() {
- super(NoSlowModes.Vanila);
+public class Vanilla extends NoSlowMode {
+ public Vanilla() {
+ super(NoSlowModes.Vanilla);
}
@Override
public void onUse(PlayerUseMultiplierEvent event) {
- if (mc.player.isSneaking()) {
+ if (mc.player.isShiftKeyDown()) {
event.setForward(settings.sneakForward.get().floatValue());
event.setSideways(settings.sneakSideways.get().floatValue());
- }
- else if (mc.player.isUsingItem()) {
+ } else if (mc.player.isUsingItem()) {
event.setForward(settings.usingForward.get().floatValue());
event.setSideways(settings.usingSideways.get().floatValue());
- }
- else {
+ } else {
event.setForward(settings.otherForward.get().floatValue());
event.setSideways(settings.otherSideways.get().floatValue());
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/scaffold/ScaffoldMode.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/scaffold/ScaffoldMode.java
index 1e6b381..e65bf29 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/scaffold/ScaffoldMode.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/scaffold/ScaffoldMode.java
@@ -2,17 +2,19 @@
import meteordevelopment.meteorclient.systems.modules.Modules;
import nekiplay.main.events.PlayerUseMultiplierEvent;
-import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.Minecraft;
public class ScaffoldMode {
- protected final MinecraftClient mc;
+ protected final Minecraft mc;
protected final ScaffoldPlus settings;
private final ScaffoldModes type;
public ScaffoldMode(ScaffoldModes type) {
this.settings = Modules.get().get(ScaffoldPlus.class);
- this.mc = MinecraftClient.getInstance();
+ this.mc = Minecraft.getInstance();
this.type = type;
}
- public void onUse(PlayerUseMultiplierEvent event) { }
+
+ public void onUse(PlayerUseMultiplierEvent event) {
+ }
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/SpeedMode.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/SpeedMode.java
index 906dde1..d670051 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/SpeedMode.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/SpeedMode.java
@@ -5,41 +5,55 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.systems.modules.Modules;
-import net.minecraft.client.MinecraftClient;
-import net.minecraft.entity.effect.StatusEffects;
+import net.minecraft.client.Minecraft;
+import net.minecraft.world.effect.MobEffects;
public class SpeedMode {
- protected final MinecraftClient mc;
+ protected final Minecraft mc;
protected final SpeedPlus settings;
private final SpeedModes type;
public SpeedMode(SpeedModes type) {
this.settings = Modules.get().get(SpeedPlus.class);
- this.mc = MinecraftClient.getInstance();
+ this.mc = Minecraft.getInstance();
this.type = type;
}
- public void onReceivePacket(PacketEvent.Receive event) {}
- public void onSendPacket(PacketEvent.Send event) {}
- public void onSentPacket(PacketEvent.Sent event) {}
- public void onPlayerMoveEvent(PlayerMoveEvent event) {}
+ public void onReceivePacket(PacketEvent.Receive event) {
+ }
+
+ public void onSendPacket(PacketEvent.Send event) {
+ }
+
+ public void onSentPacket(PacketEvent.Sent event) {
+ }
+
+ public void onPlayerMoveEvent(PlayerMoveEvent event) {
+ }
- public void onTickEventPre(TickEvent.Pre event) {}
- public void onTickEventPost(TickEvent.Post event) {}
+ public void onTickEventPre(TickEvent.Pre event) {
+ }
+
+ public void onTickEventPost(TickEvent.Post event) {
+ }
- public void onJump(JumpVelocityMultiplierEvent event) {}
+ public void onJump(JumpVelocityMultiplierEvent event) {
+ }
- public void onActivate() {}
- public void onDeactivate() {}
+ public void onActivate() {
+ }
+
+ public void onDeactivate() {
+ }
protected double getDefaultSpeed() {
double defaultSpeed = 0.2873;
- if (mc.player.hasStatusEffect(StatusEffects.SPEED)) {
- int amplifier = mc.player.getStatusEffect(StatusEffects.SPEED).getAmplifier();
+ if (mc.player.hasEffect(MobEffects.SPEED)) {
+ int amplifier = mc.player.getEffect(MobEffects.SPEED).getAmplifier();
defaultSpeed *= 1.0 + 0.2 * (amplifier + 1);
}
- if (mc.player.hasStatusEffect(StatusEffects.SLOWNESS)) {
- int amplifier = mc.player.getStatusEffect(StatusEffects.SLOWNESS).getAmplifier();
+ if (mc.player.hasEffect(MobEffects.SLOWNESS)) {
+ int amplifier = mc.player.getEffect(MobEffects.SLOWNESS).getAmplifier();
defaultSpeed /= 1.0 + 0.2 * (amplifier + 1);
}
return defaultSpeed;
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/SpeedPlus.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/SpeedPlus.java
index f822b6e..2f1182c 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/SpeedPlus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/SpeedPlus.java
@@ -8,7 +8,8 @@
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.orbit.EventHandler;
-import nekiplay.meteorplus.features.modules.movement.speed.modes.*;
+import nekiplay.meteorplus.features.modules.movement.speed.modes.AACHop438;
+import nekiplay.meteorplus.features.modules.movement.speed.modes.NCPHop;
import nekiplay.meteorplus.features.modules.movement.speed.modes.matrix.Matrix;
import nekiplay.meteorplus.features.modules.movement.speed.modes.matrix.Matrix6_7_0;
import nekiplay.meteorplus.features.modules.movement.speed.modes.matrix.MatrixExploit;
@@ -21,6 +22,7 @@ public SpeedPlus() {
super(Categories.Movement, "speed+", "Bypass speed");
onSpeedModeChanged(speedMode.get());
}
+
private final SettingGroup sgGeneral = settings.getDefaultGroup();
@@ -101,10 +103,12 @@ private void onPreTick(TickEvent.Pre event) {
private void onPostTick(TickEvent.Post event) {
currentMode.onTickEventPost(event);
}
+
@EventHandler
public void onSendPacket(PacketEvent.Send event) {
currentMode.onSendPacket(event);
}
+
@EventHandler
public void onSentPacket(PacketEvent.Sent event) {
currentMode.onSentPacket(event);
@@ -116,7 +120,9 @@ private void onPlayerMoveEvent(PlayerMoveEvent event) {
}
@EventHandler
- public void onJump(JumpVelocityMultiplierEvent event) { currentMode.onJump(event); }
+ public void onJump(JumpVelocityMultiplierEvent event) {
+ currentMode.onJump(event);
+ }
private void onSpeedModeChanged(SpeedModes mode) {
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/AACHop438.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/AACHop438.java
index f49232a..7f3e284 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/AACHop438.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/AACHop438.java
@@ -21,11 +21,11 @@ public void onDeactivate() {
public void onTickEventPre(TickEvent.Pre event) {
Timer timer = Modules.get().get(Timer.class);
timer.setOverride(Timer.OFF);
- if (!PlayerUtils.isMoving() || mc.player.isTouchingWater() || mc.player.isInLava() ||
- mc.player.isClimbing() || mc.player.isRiding()) return;
+ if (!PlayerUtils.isMoving() || mc.player.isInWater() || mc.player.isInLava() ||
+ mc.player.onClimbable() || mc.player.isHandsBusy()) return;
- if (mc.player.isOnGround())
- mc.player.jump();
+ if (mc.player.onGround())
+ mc.player.jumpFromGround();
else {
if (mc.player.fallDistance <= 0.1)
timer.setOverride(1.5);
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/NCPHop.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/NCPHop.java
index 5ec6aa0..d5f789a 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/NCPHop.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/NCPHop.java
@@ -20,19 +20,18 @@ public void onActivate() {
@Override
public void onDeactivate() {
Modules.get().get(Timer.class).setOverride(Timer.OFF);
- mc.player.getAbilities().setFlySpeed(0.02f);
+ mc.player.getAbilities().setFlyingSpeed(0.02f);
}
@Override
public void onTickEventPre(TickEvent.Pre event) {
- if (mc.player.isTouchingWater() || mc.player.isInLava() ||
- mc.player.isClimbing() || mc.player.isRiding()) return;
+ if (mc.player.isInWater() || mc.player.isInLava() ||
+ mc.player.onClimbable() || mc.player.isHandsBusy()) return;
Timer timer = Modules.get().get(Timer.class);
- if (PlayerUtils.isMoving() && mc.player.isOnGround()) {
- mc.player.jump();
- mc.player.getAbilities().setFlySpeed(0.0223f);
- }
- else {
+ if (PlayerUtils.isMoving() && mc.player.onGround()) {
+ mc.player.jumpFromGround();
+ mc.player.getAbilities().setFlyingSpeed(0.0223f);
+ } else {
timer.setOverride(1);
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/Matrix.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/Matrix.java
index a8f68fc..d3ca11d 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/Matrix.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/Matrix.java
@@ -16,7 +16,7 @@ public Matrix() {
public void onDeactivate() {
Modules.get().get(Timer.class).setOverride(Timer.OFF);
if (mc.player != null) {
- mc.player.getAbilities().setFlySpeed(0.02f);
+ mc.player.getAbilities().setFlyingSpeed(0.02f);
}
}
@@ -24,16 +24,15 @@ public void onDeactivate() {
public void onTickEventPre(TickEvent.Pre event) {
Timer timer = Modules.get().get(Timer.class);
timer.setOverride(Timer.OFF);
- if (mc.player.isTouchingWater() || mc.player.isInLava() ||
- mc.player.isClimbing() || mc.player.isRiding()) return;
+ if (mc.player.isInWater() || mc.player.isInLava() ||
+ mc.player.onClimbable() || mc.player.isHandsBusy()) return;
if (PlayerUtils.isMoving()) {
- if (mc.player.isOnGround()) {
- mc.player.jump();
- mc.player.getAbilities().setFlySpeed(0.02098f);
+ if (mc.player.onGround()) {
+ mc.player.jumpFromGround();
+ mc.player.getAbilities().setFlyingSpeed(0.02098f);
timer.setOverride(1.055f);
}
- }
- else {
+ } else {
timer.setOverride(1);
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/Matrix6_7_0.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/Matrix6_7_0.java
index 7de88d8..c48b2cd 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/Matrix6_7_0.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/Matrix6_7_0.java
@@ -2,12 +2,12 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.mixininterface.IVec3d;
+import meteordevelopment.meteorclient.mixininterface.IVec3;
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
-import net.minecraft.network.packet.s2c.play.EntityVelocityUpdateS2CPacket;
import nekiplay.meteorplus.features.modules.movement.speed.SpeedMode;
import nekiplay.meteorplus.features.modules.movement.speed.SpeedModes;
import nekiplay.meteorplus.utils.MovementUtils;
+import net.minecraft.network.protocol.game.ClientboundSetEntityMotionPacket;
public class Matrix6_7_0 extends SpeedMode {
public Matrix6_7_0() {
@@ -18,56 +18,56 @@ public Matrix6_7_0() {
@Override
public void onDeactivate() {
- mc.player.getAbilities().setFlySpeed(0.02f);
+ mc.player.getAbilities().setFlyingSpeed(0.02f);
}
@Override
public void onTickEventPre(TickEvent.Pre event) {
work();
}
+
@Override
public void onTickEventPost(TickEvent.Post event) {
//work();
}
public void onReceivePacket(PacketEvent.Receive event) {
- if (event.packet instanceof EntityVelocityUpdateS2CPacket velocity) {
- if (mc.player != null && mc.world != null && mc.world.getEntityById(velocity.getEntityId()) != null) {
- if (mc.player == mc.world.getEntityById(velocity.getEntityId()))
+ if (event.packet instanceof ClientboundSetEntityMotionPacket velocity) {
+ if (mc.player != null && mc.level != null && mc.level.getEntity(velocity.id()) != null) {
+ if (mc.player == mc.level.getEntity(velocity.id()))
noVelocityY = 10;
}
}
}
private void work() {
- if (!mc.player.isOnGround() && noVelocityY <= 0) {
- if (mc.player.getVelocity().y > 0) {
- mc.player.getVelocity().add(0, -0.0005, 0);
+ if (!mc.player.onGround() && noVelocityY <= 0) {
+ if (mc.player.getDeltaMovement().y > 0) {
+ mc.player.getDeltaMovement().add(0, -0.0005, 0);
}
- mc.player.getVelocity().add(0, -0.0094001145141919810, 0);
+ mc.player.getDeltaMovement().add(0, -0.0094001145141919810, 0);
}
- if (!mc.player.isOnGround() && noVelocityY < 8) {
+ if (!mc.player.onGround() && noVelocityY < 8) {
if (MovementUtils.getSpeed() < 0.2177 && noVelocityY < 8) {
MovementUtils.strafe(0.2177f);
}
}
- if (Math.abs(mc.player.getAbilities().getFlySpeed()) < 0.1) {
- mc.player.getAbilities().setFlySpeed(0.026f);
- }
- else {
- mc.player.getAbilities().setFlySpeed(0.0247f);
+ if (Math.abs(mc.player.getAbilities().getFlyingSpeed()) < 0.1) {
+ mc.player.getAbilities().setFlyingSpeed(0.026f);
+ } else {
+ mc.player.getAbilities().setFlyingSpeed(0.0247f);
}
- if (mc.player.isOnGround() && PlayerUtils.isMoving()) {
- mc.options.jumpKey.setPressed(false);
- mc.player.jump();
- IVec3d v = (IVec3d) mc.player.getVelocity();
+ if (mc.player.onGround() && PlayerUtils.isMoving()) {
+ mc.options.keyJump.setDown(false);
+ mc.player.jumpFromGround();
+ IVec3 v = (IVec3) mc.player.getDeltaMovement();
v.meteor$setY(0.41050001145141919810);
- if (Math.abs(mc.player.getAbilities().getFlySpeed()) < 0.1) {
+ if (Math.abs(mc.player.getAbilities().getFlyingSpeed()) < 0.1) {
MovementUtils.strafe(MovementUtils.getSpeed());
}
}
if (!PlayerUtils.isMoving()) {
- IVec3d v = (IVec3d) mc.player.getVelocity();
+ IVec3 v = (IVec3) mc.player.getDeltaMovement();
v.meteor$setXZ(0, 0);
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/MatrixExploit.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/MatrixExploit.java
index f2e322e..7892301 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/MatrixExploit.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/MatrixExploit.java
@@ -1,15 +1,15 @@
package nekiplay.meteorplus.features.modules.movement.speed.modes.matrix;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.mixininterface.IVec3d;
+import meteordevelopment.meteorclient.mixininterface.IVec3;
import meteordevelopment.meteorclient.utils.player.FindItemResult;
import meteordevelopment.meteorclient.utils.player.InvUtils;
-import net.minecraft.item.Items;
-import net.minecraft.network.packet.c2s.play.ClientCommandC2SPacket;
-import net.minecraft.util.math.Vec3d;
import nekiplay.meteorplus.features.modules.movement.speed.SpeedMode;
import nekiplay.meteorplus.features.modules.movement.speed.SpeedModes;
import nekiplay.meteorplus.utils.ElytraUtils;
+import net.minecraft.network.protocol.game.ServerboundPlayerCommandPacket;
+import net.minecraft.world.item.Items;
+import net.minecraft.world.phys.Vec3;
public class MatrixExploit extends SpeedMode {
public MatrixExploit() {
@@ -22,15 +22,15 @@ public void onActivate() {
if (!elytra.found()) {
settings.error("Elytra not found");
settings.toggle();
- }
- else {
+ } else {
tick = 0;
}
}
public void startFly() {
- mc.player.networkHandler.sendPacket(new ClientCommandC2SPacket(mc.player, ClientCommandC2SPacket.Mode.START_FALL_FLYING));
+ mc.player.connection.send(new ServerboundPlayerCommandPacket(mc.player, ServerboundPlayerCommandPacket.Action.START_FALL_FLYING));
}
+
int tick = 0;
@Override
@@ -43,37 +43,36 @@ public void onTickEventPre(TickEvent.Pre event) {
ElytraUtils.startFly();
InvUtils.move().fromArmor(2).to(elytra.slot());
tick = 21;
- }
- else {
+ } else {
tick--;
}
- float yaw = mc.player.getYaw();
- Vec3d forward = Vec3d.fromPolar(0, yaw);
- Vec3d right = Vec3d.fromPolar(0, yaw + 90);
+ float yaw = mc.player.getYRot();
+ Vec3 forward = Vec3.directionFromRotation(0, yaw);
+ Vec3 right = Vec3.directionFromRotation(0, yaw + 90);
double velX = 0;
double velZ = 0;
double s = settings.speedMatrix.get();
double speedValue = 0.01;
- if (mc.options.forwardKey.isPressed()) {
+ if (mc.options.keyUp.isDown()) {
velX += forward.x * s * speedValue;
velZ += forward.z * s * speedValue;
}
- if (mc.options.backKey.isPressed()) {
+ if (mc.options.keyDown.isDown()) {
velX -= forward.x * s * speedValue;
velZ -= forward.z * s * speedValue;
}
- if (mc.options.rightKey.isPressed()) {
+ if (mc.options.keyRight.isDown()) {
velX += right.x * s * speedValue;
velZ += right.z * s * speedValue;
}
- if (mc.options.leftKey.isPressed()) {
+ if (mc.options.keyLeft.isDown()) {
velX -= right.x * s * speedValue;
velZ -= right.z * s * speedValue;
}
- double y = mc.player.getVelocity().y;
- ((IVec3d) mc.player.getVelocity()).meteor$set(velX, y, velZ);
+ double y = mc.player.getDeltaMovement().y;
+ ((IVec3) mc.player.getDeltaMovement()).meteor$set(velX, y, velZ);
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/MatrixExploit2.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/MatrixExploit2.java
index f2387dc..25697a3 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/MatrixExploit2.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/matrix/MatrixExploit2.java
@@ -1,16 +1,16 @@
package nekiplay.meteorplus.features.modules.movement.speed.modes.matrix;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.mixininterface.IVec3d;
+import meteordevelopment.meteorclient.mixininterface.IVec3;
import meteordevelopment.meteorclient.utils.player.FindItemResult;
import meteordevelopment.meteorclient.utils.player.InvUtils;
-import net.minecraft.client.network.ClientPlayerEntity;
-import net.minecraft.item.Items;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
-import net.minecraft.util.math.Vec3d;
import nekiplay.meteorplus.features.modules.movement.speed.SpeedMode;
import nekiplay.meteorplus.features.modules.movement.speed.SpeedModes;
import nekiplay.meteorplus.utils.ElytraUtils;
+import net.minecraft.client.player.LocalPlayer;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
+import net.minecraft.world.item.Items;
+import net.minecraft.world.phys.Vec3;
public class MatrixExploit2 extends SpeedMode {
public MatrixExploit2() {
@@ -23,46 +23,47 @@ public void onActivate() {
if (!elytra.found()) {
settings.error("Elytra not found");
settings.toggle();
- }
- else {
+ } else {
ticks = 0;
}
}
public void modifySpeed() {
- float yaw = mc.player.getYaw();
- Vec3d forward = Vec3d.fromPolar(0, yaw);
- Vec3d right = Vec3d.fromPolar(0, yaw + 90);
+ float yaw = mc.player.getYRot();
+ Vec3 forward = Vec3.directionFromRotation(0, yaw);
+ Vec3 right = Vec3.directionFromRotation(0, yaw + 90);
double velX = 0;
double velZ = 0;
double s = settings.speedMatrix.get();
double speedValue = 0.01;
- if (mc.options.forwardKey.isPressed()) {
+ if (mc.options.keyUp.isDown()) {
velX += forward.x * s * speedValue;
velZ += forward.z * s * speedValue;
}
- if (mc.options.backKey.isPressed()) {
+ if (mc.options.keyDown.isDown()) {
velX -= forward.x * s * speedValue;
velZ -= forward.z * s * speedValue;
}
- if (mc.options.rightKey.isPressed()) {
+ if (mc.options.keyRight.isDown()) {
velX += right.x * s * speedValue;
velZ += right.z * s * speedValue;
}
- if (mc.options.leftKey.isPressed()) {
+ if (mc.options.keyLeft.isDown()) {
velX -= right.x * s * speedValue;
velZ -= right.z * s * speedValue;
}
- double y = mc.player.getVelocity().y;
- ((IVec3d) mc.player.getVelocity()).meteor$set(velX, y, velZ);
+ double y = mc.player.getDeltaMovement().y;
+ ((IVec3) mc.player.getDeltaMovement()).meteor$set(velX, y, velZ);
}
+
private int ticks = 0;
private int slot = 0;
+
@Override
public void onTickEventPre(TickEvent.Pre event) {
- ClientPlayerEntity player = mc.player;
+ LocalPlayer player = mc.player;
assert player != null;
switch (ticks) {
case 0: {
@@ -73,13 +74,13 @@ public void onTickEventPre(TickEvent.Pre event) {
ticks++;
}
case 1: {
- if (mc.player.isOnGround())
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.OnGroundOnly(false, mc.player.horizontalCollision));
+ if (mc.player.onGround())
+ mc.player.connection.send(new ServerboundMovePlayerPacket.StatusOnly(false, mc.player.horizontalCollision));
ticks++;
}
case 2: {
- if (mc.player.isOnGround())
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.OnGroundOnly(false, mc.player.horizontalCollision));
+ if (mc.player.onGround())
+ mc.player.connection.send(new ServerboundMovePlayerPacket.StatusOnly(false, mc.player.horizontalCollision));
ticks++;
}
case 3: {
@@ -105,12 +106,10 @@ public void onTickEventPre(TickEvent.Pre event) {
if (ticks >= 13 && ticks <= 16) {
ticks++;
modifySpeed();
- }
- else if (ticks <= 16) {
+ } else if (ticks <= 16) {
ticks++;
modifySpeed();
- }
- else {
+ } else {
ticks = 0;
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/vulcan/Vulcan.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/vulcan/Vulcan.java
index c583631..eed26f0 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/vulcan/Vulcan.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/vulcan/Vulcan.java
@@ -4,13 +4,13 @@
import meteordevelopment.meteorclient.utils.player.FindItemResult;
import meteordevelopment.meteorclient.utils.player.InvUtils;
import meteordevelopment.meteorclient.utils.player.SlotUtils;
-import net.minecraft.entity.EquipmentSlot;
-import net.minecraft.entity.effect.StatusEffects;
-import net.minecraft.item.Item;
-import net.minecraft.item.Items;
import nekiplay.meteorplus.features.modules.movement.speed.SpeedMode;
import nekiplay.meteorplus.features.modules.movement.speed.SpeedModes;
import nekiplay.meteorplus.utils.CustomSpeedUtils;
+import net.minecraft.world.effect.MobEffects;
+import net.minecraft.world.entity.EquipmentSlot;
+import net.minecraft.world.item.Item;
+import net.minecraft.world.item.Items;
import java.util.Objects;
@@ -18,11 +18,13 @@ public class Vulcan extends SpeedMode {
public Vulcan() {
super(SpeedModes.Vulcan);
}
+
public Item chestPlate;
+
@Override
public void onDeactivate() {
FindItemResult chest = InvUtils.find(chestPlate);
- if (chest.found() && mc.player.getEquippedStack(EquipmentSlot.CHEST).getItem() == Items.ELYTRA && settings.autoSwapVulcan.get()) {
+ if (chest.found() && mc.player.getItemBySlot(EquipmentSlot.CHEST).getItem() == Items.ELYTRA && settings.autoSwapVulcan.get()) {
InvUtils.move().from(chest.slot()).toArmor(2);
}
}
@@ -33,11 +35,10 @@ public void onActivate() {
if (!elytra.found()) {
settings.error("Elytra not found");
settings.toggle();
- }
- else {
+ } else {
if (!SlotUtils.isArmor(elytra.slot()) && settings.autoSwapVulcan.get()) {
- if (mc.player.getEquippedStack(EquipmentSlot.CHEST).getItem() != Items.ELYTRA) {
- chestPlate = mc.player.getEquippedStack(EquipmentSlot.CHEST).getItem();
+ if (mc.player.getItemBySlot(EquipmentSlot.CHEST).getItem() != Items.ELYTRA) {
+ chestPlate = mc.player.getItemBySlot(EquipmentSlot.CHEST).getItem();
InvUtils.move().from(elytra.slot()).toArmor(2);
}
}
@@ -46,16 +47,14 @@ public void onActivate() {
@Override
public void onPlayerMoveEvent(PlayerMoveEvent event) {
- if (mc.player != null && mc.player.getEquippedStack(EquipmentSlot.CHEST).getItem() == Items.ELYTRA) {
- if (mc.player.hasStatusEffect(StatusEffects.SPEED) && mc.player.getStatusEffect(StatusEffects.SPEED) != null) {
- if (Objects.requireNonNull(mc.player.getStatusEffect(StatusEffects.SPEED)).getAmplifier() == 1) {
+ if (mc.player != null && mc.player.getItemBySlot(EquipmentSlot.CHEST).getItem() == Items.ELYTRA) {
+ if (mc.player.hasEffect(MobEffects.SPEED) && mc.player.getEffect(MobEffects.SPEED) != null) {
+ if (Objects.requireNonNull(mc.player.getEffect(MobEffects.SPEED)).getAmplifier() == 1) {
CustomSpeedUtils.applySpeed(event, settings.speedVulcanef2.get());
- }
- else if (Objects.requireNonNull(mc.player.getStatusEffect(StatusEffects.SPEED)).getAmplifier() == 0) {
+ } else if (Objects.requireNonNull(mc.player.getEffect(MobEffects.SPEED)).getAmplifier() == 0) {
CustomSpeedUtils.applySpeed(event, settings.speedVulcanef1.get());
}
- }
- else {
+ } else {
CustomSpeedUtils.applySpeed(event, settings.speedVulcanef0.get());
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/vulcan/Vulcan_2_8_6.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/vulcan/Vulcan_2_8_6.java
index aecf42e..b2eefad 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/vulcan/Vulcan_2_8_6.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/speed/modes/vulcan/Vulcan_2_8_6.java
@@ -2,13 +2,11 @@
import meteordevelopment.meteorclient.events.entity.player.JumpVelocityMultiplierEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.utils.player.PlayerUtils;
import nekiplay.meteorplus.features.modules.movement.speed.SpeedMode;
import nekiplay.meteorplus.features.modules.movement.speed.SpeedModes;
import nekiplay.meteorplus.utils.MovementUtils;
-import net.minecraft.entity.effect.StatusEffect;
-import net.minecraft.entity.effect.StatusEffects;
-import net.minecraft.util.math.Vec3d;
+import net.minecraft.world.effect.MobEffects;
+import net.minecraft.world.phys.Vec3;
public class Vulcan_2_8_6 extends SpeedMode {
public Vulcan_2_8_6() {
@@ -24,8 +22,8 @@ public void onJump(JumpVelocityMultiplierEvent event) {
ticks = 0;
speedLevel = 0;
jumped = true;
- if (mc.player.hasStatusEffect(StatusEffects.SPEED)) {
- speedLevel = mc.player.getStatusEffect(StatusEffects.SPEED).getAmplifier();
+ if (mc.player.hasEffect(MobEffects.SPEED)) {
+ speedLevel = mc.player.getEffect(MobEffects.SPEED).getAmplifier();
}
}
@@ -42,12 +40,12 @@ public void onTickEventPre(TickEvent.Pre event) {
}
}
if (ticks == 4) {
- Vec3d vel = mc.player.getEntityPos();
- mc.player.setPos(vel.x, vel.y - 0.376, vel.z);
+ Vec3 vel = mc.player.position();
+ mc.player.setPosRaw(vel.x, vel.y - 0.376, vel.z);
}
if (ticks == 6) {
- if (mc.player.speed > 0.298) {
+ if (mc.player.flyDist > 0.298) {
MovementUtils.strafe(0.298);
}
jumped = false;
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/SpiderMode.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/SpiderMode.java
index be837fa..9ce790e 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/SpiderMode.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/SpiderMode.java
@@ -3,25 +3,34 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.systems.modules.Modules;
-import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.Minecraft;
public class SpiderMode {
- protected final MinecraftClient mc;
+ protected final Minecraft mc;
protected final SpiderPlus settings;
private final SpiderModes type;
public SpiderMode(SpiderModes type) {
this.settings = Modules.get().get(SpiderPlus.class);
- this.mc = MinecraftClient.getInstance();
+ this.mc = Minecraft.getInstance();
this.type = type;
}
- public void onSendPacket(PacketEvent.Send event) {}
- public void onSentPacket(PacketEvent.Sent event) {}
+ public void onSendPacket(PacketEvent.Send event) {
+ }
- public void onTickEventPre(TickEvent.Pre event) {}
- public void onTickEventPost(TickEvent.Post event) {}
+ public void onSentPacket(PacketEvent.Sent event) {
+ }
- public void onActivate() {}
- public void onDeactivate() {}
+ public void onTickEventPre(TickEvent.Pre event) {
+ }
+
+ public void onTickEventPost(TickEvent.Post event) {
+ }
+
+ public void onActivate() {
+ }
+
+ public void onDeactivate() {
+ }
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/SpiderPlus.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/SpiderPlus.java
index 4273ce1..9d58964 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/SpiderPlus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/SpiderPlus.java
@@ -18,6 +18,7 @@ public SpiderPlus() {
super(Categories.Movement, "spider+", "Bypass spider");
onSpiderModeChanged(spiderMode.get());
}
+
private final SettingGroup sgGeneral = settings.getDefaultGroup();
@@ -60,10 +61,12 @@ private void onPreTick(TickEvent.Pre event) {
private void onPostTick(TickEvent.Post event) {
currentMode.onTickEventPost(event);
}
+
@EventHandler
public void onSendPacket(PacketEvent.Send event) {
currentMode.onSendPacket(event);
}
+
@EventHandler
public void onSentPacket(PacketEvent.Sent event) {
currentMode.onSentPacket(event);
@@ -72,9 +75,15 @@ public void onSentPacket(PacketEvent.Sent event) {
private void onSpiderModeChanged(SpiderModes mode) {
switch (mode) {
- case Matrix: currentMode = new Matrix(); break;
- case Vulcan: currentMode = new Vulcan(); break;
- case Elytra_clip: currentMode = new Eclip(); break;
+ case Matrix:
+ currentMode = new Matrix();
+ break;
+ case Vulcan:
+ currentMode = new Vulcan();
+ break;
+ case Elytra_clip:
+ currentMode = new Eclip();
+ break;
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/modes/Eclip.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/modes/Eclip.java
index 3e47acc..f99ee3b 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/modes/Eclip.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/modes/Eclip.java
@@ -1,22 +1,21 @@
package nekiplay.meteorplus.features.modules.movement.spider.modes;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.systems.modules.Modules;
import meteordevelopment.meteorclient.utils.misc.Names;
import meteordevelopment.meteorclient.utils.player.FindItemResult;
import meteordevelopment.meteorclient.utils.player.InvUtils;
-import net.minecraft.client.network.ClientPlayerEntity;
-import net.minecraft.item.Items;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
import nekiplay.meteorplus.features.modules.movement.spider.SpiderMode;
import nekiplay.meteorplus.features.modules.movement.spider.SpiderModes;
-import nekiplay.meteorplus.features.modules.movement.spider.SpiderPlus;
import nekiplay.meteorplus.utils.ElytraUtils;
+import net.minecraft.client.player.LocalPlayer;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
+import net.minecraft.world.item.Items;
public class Eclip extends SpiderMode {
public Eclip() {
super(SpiderModes.Elytra_clip);
}
+
private int ticks = 0;
private int slot = -1;
private double blocks = 0;
@@ -39,20 +38,21 @@ public void onTickEventPre(TickEvent.Pre event) {
ticks = 0;
}
}
+
private boolean work() {
- ClientPlayerEntity player = mc.player;
+ LocalPlayer player = mc.player;
assert player != null;
FindItemResult elytra = InvUtils.find(Items.ELYTRA);
if (elytra.found()) {
return true;
- }
- else {
+ } else {
return false;
}
}
+
private void clip() {
if (blocks != 0) {
- ClientPlayerEntity player = mc.player;
+ LocalPlayer player = mc.player;
assert player != null;
switch (ticks) {
case 0: {
@@ -62,11 +62,11 @@ private void clip() {
ticks++;
}
case 1: {
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.OnGroundOnly(false, mc.player.horizontalCollision));
+ mc.player.connection.send(new ServerboundMovePlayerPacket.StatusOnly(false, mc.player.horizontalCollision));
ticks++;
}
case 2: {
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.OnGroundOnly(false, mc.player.horizontalCollision));
+ mc.player.connection.send(new ServerboundMovePlayerPacket.StatusOnly(false, mc.player.horizontalCollision));
ticks++;
}
case 3: {
@@ -74,8 +74,8 @@ private void clip() {
ticks++;
}
case 4: {
- player.setPosition(player.getX(), player.getY() + blocks, player.getZ());
- mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.PositionAndOnGround(player.getX(), player.getY() + blocks, player.getZ(), false, mc.player.horizontalCollision));
+ player.setPos(player.getX(), player.getY() + blocks, player.getZ());
+ mc.player.connection.send(new ServerboundMovePlayerPacket.Pos(player.getX(), player.getY() + blocks, player.getZ(), false, mc.player.horizontalCollision));
ticks++;
}
case 5: {
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/modes/Matrix.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/modes/Matrix.java
index 869622a..18397af 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/modes/Matrix.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/modes/Matrix.java
@@ -2,14 +2,14 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.mixin.PlayerMoveC2SPacketAccessor;
+import meteordevelopment.meteorclient.mixin.ServerboundMovePlayerPacketAccessor;
import nekiplay.meteorplus.features.modules.movement.spider.SpiderMode;
-import net.minecraft.client.network.ClientPlayNetworkHandler;
-import net.minecraft.client.network.ClientPlayerEntity;
-import net.minecraft.network.packet.Packet;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
-import net.minecraft.util.math.Vec3d;
import nekiplay.meteorplus.features.modules.movement.spider.SpiderModes;
+import net.minecraft.client.multiplayer.ClientPacketListener;
+import net.minecraft.client.player.LocalPlayer;
+import net.minecraft.network.protocol.Packet;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
+import net.minecraft.world.phys.Vec3;
public class Matrix extends SpiderMode {
public Matrix() {
@@ -32,7 +32,7 @@ public void onActivate() {
modify = false;
assert mc.player != null;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
}
private boolean YGround(double height, double min, double max) {
@@ -60,25 +60,25 @@ public void onSentPacket(PacketEvent.Sent event) {
private void work(Packet> packet) {
if (modify) {
- if (packet instanceof PlayerMoveC2SPacket move) {
+ if (packet instanceof ServerboundMovePlayerPacket move) {
assert mc.player != null;
double y = mc.player.getY();
y = move.getY(y);
if (YGround(y, RGround(startY) - 0.1, RGround(startY) + 0.1)) {
- ((PlayerMoveC2SPacketAccessor) packet).meteor$setOnGround(true);
+ ((ServerboundMovePlayerPacketAccessor) packet).meteor$setOnGround(true);
}
- if (mc.player.isOnGround() && block) {
+ if (mc.player.onGround() && block) {
block = false;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
start = false;
}
}
} else {
assert mc.player != null;
- if (mc.player.isOnGround() && block) {
+ if (mc.player.onGround() && block) {
block = false;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
start = false;
}
}
@@ -89,8 +89,8 @@ private void work(Packet> packet) {
@Override
public void onTickEventPre(TickEvent.Pre event) {
if (modify) {
- ClientPlayerEntity player = mc.player;
- double y = player.getEntityPos().y;
+ LocalPlayer player = mc.player;
+ double y = player.position().y;
if (lastY == y && tick > 1) {
block = true;
} else {
@@ -101,37 +101,36 @@ public void onTickEventPre(TickEvent.Pre event) {
@Override
public void onTickEventPost(TickEvent.Post event) {
- ClientPlayerEntity player = mc.player;
+ LocalPlayer player = mc.player;
assert player != null;
- Vec3d pl_velocity = player.getVelocity();
- Vec3d pos = player.getEntityPos();
- ClientPlayNetworkHandler h = mc.getNetworkHandler();
+ Vec3 pl_velocity = player.getDeltaMovement();
+ Vec3 pos = player.position();
+ ClientPacketListener h = mc.getConnection();
modify = player.horizontalCollision;
- if (mc.player.isOnGround()) {
+ if (mc.player.onGround()) {
block = false;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
start = false;
}
if (player.horizontalCollision) {
if (!start) {
start = true;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
lastY = mc.player.getY();
}
if (!block) {
if (tick == 0) {
- mc.player.setVelocity(pl_velocity.x, 0.41999998688698, pl_velocity.z);
+ mc.player.setDeltaMovement(pl_velocity.x, 0.41999998688698, pl_velocity.z);
tick = 1;
} else if (tick == 1) {
- mc.player.setVelocity(pl_velocity.x, 0.33319999363 - coff, pl_velocity.z);
+ mc.player.setDeltaMovement(pl_velocity.x, 0.33319999363 - coff, pl_velocity.z);
tick = 2;
} else if (tick == 2) {
- mc.player.setVelocity(pl_velocity.x, 0.24813599862 - coff, pl_velocity.z);
+ mc.player.setDeltaMovement(pl_velocity.x, 0.24813599862 - coff, pl_velocity.z);
tick = 0;
}
}
- }
- else {
+ } else {
modify = false;
tick = 0;
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/modes/Vulcan.java b/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/modes/Vulcan.java
index c85fff6..1a2e79a 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/modes/Vulcan.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/movement/spider/modes/Vulcan.java
@@ -2,15 +2,15 @@
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
-import meteordevelopment.meteorclient.mixin.PlayerMoveC2SPacketAccessor;
+import meteordevelopment.meteorclient.mixin.ServerboundMovePlayerPacketAccessor;
import nekiplay.meteorplus.features.modules.movement.spider.SpiderMode;
-import net.minecraft.block.SlabBlock;
-import net.minecraft.client.network.ClientPlayNetworkHandler;
-import net.minecraft.client.network.ClientPlayerEntity;
-import net.minecraft.network.packet.Packet;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
-import net.minecraft.util.math.Vec3d;
import nekiplay.meteorplus.features.modules.movement.spider.SpiderModes;
+import net.minecraft.client.multiplayer.ClientPacketListener;
+import net.minecraft.client.player.LocalPlayer;
+import net.minecraft.network.protocol.Packet;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
+import net.minecraft.world.level.block.SlabBlock;
+import net.minecraft.world.phys.Vec3;
public class Vulcan extends SpiderMode {
public Vulcan() {
@@ -33,7 +33,7 @@ public void onActivate() {
modify = false;
assert mc.player != null;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
}
private boolean YGround(double height, double min, double max) {
@@ -61,25 +61,25 @@ public void onSentPacket(PacketEvent.Sent event) {
private void work(Packet> packet) {
if (modify) {
- if (packet instanceof PlayerMoveC2SPacket move) {
+ if (packet instanceof ServerboundMovePlayerPacket move) {
assert mc.player != null;
double y = mc.player.getY();
y = move.getY(y);
if (YGround(y, RGround(startY) - 0.1, RGround(startY) + 0.1)) {
- ((PlayerMoveC2SPacketAccessor) packet).meteor$setOnGround(true);
+ ((ServerboundMovePlayerPacketAccessor) packet).meteor$setOnGround(true);
}
- if (mc.player.isOnGround() && block) {
+ if (mc.player.onGround() && block) {
block = false;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
start = false;
}
}
} else {
assert mc.player != null;
- if (mc.player.isOnGround() && block) {
+ if (mc.player.onGround() && block) {
block = false;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
start = false;
}
}
@@ -90,9 +90,9 @@ private void work(Packet> packet) {
@Override
public void onTickEventPre(TickEvent.Pre event) {
if (modify) {
- ClientPlayerEntity player = mc.player;
+ LocalPlayer player = mc.player;
assert player != null;
- double y = player.getEntityPos().y;
+ double y = player.position().y;
if (lastY == y && tick > 1) {
block = true;
} else {
@@ -105,18 +105,17 @@ private TypeStarted getType(double startY) {
TypeStarted temp = TypeStarted.Air;
double y = RGround(startY);
assert mc.player != null;
- if (mc.player.isOnGround()) {
+ if (mc.player.onGround()) {
temp = TypeStarted.Block;
- assert mc.world != null;
- if (mc.world.getBlockState(mc.player.getBlockPos()).getBlock() instanceof SlabBlock) {
+ assert mc.level != null;
+ if (mc.level.getBlockState(mc.player.blockPosition()).getBlock() instanceof SlabBlock) {
temp = TypeStarted.Slab;
}
}
return temp;
}
- private enum TypeStarted
- {
+ private enum TypeStarted {
Block,
Slab,
Air,
@@ -126,54 +125,53 @@ private enum TypeStarted
@Override
public void onTickEventPost(TickEvent.Post event) {
- ClientPlayerEntity player = mc.player;
+ LocalPlayer player = mc.player;
assert player != null;
- Vec3d pl_velocity = player.getVelocity();
- ClientPlayNetworkHandler h = mc.getNetworkHandler();
+ Vec3 pl_velocity = player.getDeltaMovement();
+ ClientPacketListener h = mc.getConnection();
modify = player.horizontalCollision;
- if (mc.player.isOnGround()) {
+ if (mc.player.onGround()) {
block = false;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
start = false;
typeStarted = getType(startY);
}
if (player.horizontalCollision) {
if (!start) {
start = true;
- startY = mc.player.getEntityPos().y;
+ startY = mc.player.position().y;
lastY = mc.player.getY();
}
if (!block) {
if (tick == 0) {
- mc.player.setVelocity(pl_velocity.x, 0.41999998688698, pl_velocity.z);
+ mc.player.setDeltaMovement(pl_velocity.x, 0.41999998688698, pl_velocity.z);
tick = 1;
} else if (tick == 1) {
- mc.player.setVelocity(pl_velocity.x, 0.33319999363 - coff, pl_velocity.z);
+ mc.player.setDeltaMovement(pl_velocity.x, 0.33319999363 - coff, pl_velocity.z);
tick = 2;
} else if (tick == 2) {
- mc.player.setVelocity(pl_velocity.x, 0.24813599862 - coff, pl_velocity.z);
+ mc.player.setDeltaMovement(pl_velocity.x, 0.24813599862 - coff, pl_velocity.z);
tick = 0;
}
switch (typeStarted) {
case Air -> {
- if (mc.player.getEntityPos().y >= startY + 1.5) {
+ if (mc.player.position().y >= startY + 1.5) {
block = true;
}
}
case Slab -> {
- if (mc.player.getEntityPos().y >= startY + 2.5) {
+ if (mc.player.position().y >= startY + 2.5) {
block = true;
}
}
case Block -> {
- if (mc.player.getEntityPos().y >= startY + 2) {
+ if (mc.player.position().y >= startY + 2) {
block = true;
}
}
}
}
- }
- else {
+ } else {
modify = false;
tick = 0;
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/player/AutoDropPlus.java b/src/main/java/nekiplay/meteorplus/features/modules/player/AutoDropPlus.java
index f4adabb..6545c53 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/player/AutoDropPlus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/player/AutoDropPlus.java
@@ -7,17 +7,16 @@
import meteordevelopment.meteorclient.utils.player.InvUtils;
import meteordevelopment.meteorclient.utils.player.SlotUtils;
import meteordevelopment.orbit.EventHandler;
-import nekiplay.meteorplus.MeteorPlusAddon;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.screen.GenericContainerScreenHandler;
-import net.minecraft.screen.ScreenHandler;
-import net.minecraft.screen.ShulkerBoxScreenHandler;
-import net.minecraft.screen.slot.SlotActionType;
+import net.minecraft.world.inventory.AbstractContainerMenu;
+import net.minecraft.world.inventory.ChestMenu;
+import net.minecraft.world.inventory.ContainerInput;
+import net.minecraft.world.inventory.ShulkerBoxMenu;
+import net.minecraft.world.item.Item;
+import net.minecraft.world.item.ItemStack;
import java.util.List;
-public class AutoDropPlus extends Module {
+public class AutoDropPlus extends Module {
public AutoDropPlus() {
super(Categories.Player, "auto-drop", "Auto drop items in inventory.");
}
@@ -93,23 +92,23 @@ public AutoDropPlus() {
@EventHandler
public void onTickPost(TickEvent.Pre event) {
- int sync = mc.player.currentScreenHandler.syncId;
+ int sync = mc.player.containerMenu.containerId;
- for (int i = autoDropExcludeHotbar.get() ? 0 : 9; i < mc.player.getInventory().size(); i++) {
- ItemStack itemStack = mc.player.getInventory().getStack(i);
+ for (int i = autoDropExcludeHotbar.get() ? 0 : 9; i < mc.player.getInventory().getContainerSize(); i++) {
+ ItemStack itemStack = mc.player.getInventory().getItem(i);
if (items.get().contains(itemStack.getItem().asItem())) {
if (tick == 0) {
if (removeItems.get() && sync != -1) {
- mc.interactionManager.clickSlot(sync, invIndexToSlotId(i), 300, SlotActionType.SWAP, mc.player);
+ mc.gameMode.handleContainerInput(sync, invIndexToSlotId(i), 300, ContainerInput.SWAP, mc.player);
+ } else if (!removeItems.get()) {
+ InvUtils.drop().slot(i);
}
- else if (!removeItems.get()) { InvUtils.drop().slot(i); }
if (!workInstant.get()) {
tick = delay.get();
}
- }
- else {
+ } else {
tick--;
}
if (!workInstant.get()) {
@@ -119,16 +118,17 @@ public void onTickPost(TickEvent.Pre event) {
}
if (removeContainersItems.get()) {
for (int i = 0; i < SlotUtils.indexToId(SlotUtils.MAIN_START); i++) {
- ScreenHandler handler = mc.player.currentScreenHandler;
- if (!handler.getSlot(i).hasStack()) continue;
+ AbstractContainerMenu handler = mc.player.containerMenu;
+ if (!handler.getSlot(i).hasItem()) continue;
- Item item = handler.getSlot(i).getStack().getItem();
+ Item item = handler.getSlot(i).getItem().getItem();
if (items.get().contains(item.asItem())) {
if (tick == 0) {
if (removeItems.get()) {
- mc.interactionManager.clickSlot(handler.syncId, getIndexToSlotId(handler, i), 300, SlotActionType.SWAP, mc.player);
+ mc.gameMode.handleContainerInput(handler.containerId, getIndexToSlotId(handler, i), 300, ContainerInput.SWAP, mc.player);
+ } else {
+ InvUtils.drop().slotId(i);
}
- else { InvUtils.drop().slotId(i); }
if (!workInstant.get()) {
tick = delay.get();
}
@@ -142,16 +142,16 @@ public void onTickPost(TickEvent.Pre event) {
}
}
}
+
public static int invIndexToSlotId(int invIndex) {
return invIndex < 9 && invIndex != -1 ? 44 - (8 - invIndex) : invIndex;
}
- public static int getIndexToSlotId(ScreenHandler handler, int invIndex) {
- if (handler instanceof GenericContainerScreenHandler genericContainerScreenHandler) {
+ public static int getIndexToSlotId(AbstractContainerMenu handler, int invIndex) {
+ if (handler instanceof ChestMenu genericContainerScreenHandler) {
int count = genericContainerScreenHandler.slots.size();
return invIndex < 0 && invIndex != -1 ? count - (-1 - invIndex) : invIndex;
- }
- else if (handler instanceof ShulkerBoxScreenHandler genericContainerScreenHandler) {
+ } else if (handler instanceof ShulkerBoxMenu genericContainerScreenHandler) {
int count = genericContainerScreenHandler.slots.size();
return invIndex < 0 && invIndex != -1 ? count - (-1 - invIndex) : invIndex;
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/render/EyeFinder.java b/src/main/java/nekiplay/meteorplus/features/modules/render/EyeFinder.java
index b46f5fe..ffb10c4 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/render/EyeFinder.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/render/EyeFinder.java
@@ -11,16 +11,15 @@
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
import meteordevelopment.orbit.EventHandler;
-import nekiplay.meteorplus.MeteorPlusAddon;
-import net.minecraft.block.BlockState;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.player.PlayerEntity;
-import net.minecraft.util.hit.BlockHitResult;
-import net.minecraft.util.hit.HitResult;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.util.math.Box;
-import net.minecraft.util.math.Direction;
-import net.minecraft.util.shape.VoxelShape;
+import net.minecraft.core.BlockPos;
+import net.minecraft.core.Direction;
+import net.minecraft.world.entity.Entity;
+import net.minecraft.world.entity.player.Player;
+import net.minecraft.world.level.block.state.BlockState;
+import net.minecraft.world.phys.AABB;
+import net.minecraft.world.phys.BlockHitResult;
+import net.minecraft.world.phys.HitResult;
+import net.minecraft.world.phys.shapes.VoxelShape;
import java.util.HashMap;
import java.util.Iterator;
@@ -29,13 +28,14 @@ public class EyeFinder extends Module {
public EyeFinder() {
super(Categories.Render, "eye-finder", "Find block player look.");
}
+
private final HashMap resultMap = new HashMap();
private final SettingGroup sgGeneral = settings.getDefaultGroup();
private final SettingGroup sgBlock = settings.createGroup("Block");
public void drawLine(Render3DEvent event, Entity entity, HitResult result) {
- event.renderer.line(entity.getEyePos().x, entity.getEyePos().y, entity.getEyePos().z, result.getPos().x, result.getPos().y, result.getPos().z, lineColor.get());
+ event.renderer.line(entity.getEyePosition().x, entity.getEyePosition().y, entity.getEyePosition().z, result.getLocation().x, result.getLocation().y, result.getLocation().z, lineColor.get());
}
@@ -66,12 +66,12 @@ public void renderBlock(Render3DEvent event, Entity entity, HitResult result) {
if (result instanceof BlockHitResult blockHitResult) {
if (blockHitResult.getType() == HitResult.Type.BLOCK || blockHitResult.getType() == HitResult.Type.MISS) {
BlockPos bp = new BlockPos(blockHitResult.getBlockPos());
- BlockState state = mc.world.getBlockState(bp);
- Direction side = blockHitResult.getSide();
- VoxelShape shape = state.getOutlineShape(mc.world, bp);
+ BlockState state = mc.level.getBlockState(bp);
+ Direction side = blockHitResult.getDirection();
+ VoxelShape shape = state.getShape(mc.level, bp);
if (shape.isEmpty()) return;
- Box box = shape.getBoundingBox();
+ AABB box = shape.bounds();
if (side == Direction.UP || side == Direction.DOWN) {
event.renderer.sideHorizontal(bp.getX() + box.minX, bp.getY() + (side == Direction.DOWN ? box.minY : box.maxY), bp.getZ() + box.minZ, bp.getX() + box.maxX, bp.getZ() + box.maxZ, sideColor.get(), lineColor.get(), shapeMode.get());
@@ -88,13 +88,13 @@ public void renderBlock(Render3DEvent event, Entity entity, HitResult result) {
@EventHandler
public void tickEvent(TickEvent.Pre event) {
- if (mc.world != null) {
- Iterator entityIterator = mc.world.getEntities().iterator();
+ if (mc.level != null) {
+ Iterator entityIterator = mc.level.entitiesForRendering().iterator();
HashMap cachMap = new HashMap();
while (entityIterator.hasNext()) {
Entity entity = entityIterator.next();
- if (entity instanceof PlayerEntity && entity != mc.player) {
- HitResult result = entity.raycast(5, mc.getRenderTickCounter().getTickProgress(true), false);
+ if (entity instanceof Player && entity != mc.player) {
+ HitResult result = entity.pick(5, mc.getDeltaTracker().getGameTimeDeltaPartialTick(true), false);
cachMap.put(entity, result);
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/render/ItemFrameEsp.java b/src/main/java/nekiplay/meteorplus/features/modules/render/ItemFrameEsp.java
index ae1919e..d227867 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/render/ItemFrameEsp.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/render/ItemFrameEsp.java
@@ -3,7 +3,10 @@
import meteordevelopment.meteorclient.events.render.Render3DEvent;
import meteordevelopment.meteorclient.renderer.ShapeMode;
-import meteordevelopment.meteorclient.settings.*;
+import meteordevelopment.meteorclient.settings.GenericSetting;
+import meteordevelopment.meteorclient.settings.ItemListSetting;
+import meteordevelopment.meteorclient.settings.Setting;
+import meteordevelopment.meteorclient.settings.SettingGroup;
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.meteorclient.utils.render.RenderUtils;
@@ -11,14 +14,13 @@
import meteordevelopment.orbit.EventHandler;
import nekiplay.meteorplus.settings.items.ESPItemData;
import nekiplay.meteorplus.settings.items.ItemDataSetting;
-import nekiplay.meteorplus.MeteorPlusAddon;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.decoration.ItemFrameEntity;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.item.Items;
-import net.minecraft.util.math.Box;
-import net.minecraft.util.math.MathHelper;
+import net.minecraft.util.Mth;
+import net.minecraft.world.entity.Entity;
+import net.minecraft.world.entity.decoration.ItemFrame;
+import net.minecraft.world.item.Item;
+import net.minecraft.world.item.ItemStack;
+import net.minecraft.world.item.Items;
+import net.minecraft.world.phys.AABB;
import java.util.List;
import java.util.Map;
@@ -26,7 +28,7 @@
public class ItemFrameEsp extends Module {
public ItemFrameEsp() {
- super(Categories.Render, "ItemFrame-esp", "backlighting of the frames in which the selected items");
+ super(Categories.Render, "ItemFrame-esp", "back lightning of the frames in which the selected items");
}
private final SettingGroup sgGeneral = settings.getDefaultGroup();
@@ -60,16 +62,17 @@ public ItemFrameEsp() {
.defaultData(defaultBlockConfig)
.build()
);
+
@EventHandler
private void onRender2D(Render3DEvent event) {
- if (mc.world == null) return;
- for (Entity entity : mc.world.getEntities()) {
+ if (mc.level == null) return;
+ for (Entity entity : mc.level.entitiesForRendering()) {
double xl = entity.getX();
double yl = entity.getY();
double zl = entity.getZ();
- if (entity instanceof ItemFrameEntity) {
- ItemFrameEntity itemFrame = (ItemFrameEntity)entity;
- ItemStack held = itemFrame.getHeldItemStack();
+ if (entity instanceof ItemFrame) {
+ ItemFrame itemFrame = (ItemFrame) entity;
+ ItemStack held = itemFrame.getItem();
if (whitelist.get().contains(held.getItem())) {
ESPItemData espItemData = blockConfigs.get().get(held.getItem());
if (espItemData != null) {
@@ -77,23 +80,22 @@ private void onRender2D(Render3DEvent event) {
event.renderer.line(RenderUtils.center.x, RenderUtils.center.y, RenderUtils.center.z, xl, yl, zl, espItemData.tracerColor);
}
- double x = MathHelper.lerp(event.tickDelta, entity.lastRenderX, entity.getX()) - entity.getX();
- double y = MathHelper.lerp(event.tickDelta, entity.lastRenderY, entity.getY()) - entity.getY();
- double z = MathHelper.lerp(event.tickDelta, entity.lastRenderZ, entity.getZ()) - entity.getZ();
+ double x = Mth.lerp(event.tickDelta, entity.xOld, entity.getX()) - entity.getX();
+ double y = Mth.lerp(event.tickDelta, entity.yOld, entity.getY()) - entity.getY();
+ double z = Mth.lerp(event.tickDelta, entity.zOld, entity.getZ()) - entity.getZ();
- Box box = entity.getBoundingBox();
+ AABB box = entity.getBoundingBox();
event.renderer.box(x + box.minX, y + box.minY, z + box.minZ, x + box.maxX, y + box.maxY, z + box.maxZ, espItemData.sideColor, espItemData.lineColor, espItemData.shapeMode, 0);
- }
- else {
+ } else {
if (defaultBlockConfig.get().tracer) {
event.renderer.line(RenderUtils.center.x, RenderUtils.center.y, RenderUtils.center.z, xl, yl, zl, defaultBlockConfig.get().tracerColor);
}
- double x = MathHelper.lerp(event.tickDelta, entity.lastRenderX, entity.getX()) - entity.getX();
- double y = MathHelper.lerp(event.tickDelta, entity.lastRenderY, entity.getY()) - entity.getY();
- double z = MathHelper.lerp(event.tickDelta, entity.lastRenderZ, entity.getZ()) - entity.getZ();
+ double x = Mth.lerp(event.tickDelta, entity.xOld, entity.getX()) - entity.getX();
+ double y = Mth.lerp(event.tickDelta, entity.yOld, entity.getY()) - entity.getY();
+ double z = Mth.lerp(event.tickDelta, entity.zOld, entity.getZ()) - entity.getZ();
- Box box = entity.getBoundingBox();
+ AABB box = entity.getBoundingBox();
event.renderer.box(x + box.minX, y + box.minY, z + box.minZ, x + box.maxX, y + box.maxY, z + box.maxZ, defaultBlockConfig.get().sideColor, defaultBlockConfig.get().lineColor, defaultBlockConfig.get().shapeMode, 0);
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/render/ItemHighlightPlus.java b/src/main/java/nekiplay/meteorplus/features/modules/render/ItemHighlightPlus.java
index 2315a01..9d4a469 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/render/ItemHighlightPlus.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/render/ItemHighlightPlus.java
@@ -7,11 +7,10 @@
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
-import nekiplay.meteorplus.MeteorPlusAddon;
import nekiplay.meteorplus.settings.items.HighlightItemData;
import nekiplay.meteorplus.settings.items.ItemDataSetting;
-import net.minecraft.item.Item;
-import net.minecraft.item.Items;
+import net.minecraft.world.item.Item;
+import net.minecraft.world.item.Items;
import java.util.List;
import java.util.Map;
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/render/KillEffect.java b/src/main/java/nekiplay/meteorplus/features/modules/render/KillEffect.java
index e9dd291..386901b 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/render/KillEffect.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/render/KillEffect.java
@@ -1,6 +1,5 @@
package nekiplay.meteorplus.features.modules.render;
-import meteordevelopment.meteorclient.events.entity.player.AttackEntityEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.settings.EnumSetting;
import meteordevelopment.meteorclient.settings.Setting;
@@ -8,12 +7,11 @@
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.orbit.EventHandler;
-import nekiplay.meteorplus.features.modules.movement.fly.FlyModes;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityType;
-import net.minecraft.entity.LightningEntity;
-import net.minecraft.entity.LivingEntity;
-import net.minecraft.particle.ParticleTypes;
+import net.minecraft.core.particles.ParticleTypes;
+import net.minecraft.world.entity.Entity;
+import net.minecraft.world.entity.EntityType;
+import net.minecraft.world.entity.LightningBolt;
+import net.minecraft.world.entity.LivingEntity;
import java.util.ArrayList;
@@ -21,6 +19,7 @@ public class KillEffect extends Module {
public KillEffect() {
super(Categories.Render, "kill-effect", "Render kill effect");
}
+
public final ArrayList entityList = new ArrayList<>();
private final SettingGroup sgGeneral = settings.getDefaultGroup();
@@ -45,21 +44,21 @@ public String toString() {
@EventHandler
public void onTickEvent(TickEvent.Post event) {
- for (Entity entity : mc.world.getEntities()) {
+ for (Entity entity : mc.level.entitiesForRendering()) {
if (entity instanceof LivingEntity livingEntity) {
if (livingEntity.deathTime > 0 || livingEntity.getHealth() <= 0) {
if (!entityList.contains(entity)) {
switch (mode.get()) {
case Lighting_Bolt -> {
- LightningEntity lightning = new LightningEntity(EntityType.LIGHTNING_BOLT, mc.world);
- lightning.refreshPositionAfterTeleport(livingEntity.getEntityPos());
- mc.world.addEntity(lightning);
+ LightningBolt lightning = new LightningBolt(EntityType.LIGHTNING_BOLT, mc.level);
+ lightning.snapTo(livingEntity.position());
+ mc.level.addEntity(lightning);
}
case Falling_Lava -> {
- for (int i = 0; i < entity.getHeight() * 10; i++) {
- for (int j = 0; j < entity.getWidth() * 10; j++) {
- for (int k = 0; k < entity.getWidth() * 10; k++) {
- mc.world.addParticleClient(ParticleTypes.FALLING_LAVA, entity.getX() + j * 0.1, entity.getY() + i * 0.1, entity.getZ() + k * 0.1, 0, 0, 0);
+ for (int i = 0; i < entity.getBbHeight() * 10; i++) {
+ for (int j = 0; j < entity.getBbWidth() * 10; j++) {
+ for (int k = 0; k < entity.getBbWidth() * 10; k++) {
+ mc.level.addParticle(ParticleTypes.FALLING_LAVA, entity.getX() + j * 0.1, entity.getY() + i * 0.1, entity.getZ() + k * 0.1, 0, 0, 0);
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/render/holograms/HologramData.java b/src/main/java/nekiplay/meteorplus/features/modules/render/holograms/HologramData.java
index 6e68642..9bc662f 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/render/holograms/HologramData.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/render/holograms/HologramData.java
@@ -2,9 +2,7 @@
import meteordevelopment.meteorclient.utils.render.color.Color;
import meteordevelopment.meteorclient.utils.world.Dimension;
-import net.minecraft.util.math.BlockPos;
-
-import java.util.ArrayList;
+import net.minecraft.core.BlockPos;
public class HologramData {
public double x;
@@ -18,6 +16,7 @@ public class HologramData {
public HologramData() {
}
+
public HologramData(double x, double y, double z, String text, String dimension, Color color, double max_render_distance) {
this.x = x;
this.y = y;
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/render/holograms/HologramDataListed.java b/src/main/java/nekiplay/meteorplus/features/modules/render/holograms/HologramDataListed.java
index e464312..a27a71e 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/render/holograms/HologramDataListed.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/render/holograms/HologramDataListed.java
@@ -2,8 +2,7 @@
import meteordevelopment.meteorclient.utils.render.color.Color;
import meteordevelopment.meteorclient.utils.world.Dimension;
-import nekiplay.meteorplus.features.modules.world.customblocks.PosData;
-import net.minecraft.util.math.BlockPos;
+import net.minecraft.core.BlockPos;
import java.util.ArrayList;
import java.util.Objects;
@@ -26,6 +25,7 @@ public class HologramDataListed {
public HologramDataListed() {
}
+
public HologramDataListed(double x, double y, double z, String text, String dimension, Color color, double max_render_distance) {
this.x = x;
this.y = y;
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/render/holograms/HologramModule.java b/src/main/java/nekiplay/meteorplus/features/modules/render/holograms/HologramModule.java
index 586ec45..e1a9608 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/render/holograms/HologramModule.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/render/holograms/HologramModule.java
@@ -2,7 +2,6 @@
import com.google.gson.Gson;
-import com.google.gson.JsonSyntaxException;
import meteordevelopment.meteorclient.MeteorClient;
import meteordevelopment.meteorclient.events.render.Render2DEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
@@ -17,12 +16,12 @@
import meteordevelopment.meteorclient.utils.render.color.Color;
import meteordevelopment.meteorclient.utils.world.Dimension;
import meteordevelopment.orbit.EventHandler;
-import org.meteordev.starscript.Script;
import nekiplay.meteorplus.MeteorPlusAddon;
-import net.minecraft.item.Item;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.util.math.Vec3d;
+import net.minecraft.core.BlockPos;
+import net.minecraft.world.item.Item;
+import net.minecraft.world.phys.Vec3;
import org.joml.Vector3d;
+import org.meteordev.starscript.Script;
import java.io.*;
import java.nio.charset.StandardCharsets;
@@ -37,6 +36,7 @@ public class HologramModule extends Module {
public HologramModule() {
super(Categories.Render, "holograms", "Create own holograms");
}
+
public Gson gson = new Gson();
public List allHolograms = new ArrayList();
@@ -65,7 +65,7 @@ private void onTick(TickEvent.Post event) {
@EventHandler
private void on2DRender(Render2DEvent event) {
- Vec3d camera_pos = mc.gameRenderer.getCamera().getCameraPos();
+ Vec3 camera_pos = mc.gameRenderer.getMainCamera().position();
for (HologramDataListed hologramData : inWorldHolograms) {
Vector3d pos = new Vector3d(hologramData.x, hologramData.y, hologramData.z);
if (pos.distance(camera_pos.x, camera_pos.y, camera_pos.z) <= hologramData.max_render_distance) {
@@ -90,13 +90,13 @@ private void on2DRender(Render2DEvent event) {
for (HologramData hologramData1 : hologramData.other_holograms) {
text.render(MeteorStarscript.run(scripts.get(hologramData1.text)), hX - hologramData1.x, hY - hologramData1.y, hologramData1.color, true);
if (hologramData1.item_id != 0) {
- Item item = Item.byRawId(hologramData1.item_id);
- RenderUtils.drawItem(event.drawContext, item.getDefaultStack(), (int) ((int) hX - hologramData1.x), (int) ((int) 0 - hologramData1.y), hologramData1.item_scale, true);
+ Item item = Item.byId(hologramData1.item_id);
+ RenderUtils.drawItem(event.graphics, item.getDefaultInstance(), (int) ((int) hX - hologramData1.x), (int) ((int) 0 - hologramData1.y), hologramData1.item_scale, true);
}
}
if (hologramData.item_id != 0) {
- Item item = Item.byRawId(hologramData.item_id);
- RenderUtils.drawItem(event.drawContext, item.getDefaultStack(), (int) hX, (int) 0, hologramData.item_scale, true);
+ Item item = Item.byId(hologramData.item_id);
+ RenderUtils.drawItem(event.graphics, item.getDefaultInstance(), (int) hX, (int) 0, hologramData.item_scale, true);
}
}
text.end();
@@ -140,8 +140,7 @@ private void load() {
allHolograms.add(hologramData);
MeteorPlusAddon.LOG.info(MeteorPlusAddon.METEOR_LOGPREFIX + " Success loaded hologram: " + file.getName());
}
- }
- catch (Exception e) {
+ } catch (Exception e) {
MeteorPlusAddon.LOG.error(MeteorPlusAddon.METEOR_LOGPREFIX + " Error in hologram: " + e);
}
} catch (IOException e) {
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/world/BedrockStorageBruteforce.java b/src/main/java/nekiplay/meteorplus/features/modules/world/BedrockStorageBruteforce.java
index a02b880..6ba6ebd 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/world/BedrockStorageBruteforce.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/world/BedrockStorageBruteforce.java
@@ -16,16 +16,15 @@
import meteordevelopment.meteorclient.utils.render.color.SettingColor;
import meteordevelopment.meteorclient.utils.world.Dimension;
import meteordevelopment.orbit.EventHandler;
-import nekiplay.meteorplus.MeteorPlusAddon;
-import net.minecraft.block.Block;
-import net.minecraft.block.BlockState;
-import net.minecraft.block.Blocks;
-import net.minecraft.client.network.ClientPlayNetworkHandler;
-import net.minecraft.network.packet.c2s.play.PlayerActionC2SPacket;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.util.math.Box;
-import net.minecraft.util.math.Direction;
-import net.minecraft.util.shape.VoxelShape;
+import net.minecraft.client.multiplayer.ClientPacketListener;
+import net.minecraft.core.BlockPos;
+import net.minecraft.core.Direction;
+import net.minecraft.network.protocol.game.ServerboundPlayerActionPacket;
+import net.minecraft.world.level.block.Block;
+import net.minecraft.world.level.block.Blocks;
+import net.minecraft.world.level.block.state.BlockState;
+import net.minecraft.world.phys.AABB;
+import net.minecraft.world.phys.shapes.VoxelShape;
import java.time.LocalDateTime;
import java.time.ZoneId;
@@ -76,52 +75,55 @@ public BedrockStorageBruteforce() {
);
Thread clickerThread = null;
private boolean scan = true;
+
private void stop() {
- if (clickerThread != null && clickerThread.isAlive())
- {
+ if (clickerThread != null && clickerThread.isAlive()) {
}
scan = false;
}
+
@Override
public void onDeactivate() {
stop();
}
+
private boolean isAllowScan(BlockPos pos) {
- if (mc.world != null) {
+ if (mc.level != null) {
if (!scanned.contains(pos)) {
- BlockState state = mc.world.getBlockState(pos);
+ BlockState state = mc.level.getBlockState(pos);
Block block = state.getBlock();
return block != Blocks.AIR && block != Blocks.BEDROCK && block != Blocks.LAVA && block != Blocks.WATER;
}
}
return false;
}
+
Dimension dim;
+
@Override
public void onActivate() {
dim = PlayerUtils.getDimension();
scan = true;
clickerThread = new Thread(() -> {
- while (scan)
- {
+ while (scan) {
assert mc.player != null;
- BlockPos playerPos = mc.player.getBlockPos();
+ BlockPos playerPos = mc.player.blockPosition();
int ranger = range.get();
int x = Utils.random(playerPos.getX() - ranger, playerPos.getX() + ranger);
int y = Utils.random(1, 4);
int z = Utils.random(playerPos.getZ() - ranger, playerPos.getZ() + ranger);
- BlockPos posible = new BlockPos(x, y, z);
+ BlockPos possible = new BlockPos(x, y, z);
if (LocalDateTime.now().atZone(ZoneId.systemDefault()).toInstant().toEpochMilli() >= millis) {
- if (isAllowScan(posible)) {
- ClientPlayNetworkHandler conn = mc.getNetworkHandler();
+ if (isAllowScan(possible)) {
+ ClientPacketListener conn = mc.getConnection();
if (conn != null) {
- last = posible;
- scanned.add(posible);
- PlayerActionC2SPacket abortPacket = new PlayerActionC2SPacket(PlayerActionC2SPacket.Action.START_DESTROY_BLOCK, posible, Direction.UP, 0);
- conn.sendPacket(abortPacket);
- PlayerActionC2SPacket abortPacket2 = new PlayerActionC2SPacket(PlayerActionC2SPacket.Action.ABORT_DESTROY_BLOCK, posible, Direction.UP, 0);
- conn.sendPacket(abortPacket2);
+ last = possible;
+ scanned.add(possible);
+ ServerboundPlayerActionPacket abortPacket = new ServerboundPlayerActionPacket(ServerboundPlayerActionPacket.Action.START_DESTROY_BLOCK, possible, Direction.UP, 0);
+ conn.send(abortPacket);
+ ServerboundPlayerActionPacket abortPacket2 = new ServerboundPlayerActionPacket(ServerboundPlayerActionPacket.Action.ABORT_DESTROY_BLOCK, possible, Direction.UP, 0);
+ conn.send(abortPacket2);
millis = LocalDateTime.now().atZone(ZoneId.systemDefault()).toInstant().toEpochMilli() + Utils.random(delaymin.get(), delaymax.get());
}
}
@@ -131,28 +133,32 @@ public void onActivate() {
clickerThread.start();
millis = LocalDateTime.now().atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
}
+
BlockPos last = null;
long millis = 0;
+
@EventHandler
private void onRender(Render3DEvent event) {
if (last != null) {
BlockPos bp = last;
- assert mc.world != null;
- BlockState state = mc.world.getBlockState(bp);
- VoxelShape shape = state.getOutlineShape(mc.world, bp);
+ assert mc.level != null;
+ BlockState state = mc.level.getBlockState(bp);
+ VoxelShape shape = state.getShape(mc.level, bp);
SettingColor color = new SettingColor(255, 255, 255);
if (shape.isEmpty()) return;
- for (Box b : shape.getBoundingBoxes()) {
+ for (AABB b : shape.toAabbs()) {
event.renderer.box(bp.getX() + b.minX, bp.getY() + b.minY, bp.getZ() + b.minZ, bp.getX() + b.maxX, bp.getY() + b.maxY, bp.getZ() + b.maxZ, new SettingColor(255, 255, 255, 255), color, ShapeMode.Lines, 0);
}
event.renderer.line(RenderUtils.center.x, RenderUtils.center.y, RenderUtils.center.z, bp.getX(), bp.getY(), bp.getZ(), color);
}
}
+
@EventHandler
private void onGameLeft(GameLeftEvent event) {
scanned.clear();
stop();
}
+
@EventHandler
private void onTickPre(TickEvent.Pre event) {
if (PlayerUtils.getDimension() != dim) {
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/world/GhostBlockFixer.java b/src/main/java/nekiplay/meteorplus/features/modules/world/GhostBlockFixer.java
index a979da3..a2013d5 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/world/GhostBlockFixer.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/world/GhostBlockFixer.java
@@ -9,13 +9,12 @@
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.orbit.EventHandler;
-import nekiplay.meteorplus.MeteorPlusAddon;
-import net.minecraft.block.BlockState;
-import net.minecraft.client.network.ClientPlayNetworkHandler;
-import net.minecraft.client.network.ClientPlayerEntity;
-import net.minecraft.network.packet.c2s.play.PlayerActionC2SPacket;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.util.math.Direction;
+import net.minecraft.client.multiplayer.ClientPacketListener;
+import net.minecraft.client.player.LocalPlayer;
+import net.minecraft.core.BlockPos;
+import net.minecraft.core.Direction;
+import net.minecraft.network.protocol.game.ServerboundPlayerActionPacket;
+import net.minecraft.world.level.block.state.BlockState;
import java.time.LocalDateTime;
import java.time.ZoneId;
@@ -25,6 +24,7 @@ public class GhostBlockFixer extends Module {
public GhostBlockFixer() {
super(Categories.World, "auto-ghost-block-fixer", "Automatically fix ghost blocks.");
}
+
private final SettingGroup GBSettings = settings.getDefaultGroup();
private final Setting delay = GBSettings.add(new IntSetting.Builder()
@@ -46,9 +46,9 @@ public GhostBlockFixer() {
);
private final ArrayDeque blocks = new ArrayDeque<>();
+
@EventHandler
- public void onBlockBreak(BreakBlockEvent block)
- {
+ public void onBlockBreak(BreakBlockEvent block) {
blocks.add(block.blockPos);
}
@@ -56,36 +56,37 @@ public void onBlockBreak(BreakBlockEvent block)
public void onActivate() {
millis = LocalDateTime.now().atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
}
+
@Override
public void onDeactivate() {
blocks.clear();
}
+
@EventHandler
- public void onLeave(GameLeftEvent event)
- {
+ public void onLeave(GameLeftEvent event) {
blocks.clear();
}
+
private long millis = 0;
+
@EventHandler
- public void onTick(TickEvent.Post event)
- {
+ public void onTick(TickEvent.Post event) {
if (!blocks.isEmpty()) {
- ClientPlayNetworkHandler conn = mc.getNetworkHandler();
- ClientPlayerEntity player = mc.player;
+ ClientPacketListener conn = mc.getConnection();
+ LocalPlayer player = mc.player;
if (conn != null && player != null) {
if (LocalDateTime.now().atZone(ZoneId.systemDefault()).toInstant().toEpochMilli() >= millis) {
BlockPos block = blocks.peek();
assert block != null;
- assert mc.world != null;
- double distance = mc.player.squaredDistanceTo(block.getX(), block.getY(), block.getZ());
- BlockState state = mc.world.getBlockState(block);
+ assert mc.level != null;
+ double distance = mc.player.distanceToSqr(block.getX(), block.getY(), block.getZ());
+ BlockState state = mc.level.getBlockState(block);
if (distance <= range.get() && state.isAir()) {
millis = LocalDateTime.now().atZone(ZoneId.systemDefault()).toInstant().toEpochMilli() + delay.get();
- PlayerActionC2SPacket packet = new PlayerActionC2SPacket(PlayerActionC2SPacket.Action.ABORT_DESTROY_BLOCK, block, Direction.UP, 0);
- conn.sendPacket(packet);
+ ServerboundPlayerActionPacket packet = new ServerboundPlayerActionPacket(ServerboundPlayerActionPacket.Action.ABORT_DESTROY_BLOCK, block, Direction.UP, 0);
+ conn.send(packet);
blocks.remove();
- }
- else if (!state.isAir()) {
+ } else if (!state.isAir()) {
blocks.remove();
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/world/SafeMine.java b/src/main/java/nekiplay/meteorplus/features/modules/world/SafeMine.java
index ae4b981..57075fb 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/world/SafeMine.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/world/SafeMine.java
@@ -15,15 +15,14 @@
import meteordevelopment.meteorclient.utils.world.BlockUtils;
import meteordevelopment.orbit.EventHandler;
import meteordevelopment.orbit.EventPriority;
-import nekiplay.meteorplus.MeteorPlusAddon;
-import net.minecraft.block.Blocks;
-import net.minecraft.fluid.Fluids;
-import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
-import net.minecraft.util.Hand;
-import net.minecraft.util.hit.HitResult;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.util.math.Vec3d;
-import net.minecraft.util.shape.VoxelShapes;
+import net.minecraft.core.BlockPos;
+import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket;
+import net.minecraft.world.InteractionHand;
+import net.minecraft.world.level.block.Blocks;
+import net.minecraft.world.level.material.Fluids;
+import net.minecraft.world.phys.HitResult;
+import net.minecraft.world.phys.Vec3;
+import net.minecraft.world.phys.shapes.Shapes;
import java.util.ArrayList;
import java.util.Iterator;
@@ -66,7 +65,7 @@ public SafeMine() {
);
private final Setting delay = ALSettings.add(new IntSetting.Builder()
- .name("Repalce delay")
+ .name("Replace delay")
.description("Delay for replace lava.")
.defaultValue(0)
.min(0)
@@ -82,23 +81,19 @@ public SafeMine() {
@EventHandler
private void onTickEvent(TickEvent.Post event) {
- if (mc.crosshairTarget != null && mc.crosshairTarget.getType() == HitResult.Type.BLOCK) {
+ if (mc.hitResult != null && mc.hitResult.getType() == HitResult.Type.BLOCK) {
if (replaceLava.get()) {
synchronized (lava) {
Iterator iterator = lava.iterator();
- if (iterator.hasNext())
- {
- if (tick == 0)
- {
+ if (iterator.hasNext()) {
+ if (tick == 0) {
if (mc.player != null) {
BlockPos block = iterator.next();
- BlockUtils.place(block, Hand.OFF_HAND, mc.player.getInventory().getSelectedSlot(), false, 0, false, false, false);
+ BlockUtils.place(block, InteractionHand.OFF_HAND, mc.player.getInventory().getSelectedSlot(), false, 0, false, false, false);
iterator.remove();
tick = delay.get();
}
- }
- else
- {
+ } else {
tick--;
}
}
@@ -108,22 +103,20 @@ private void onTickEvent(TickEvent.Post event) {
}
@EventHandler
- private void onCanContactLava(TickEvent.Post event)
- {
- if (mc.player != null && mc.world != null) {
- Vec3d underpos = mc.player.getEntityPos().add(0, -1, 0);
+ private void onCanContactLava(TickEvent.Post event) {
+ if (mc.player != null && mc.level != null) {
+ Vec3 underpos = mc.player.position().add(0, -1, 0);
BlockPos under = new BlockPos((int) underpos.x, (int) underpos.y, (int) underpos.z);
- if (mc.world.getBlockState(under).isOf(Blocks.LAVA)) {
- if (solidLavaFreeze.get() && mc.player.isOnGround()) {
+ if (mc.level.getBlockState(under).is(Blocks.LAVA)) {
+ if (solidLavaFreeze.get() && mc.player.onGround()) {
if (!freeze) {
freeze = true;
- yaw = mc.player.getYaw();
- pitch = mc.player.getPitch();
- position = mc.player.getEntityPos();
+ yaw = mc.player.getYRot();
+ pitch = mc.player.getXRot();
+ position = mc.player.position();
}
}
- }
- else {
+ } else {
freeze = false;
}
}
@@ -131,7 +124,7 @@ private void onCanContactLava(TickEvent.Post event)
@EventHandler
private void onCanWalkOnFluid(CanWalkOnFluidEvent event) {
- if ((event.fluidState.getFluid() == Fluids.LAVA || event.fluidState.getFluid() == Fluids.FLOWING_LAVA) && solidLava.get()) {
+ if ((event.fluidState.getType() == Fluids.LAVA || event.fluidState.getType() == Fluids.FLOWING_LAVA) && solidLava.get()) {
event.walkOnFluid = true;
if (solidLavaFreeze.get()) {
freeze = true;
@@ -142,8 +135,8 @@ private void onCanWalkOnFluid(CanWalkOnFluidEvent event) {
@EventHandler
private void onFluidCollisionShape(CollisionShapeEvent event) {
if (!event.state.getFluidState().isEmpty()) {
- if (mc.player != null && event.state != null && event.state.isOf(Blocks.LAVA )&& !mc.player.isInLava() && solidLava.get()) {
- event.shape = VoxelShapes.fullCube();
+ if (mc.player != null && event.state != null && event.state.is(Blocks.LAVA) && !mc.player.isInLava() && solidLava.get()) {
+ event.shape = Shapes.block();
}
}
}
@@ -152,7 +145,7 @@ private void onFluidCollisionShape(CollisionShapeEvent event) {
private void onStartBreakingBlock(StartBreakingBlockEvent event) {
ArrayList lavaBlocks = isExposedLava(event.blockPos);
if (lavaBlocks.size() > 0 && antiMine.get()) {
- mc.options.attackKey.setPressed(false);
+ mc.options.keyAttack.setDown(false);
event.setCancelled(true);
synchronized (lava) {
lava = isExposedLava(event.blockPos);
@@ -160,30 +153,29 @@ private void onStartBreakingBlock(StartBreakingBlockEvent event) {
}
}
- private ArrayList isExposedLava(BlockPos pos)
- {
+ private ArrayList isExposedLava(BlockPos pos) {
ArrayList blocks = new ArrayList<>();
- if (mc.world != null) {
- if (mc.world.getBlockState(pos).isOf(Blocks.LAVA)) {
+ if (mc.level != null) {
+ if (mc.level.getBlockState(pos).is(Blocks.LAVA)) {
blocks.add(pos);
}
- if (mc.world.getBlockState(pos.add(1, 0, 0)).isOf(Blocks.LAVA)) {
- blocks.add(pos.add(1, 0, 0));
+ if (mc.level.getBlockState(pos.offset(1, 0, 0)).is(Blocks.LAVA)) {
+ blocks.add(pos.offset(1, 0, 0));
}
- if (mc.world.getBlockState(pos.add(-1, 0, 0)).isOf(Blocks.LAVA)) {
- blocks.add(pos.add(-1, 0, 0));
+ if (mc.level.getBlockState(pos.offset(-1, 0, 0)).is(Blocks.LAVA)) {
+ blocks.add(pos.offset(-1, 0, 0));
}
- if (mc.world.getBlockState(pos.add(0, 1, 0)).isOf(Blocks.LAVA)) {
- blocks.add(pos.add(0,1, 0));
+ if (mc.level.getBlockState(pos.offset(0, 1, 0)).is(Blocks.LAVA)) {
+ blocks.add(pos.offset(0, 1, 0));
}
- if (mc.world.getBlockState(pos.add(0, -1, 0)).isOf(Blocks.LAVA)) {
- blocks.add(pos.add(0,-1, 0));
+ if (mc.level.getBlockState(pos.offset(0, -1, 0)).is(Blocks.LAVA)) {
+ blocks.add(pos.offset(0, -1, 0));
}
- if (mc.world.getBlockState(pos.add(0, 0, 1)).isOf(Blocks.LAVA)) {
- blocks.add(pos.add(0,0, 1));
+ if (mc.level.getBlockState(pos.offset(0, 0, 1)).is(Blocks.LAVA)) {
+ blocks.add(pos.offset(0, 0, 1));
}
- if (mc.world.getBlockState(pos.add(0, 0, -1)).isOf(Blocks.LAVA)) {
- blocks.add(pos.add(0,0, -1));
+ if (mc.level.getBlockState(pos.offset(0, 0, -1)).is(Blocks.LAVA)) {
+ blocks.add(pos.offset(0, 0, -1));
}
}
return blocks;
@@ -215,7 +207,7 @@ private ArrayList isExposedLava(BlockPos pos)
private final Setting FreezeLookPlace = FSettings.add(new BoolSetting.Builder()
.name("Freeze look place support")
- .description("Unfreez you yaw and pitch on place")
+ .description("Unfreeze you yaw and pitch on place")
.defaultValue(false)
.visible(FreezeLookSilent::get)
.build()
@@ -223,43 +215,40 @@ private ArrayList isExposedLava(BlockPos pos)
private float yaw = 0;
private float pitch = 0;
- private Vec3d position = Vec3d.ZERO;
+ private Vec3 position = Vec3.ZERO;
@Override()
public void onActivate() {
- if (mc.player != null){
- yaw = mc.player.getYaw();
- pitch = mc.player.getPitch();
- position = mc.player.getEntityPos();
+ if (mc.player != null) {
+ yaw = mc.player.getYRot();
+ pitch = mc.player.getXRot();
+ position = mc.player.position();
}
}
private boolean rotate = false;
- private void setFreezeLook(PacketEvent.Send event, PlayerMoveC2SPacket playerMove)
- {
- if (playerMove.changesLook() && FreezeLook.get() && FreezeLookSilent.get() && !rotate) {
+ private void setFreezeLook(PacketEvent.Send event, ServerboundMovePlayerPacket playerMove) {
+ if (playerMove.hasRotation() && FreezeLook.get() && FreezeLookSilent.get() && !rotate) {
event.setCancelled(true);
- }
- else if (mc.player != null && playerMove.changesLook() && FreezeLook.get() && !FreezeLookSilent.get()) {
+ } else if (mc.player != null && playerMove.hasRotation() && FreezeLook.get() && !FreezeLookSilent.get()) {
event.setCancelled(true);
- mc.player.setYaw(yaw);
- mc.player.setPitch(pitch);
+ mc.player.setYRot(yaw);
+ mc.player.setXRot(pitch);
}
- if (mc.player != null && playerMove.changesPosition()) {
- mc.player.setVelocity(0, 0, 0);
- mc.player.setPos(position.x, position.y, position.z);
+ if (mc.player != null && playerMove.hasPosition()) {
+ mc.player.setDeltaMovement(0, 0, 0);
+ mc.player.setPosRaw(position.x, position.y, position.z);
event.setCancelled(true);
}
}
@EventHandler
- private void InteractBlockEvent(InteractBlockEvent event)
- {
- if (mc.player != null && mc.getNetworkHandler() != null && FreezeLookPlace.get() && freeze) {
- PlayerMoveC2SPacket.LookAndOnGround r = new PlayerMoveC2SPacket.LookAndOnGround(mc.player.getYaw(), mc.player.getPitch(), mc.player.isOnGround(), mc.player.horizontalCollision);
+ private void InteractBlockEvent(InteractBlockEvent event) {
+ if (mc.player != null && mc.getConnection() != null && FreezeLookPlace.get() && freeze) {
+ ServerboundMovePlayerPacket.Rot r = new ServerboundMovePlayerPacket.Rot(mc.player.getYRot(), mc.player.getXRot(), mc.player.onGround(), mc.player.horizontalCollision);
rotate = true;
- mc.getNetworkHandler().sendPacket(r);
+ mc.getConnection().send(r);
rotate = false;
}
}
@@ -267,17 +256,18 @@ private void InteractBlockEvent(InteractBlockEvent event)
@EventHandler
private void onMovePacket(PacketEvent.Send event) {
if (freeze) {
- if (event.packet instanceof PlayerMoveC2SPacket playerMove) {
+ if (event.packet instanceof ServerboundMovePlayerPacket playerMove) {
if (Packet.get()) {
setFreezeLook(event, playerMove);
}
}
}
}
+
@EventHandler
private void onMovePacket2(PacketEvent.Send event) {
if (freeze) {
- if (event.packet instanceof PlayerMoveC2SPacket playerMove) {
+ if (event.packet instanceof ServerboundMovePlayerPacket playerMove) {
if (Packet.get()) {
setFreezeLook(event, playerMove);
}
@@ -289,8 +279,8 @@ private void onMovePacket2(PacketEvent.Send event) {
private void onTick(TickEvent.Pre event) {
if (freeze) {
if (mc.player != null) {
- mc.player.setVelocity(0, 0, 0);
- mc.player.setPos(position.x, position.y, position.z);
+ mc.player.setDeltaMovement(0, 0, 0);
+ mc.player.setPosRaw(position.x, position.y, position.z);
}
}
}
diff --git a/src/main/java/nekiplay/meteorplus/features/modules/world/XrayBruteforce.java b/src/main/java/nekiplay/meteorplus/features/modules/world/XrayBruteforce.java
index 1f094d6..1ebb524 100644
--- a/src/main/java/nekiplay/meteorplus/features/modules/world/XrayBruteforce.java
+++ b/src/main/java/nekiplay/meteorplus/features/modules/world/XrayBruteforce.java
@@ -5,49 +5,47 @@
import it.unimi.dsi.fastutil.longs.Long2ObjectMap;
import it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap;
import meteordevelopment.meteorclient.MeteorClient;
+import meteordevelopment.meteorclient.events.entity.player.BreakBlockEvent;
import meteordevelopment.meteorclient.events.game.GameLeftEvent;
-import meteordevelopment.meteorclient.events.meteor.KeyEvent;
+import meteordevelopment.meteorclient.events.meteor.KeyInputEvent;
import meteordevelopment.meteorclient.events.meteor.MouseClickEvent;
+import meteordevelopment.meteorclient.events.render.Render2DEvent;
+import meteordevelopment.meteorclient.events.render.Render3DEvent;
+import meteordevelopment.meteorclient.events.world.BlockUpdateEvent;
+import meteordevelopment.meteorclient.renderer.ShapeMode;
+import meteordevelopment.meteorclient.settings.*;
import meteordevelopment.meteorclient.systems.modules.Categories;
+import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.meteorclient.systems.modules.render.blockesp.ESPBlock;
import meteordevelopment.meteorclient.systems.modules.render.blockesp.ESPBlockData;
import meteordevelopment.meteorclient.systems.modules.render.blockesp.ESPChunk;
+import meteordevelopment.meteorclient.utils.Utils;
+import meteordevelopment.meteorclient.utils.entity.EntityUtils;
import meteordevelopment.meteorclient.utils.misc.Keybind;
import meteordevelopment.meteorclient.utils.misc.UnorderedArrayList;
import meteordevelopment.meteorclient.utils.misc.input.KeyAction;
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
+import meteordevelopment.meteorclient.utils.render.RenderUtils;
import meteordevelopment.meteorclient.utils.render.color.RainbowColors;
+import meteordevelopment.meteorclient.utils.render.color.SettingColor;
import meteordevelopment.meteorclient.utils.world.Dimension;
import meteordevelopment.meteorclient.utils.world.TickRate;
-import nekiplay.meteorplus.MeteorPlusAddon;
-import nekiplay.meteorplus.utils.GenerationBlock;
-import net.minecraft.util.math.ChunkPos;
-import net.minecraft.world.chunk.Chunk;
-
-import meteordevelopment.meteorclient.events.entity.player.BreakBlockEvent;
-import meteordevelopment.meteorclient.events.render.Render2DEvent;
-import meteordevelopment.meteorclient.events.render.Render3DEvent;
-import meteordevelopment.meteorclient.events.world.BlockUpdateEvent;
-import meteordevelopment.meteorclient.renderer.ShapeMode;
-import meteordevelopment.meteorclient.settings.*;
-import meteordevelopment.meteorclient.systems.modules.Module;
-import meteordevelopment.meteorclient.utils.Utils;
-import meteordevelopment.meteorclient.utils.entity.EntityUtils;
-import meteordevelopment.meteorclient.utils.render.RenderUtils;
-import meteordevelopment.meteorclient.utils.render.color.SettingColor;
import meteordevelopment.orbit.EventHandler;
-import net.minecraft.block.Block;
-import net.minecraft.block.BlockState;
-import net.minecraft.block.Blocks;
-import net.minecraft.client.network.ClientPlayNetworkHandler;
-import net.minecraft.network.packet.c2s.play.PlayerActionC2SPacket;
-import net.minecraft.util.math.BlockPos;
-import net.minecraft.util.math.Box;
-import net.minecraft.util.math.Direction;
-import net.minecraft.util.shape.VoxelShape;
+import nekiplay.meteorplus.utils.GenerationBlock;
import nekiplay.meteorplus.utils.xraybruteforce.XBlock;
import nekiplay.meteorplus.utils.xraybruteforce.XChunk;
import nekiplay.meteorplus.utils.xraybruteforce.XGroup;
+import net.minecraft.client.multiplayer.ClientPacketListener;
+import net.minecraft.core.BlockPos;
+import net.minecraft.core.Direction;
+import net.minecraft.network.protocol.game.ServerboundPlayerActionPacket;
+import net.minecraft.world.level.ChunkPos;
+import net.minecraft.world.level.block.Block;
+import net.minecraft.world.level.block.Blocks;
+import net.minecraft.world.level.block.state.BlockState;
+import net.minecraft.world.level.chunk.ChunkAccess;
+import net.minecraft.world.phys.AABB;
+import net.minecraft.world.phys.shapes.VoxelShape;
import java.io.*;
import java.lang.reflect.Type;
@@ -58,13 +56,14 @@
import static org.lwjgl.glfw.GLFW.GLFW_KEY_X;
public class XrayBruteforce extends Module {
- public XrayBruteforce() {
- super(Categories.World, "xray-bruteForce", "Bypasses anti-xray.");
+ public XrayBruteforce() {
+ super(Categories.World, "xray-bruteForce", "Bypasses anti-xray.");
RainbowColors.register(this::onTickRainbow);
- }
- private final SettingGroup sgGeneral = settings.getDefaultGroup();
- private final SettingGroup sgSVisual = settings.createGroup("Scaner");
- private final SettingGroup sgRVisual = settings.createGroup("Scaner Render Visuals");
+ }
+
+ private final SettingGroup sgGeneral = settings.getDefaultGroup();
+ private final SettingGroup sgSVisual = settings.createGroup("Scanner");
+ private final SettingGroup sgRVisual = settings.createGroup("Scanner Render Visuals");
private final SettingGroup sgSRenderer = settings.createGroup("Scanned Renderer");
private final SettingGroup sgSaver = settings.createGroup("Scanned Saver");
private final SettingGroup sgDelayer = settings.createGroup("Scanned Delayer");
@@ -94,7 +93,7 @@ public XrayBruteforce() {
.build()
);
- public final Setting load = sgSaver.add(new BoolSetting.Builder()
+ public final Setting load = sgSaver.add(new BoolSetting.Builder()
.name("Load")
.description("Load rendered ores.")
.defaultValue(false)
@@ -124,12 +123,13 @@ private void loadSaveOres() {
try {
String json = reader.readLine();
Gson gson = new Gson();
- Type type = new TypeToken