From 4d57832e23ce22cfd01292e45ff9b22d5ab9b337 Mon Sep 17 00:00:00 2001 From: Dewy REDACTED Date: Thu, 16 Apr 2020 20:21:26 +0100 Subject: [PATCH 1/7] basic baritone integration :3 --- build.gradle | 8 +++++++- .../java/me/zeroeightsix/kami/mixin/MixinLoaderForge.java | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 07708e85..1c96de4a 100644 --- a/build.gradle +++ b/build.gradle @@ -56,6 +56,10 @@ repositories { name = "jitpack.io" url = "https://jitpack.io" } + maven { + name = 'impact' + url = 'https://impactdevelopment.github.io/maven/' + } mavenCentral() jcenter() } @@ -77,6 +81,7 @@ dependencies { compile 'club.minnced:java-discord-rpc:2.0.2' compile 'com.github.MrPowerGamerBR:TemmieWebhook:-SNAPSHOT' compile 'com.github.kevinsawicki:http-request:http-request-6.0' + compile 'com.github.cabaletta:baritone:v1.2.13' } processResources { @@ -112,6 +117,7 @@ shadowJar { include(dependency('org.javassist:javassist')) include(dependency('com.github.MrPowerGamerBR:TemmieWebhook')) include(dependency('com.github.kevinsawicki:http-request')) + include(dependency(group: 'cabaletta', name: 'baritone-api', version: '1.2.13')) } exclude 'dummyThing' // can someone explain why this is here classifier = 'release' @@ -132,7 +138,7 @@ reobf { jar { manifest { attributes( - 'MixinConfigs': 'mixins.kami.json', + 'MixinConfigs': 'mixins.kami.json', 'mixins.baritone.json', 'tweakClass': 'org.spongepowered.asm.launch.MixinTweaker', 'TweakOrder': 0, 'FMLCorePluginContainsFMLMod': 'true', diff --git a/src/main/java/me/zeroeightsix/kami/mixin/MixinLoaderForge.java b/src/main/java/me/zeroeightsix/kami/mixin/MixinLoaderForge.java index 1d3d8d1f..0a94dddb 100644 --- a/src/main/java/me/zeroeightsix/kami/mixin/MixinLoaderForge.java +++ b/src/main/java/me/zeroeightsix/kami/mixin/MixinLoaderForge.java @@ -19,6 +19,7 @@ public class MixinLoaderForge implements IFMLLoadingPlugin { log.info("KAMI mixins initialized"); MixinBootstrap.init(); Mixins.addConfiguration("mixins.kami.json"); + Mixins.addConfiguration("mixins.baritone.json"); MixinEnvironment.getDefaultEnvironment().setObfuscationContext("searge"); log.info(MixinEnvironment.getDefaultEnvironment().getObfuscationContext()); } From fa86b657796b31f26cc7d3e1ab5ac3c50b3a2442 Mon Sep 17 00:00:00 2001 From: Dewy REDACTED Date: Fri, 17 Apr 2020 14:02:27 +0100 Subject: [PATCH 2/7] added basic BaritoneWalk autowalk w/ baritone --- .../module/modules/movement/BaritoneWalk.java | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java diff --git a/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java b/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java new file mode 100644 index 00000000..0fc67ace --- /dev/null +++ b/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java @@ -0,0 +1,49 @@ +package me.zeroeightsix.kami.module.modules.movement; + +import baritone.api.BaritoneAPI; +import baritone.api.pathing.goals.GoalXZ; +import me.zeroeightsix.kami.module.Module; +import net.minecraft.util.math.MathHelper; + +@Module.Info(name = "BaritoneWalk", description = "AutoWalk with Baritone pathfinding.", category = Module.Category.MOVEMENT) +public class BaritoneWalk extends Module { + + private boolean walking = false; + + @Override + public void onUpdate() { +// int facing = MathHelper.floor((double)(mc.player.rotationYaw * 4.0F / 360.0F) + 0.5D) & 3; + + if (!walking) { + switch (mc.player.getHorizontalFacing()) { + case NORTH: + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX, (int) mc.player.posZ - 1068)); + walking = true; + + break; + case SOUTH: + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX, (int) mc.player.posZ + 1068)); + walking = true; + + break; + case EAST: + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX + 1068, (int) mc.player.posZ)); + walking = true; + + break; + case WEST: + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX - 1068, (int) mc.player.posZ)); + walking = true; + + break; + } + } + } + + @Override + protected void onDisable() { + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoal(null); + + walking = false; + } +} From 893d0fd3686041e18d66f6b32d8fe4b9e8029e06 Mon Sep 17 00:00:00 2001 From: Dewy REDACTED Date: Fri, 17 Apr 2020 15:23:05 +0100 Subject: [PATCH 3/7] improved baritonewalk added diagonals support added mathsutils --- .../kami/module/modules/combat/AimBot.java | 14 +---- .../module/modules/movement/BaritoneWalk.java | 55 +++++++++++-------- .../me/zeroeightsix/kami/util/MathsUtils.java | 19 +++++++ 3 files changed, 52 insertions(+), 36 deletions(-) create mode 100644 src/main/java/me/zeroeightsix/kami/util/MathsUtils.java diff --git a/src/main/java/me/zeroeightsix/kami/module/modules/combat/AimBot.java b/src/main/java/me/zeroeightsix/kami/module/modules/combat/AimBot.java index f1e7141d..0c63bce6 100644 --- a/src/main/java/me/zeroeightsix/kami/module/modules/combat/AimBot.java +++ b/src/main/java/me/zeroeightsix/kami/module/modules/combat/AimBot.java @@ -15,6 +15,8 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.SoundCategory; import net.minecraft.util.math.MathHelper; +import static me.zeroeightsix.kami.util.MathsUtils.normalizeAngle; + /** * Created by Dewy on the 16th of April, 2020 */ @@ -104,16 +106,4 @@ public class AimBot extends Module { mc.player.setPositionAndRotation(mc.player.posX, mc.player.posY, mc.player.posZ, yaw, -pitch); } - - private double normalizeAngle(double angleIn) { - while (angleIn <= -180.0) { - angleIn += 360.0; - } - - while (angleIn > 180.0) { - angleIn -= 360.0; - } - - return angleIn; - } } diff --git a/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java b/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java index 0fc67ace..c5758143 100644 --- a/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java +++ b/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java @@ -3,39 +3,46 @@ package me.zeroeightsix.kami.module.modules.movement; import baritone.api.BaritoneAPI; import baritone.api.pathing.goals.GoalXZ; import me.zeroeightsix.kami.module.Module; -import net.minecraft.util.math.MathHelper; +import static me.zeroeightsix.kami.util.MathsUtils.normalizeAngle; + + +/** + * Created by Dewy on the 17th of April, 2020 + */ @Module.Info(name = "BaritoneWalk", description = "AutoWalk with Baritone pathfinding.", category = Module.Category.MOVEMENT) public class BaritoneWalk extends Module { private boolean walking = false; + // Very shittily done, but this check is not that taxing on performance cos it is NOT performed every tick. @Override public void onUpdate() { -// int facing = MathHelper.floor((double)(mc.player.rotationYaw * 4.0F / 360.0F) + 0.5D) & 3; - if (!walking) { - switch (mc.player.getHorizontalFacing()) { - case NORTH: - BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX, (int) mc.player.posZ - 1068)); - walking = true; - - break; - case SOUTH: - BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX, (int) mc.player.posZ + 1068)); - walking = true; - - break; - case EAST: - BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX + 1068, (int) mc.player.posZ)); - walking = true; - - break; - case WEST: - BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX - 1068, (int) mc.player.posZ)); - walking = true; - - break; + if (normalizeAngle(mc.player.rotationYaw) >= -22.5 && normalizeAngle(mc.player.rotationYaw) <= 22.5) { + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX, (int) mc.player.posZ + 1068)); + walking = true; + } else if (normalizeAngle(mc.player.rotationYaw) >= 22.6 && normalizeAngle(mc.player.rotationYaw) <= 67.5) { + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX - 1068, (int) mc.player.posZ + 1068)); + walking = true; + } else if (normalizeAngle(mc.player.rotationYaw) >= 67.6 && normalizeAngle(mc.player.rotationYaw) <= 112.5) { + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX - 1068, (int) mc.player.posZ)); + walking = true; + } else if (normalizeAngle(mc.player.rotationYaw) >= 112.6 && normalizeAngle(mc.player.rotationYaw) <= 157.5) { + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX - 1068, (int) mc.player.posZ - 1068)); + walking = true; + } else if (normalizeAngle(mc.player.rotationYaw) >= 157.6 || normalizeAngle(mc.player.rotationYaw) <= -157.5) { + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX, (int) mc.player.posZ - 1068)); + walking = true; + } else if (normalizeAngle(mc.player.rotationYaw) >= -157.6 && normalizeAngle(mc.player.rotationYaw) <= -112.5) { + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX + 1068, (int) mc.player.posZ - 1068)); + walking = true; + } else if (normalizeAngle(mc.player.rotationYaw) >= -112.6 && normalizeAngle(mc.player.rotationYaw) <= -67.5) { + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX + 1068, (int) mc.player.posZ)); + walking = true; + } else if (normalizeAngle(mc.player.rotationYaw) >= -67.6 && normalizeAngle(mc.player.rotationYaw) <= -22.6) { + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX + 1068, (int) mc.player.posZ + 1068)); + walking = true; } } } diff --git a/src/main/java/me/zeroeightsix/kami/util/MathsUtils.java b/src/main/java/me/zeroeightsix/kami/util/MathsUtils.java new file mode 100644 index 00000000..86189233 --- /dev/null +++ b/src/main/java/me/zeroeightsix/kami/util/MathsUtils.java @@ -0,0 +1,19 @@ +package me.zeroeightsix.kami.util; + +/** + * Created by Dewy on the 17th of April, 2020 + */ +public class MathsUtils { + + public static double normalizeAngle(double angleIn) { + while (angleIn <= -180.0) { + angleIn += 360.0; + } + + while (angleIn > 180.0) { + angleIn -= 360.0; + } + + return angleIn; + } +} From 26452b27ca9a6ef8481d301fced29f28a04424b1 Mon Sep 17 00:00:00 2001 From: Dewy REDACTED Date: Fri, 17 Apr 2020 15:31:34 +0100 Subject: [PATCH 4/7] added ;baritone command ez --- .../command/commands/BaritoneCommand.java | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 src/main/java/me/zeroeightsix/kami/command/commands/BaritoneCommand.java diff --git a/src/main/java/me/zeroeightsix/kami/command/commands/BaritoneCommand.java b/src/main/java/me/zeroeightsix/kami/command/commands/BaritoneCommand.java new file mode 100644 index 00000000..cff5dfd2 --- /dev/null +++ b/src/main/java/me/zeroeightsix/kami/command/commands/BaritoneCommand.java @@ -0,0 +1,21 @@ +package me.zeroeightsix.kami.command.commands; + +import me.zeroeightsix.kami.command.Command; + +import static me.zeroeightsix.kami.util.MessageSendHelper.sendChatMessage; + +/** + * Created by Dewy on the 17th of April, 2020 + */ +public class BaritoneCommand extends Command { + + public BaritoneCommand() { + super("baritone", null); + setDescription("Configure baritone using it's own command system. Try typing '#help'."); + } + + @Override + public void call(String[] args) { + sendChatMessage("KAMI Blue has Baritone integration. To configure Baritone, use Baritone's own command system. Try #help for a command list."); + } +} From 9081221ca0472c5fcea4a9571b69bbeaf88259e0 Mon Sep 17 00:00:00 2001 From: Dewy REDACTED Date: Fri, 17 Apr 2020 15:51:27 +0100 Subject: [PATCH 5/7] optimised baritonewalk also added direction to HUD --- .../module/modules/movement/BaritoneWalk.java | 72 ++++++++++--------- 1 file changed, 40 insertions(+), 32 deletions(-) diff --git a/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java b/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java index c5758143..555b6205 100644 --- a/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java +++ b/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java @@ -6,51 +6,59 @@ import me.zeroeightsix.kami.module.Module; import static me.zeroeightsix.kami.util.MathsUtils.normalizeAngle; - /** * Created by Dewy on the 17th of April, 2020 */ @Module.Info(name = "BaritoneWalk", description = "AutoWalk with Baritone pathfinding.", category = Module.Category.MOVEMENT) public class BaritoneWalk extends Module { - - private boolean walking = false; + + private String direction; // Very shittily done, but this check is not that taxing on performance cos it is NOT performed every tick. @Override - public void onUpdate() { - if (!walking) { - if (normalizeAngle(mc.player.rotationYaw) >= -22.5 && normalizeAngle(mc.player.rotationYaw) <= 22.5) { - BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX, (int) mc.player.posZ + 1068)); - walking = true; - } else if (normalizeAngle(mc.player.rotationYaw) >= 22.6 && normalizeAngle(mc.player.rotationYaw) <= 67.5) { - BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX - 1068, (int) mc.player.posZ + 1068)); - walking = true; - } else if (normalizeAngle(mc.player.rotationYaw) >= 67.6 && normalizeAngle(mc.player.rotationYaw) <= 112.5) { - BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX - 1068, (int) mc.player.posZ)); - walking = true; - } else if (normalizeAngle(mc.player.rotationYaw) >= 112.6 && normalizeAngle(mc.player.rotationYaw) <= 157.5) { - BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX - 1068, (int) mc.player.posZ - 1068)); - walking = true; - } else if (normalizeAngle(mc.player.rotationYaw) >= 157.6 || normalizeAngle(mc.player.rotationYaw) <= -157.5) { - BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX, (int) mc.player.posZ - 1068)); - walking = true; - } else if (normalizeAngle(mc.player.rotationYaw) >= -157.6 && normalizeAngle(mc.player.rotationYaw) <= -112.5) { - BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX + 1068, (int) mc.player.posZ - 1068)); - walking = true; - } else if (normalizeAngle(mc.player.rotationYaw) >= -112.6 && normalizeAngle(mc.player.rotationYaw) <= -67.5) { - BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX + 1068, (int) mc.player.posZ)); - walking = true; - } else if (normalizeAngle(mc.player.rotationYaw) >= -67.6 && normalizeAngle(mc.player.rotationYaw) <= -22.6) { - BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX + 1068, (int) mc.player.posZ + 1068)); - walking = true; - } + protected void onEnable() { + if (normalizeAngle(mc.player.rotationYaw) >= -22.5 && normalizeAngle(mc.player.rotationYaw) <= 22.5) { // +Z + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX, (int) mc.player.posZ + 1068)); + + direction = "+Z"; + } else if (normalizeAngle(mc.player.rotationYaw) >= 22.6 && normalizeAngle(mc.player.rotationYaw) <= 67.5) { // -X / +Z + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX - 1068, (int) mc.player.posZ + 1068)); + + direction = "-X / +Z"; + } else if (normalizeAngle(mc.player.rotationYaw) >= 67.6 && normalizeAngle(mc.player.rotationYaw) <= 112.5) { // -X + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX - 1068, (int) mc.player.posZ)); + + direction = "-X"; + } else if (normalizeAngle(mc.player.rotationYaw) >= 112.6 && normalizeAngle(mc.player.rotationYaw) <= 157.5) { // -X / -Z + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX - 1068, (int) mc.player.posZ - 1068)); + + direction = "-X / -Z"; + } else if (normalizeAngle(mc.player.rotationYaw) >= 157.6 || normalizeAngle(mc.player.rotationYaw) <= -157.5) { // -Z + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX, (int) mc.player.posZ - 1068)); + + direction = "-Z"; + } else if (normalizeAngle(mc.player.rotationYaw) >= -157.6 && normalizeAngle(mc.player.rotationYaw) <= -112.5) { // +X / -Z + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX + 1068, (int) mc.player.posZ - 1068)); + + direction = "+X / -Z"; + } else if (normalizeAngle(mc.player.rotationYaw) >= -112.6 && normalizeAngle(mc.player.rotationYaw) <= -67.5) { // +X + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX + 1068, (int) mc.player.posZ)); + + direction = "+X"; + } else if (normalizeAngle(mc.player.rotationYaw) >= -67.6 && normalizeAngle(mc.player.rotationYaw) <= -22.6) { // +X / +Z + BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX + 1068, (int) mc.player.posZ + 1068)); + + direction = "+X / +Z"; } } + @Override + public String getHudInfo() { + return direction; + } + @Override protected void onDisable() { BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoal(null); - - walking = false; } } From d1833ef757303a59847f48692aaeafcafa3dd6f4 Mon Sep 17 00:00:00 2001 From: Dewy REDACTED Date: Sat, 18 Apr 2020 10:16:56 +0100 Subject: [PATCH 6/7] improved BaritoneWalk --- .../module/modules/movement/BaritoneWalk.java | 36 ++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java b/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java index 555b6205..15246f43 100644 --- a/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java +++ b/src/main/java/me/zeroeightsix/kami/module/modules/movement/BaritoneWalk.java @@ -2,7 +2,13 @@ package me.zeroeightsix.kami.module.modules.movement; import baritone.api.BaritoneAPI; import baritone.api.pathing.goals.GoalXZ; +import me.zero.alpine.listener.EventHandler; +import me.zero.alpine.listener.Listener; +import me.zeroeightsix.kami.KamiMod; +import me.zeroeightsix.kami.event.events.ServerDisconnectedEvent; import me.zeroeightsix.kami.module.Module; +import me.zeroeightsix.kami.setting.Setting; +import me.zeroeightsix.kami.setting.Settings; import static me.zeroeightsix.kami.util.MathsUtils.normalizeAngle; @@ -11,12 +17,17 @@ import static me.zeroeightsix.kami.util.MathsUtils.normalizeAngle; */ @Module.Info(name = "BaritoneWalk", description = "AutoWalk with Baritone pathfinding.", category = Module.Category.MOVEMENT) public class BaritoneWalk extends Module { - + private Setting sprint = register(Settings.booleanBuilder("Allow Sprinting").withValue(true)); + private Setting parkour = register(Settings.booleanBuilder("Allow Parkour").withValue(true).withVisibility(v -> sprint.getValue().equals(true))); + private Setting lockView = register(Settings.booleanBuilder("Lock View").withValue(false)); + private String direction; // Very shittily done, but this check is not that taxing on performance cos it is NOT performed every tick. @Override protected void onEnable() { + + if (normalizeAngle(mc.player.rotationYaw) >= -22.5 && normalizeAngle(mc.player.rotationYaw) <= 22.5) { // +Z BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ((int) mc.player.posX, (int) mc.player.posZ + 1068)); @@ -52,6 +63,16 @@ public class BaritoneWalk extends Module { } } + @Override + public void onUpdate() { + BaritoneAPI.getSettings().allowSprint.value = sprint.getValue(); + BaritoneAPI.getSettings().freeLook.value = !lockView.getValue(); + + if (sprint.getValue()) { + BaritoneAPI.getSettings().allowParkour.value = parkour.getValue(); + } + } + @Override public String getHudInfo() { return direction; @@ -60,5 +81,18 @@ public class BaritoneWalk extends Module { @Override protected void onDisable() { BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoal(null); + + BaritoneAPI.getSettings().freeLook.reset(); + BaritoneAPI.getSettings().allowParkour.reset(); + BaritoneAPI.getSettings().allowSprint.reset(); } + + @EventHandler + private Listener disconnectedEventListener = new Listener<>(event -> { + System.out.println("bBBBB"); + + if (KamiMod.MODULE_MANAGER.getModuleT(BaritoneWalk.class).isEnabled()) { + KamiMod.MODULE_MANAGER.getModuleT(BaritoneWalk.class).destroy(); + } + }); } From e3b20340277009587159b26038f3b8350c934ae9 Mon Sep 17 00:00:00 2001 From: Dewy REDACTED Date: Sun, 19 Apr 2020 15:55:29 +0100 Subject: [PATCH 7/7] added LoginMessage module --- .../module/modules/chat/LoginMessage.java | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 src/main/java/me/zeroeightsix/kami/module/modules/chat/LoginMessage.java diff --git a/src/main/java/me/zeroeightsix/kami/module/modules/chat/LoginMessage.java b/src/main/java/me/zeroeightsix/kami/module/modules/chat/LoginMessage.java new file mode 100644 index 00000000..0c623409 --- /dev/null +++ b/src/main/java/me/zeroeightsix/kami/module/modules/chat/LoginMessage.java @@ -0,0 +1,52 @@ +package me.zeroeightsix.kami.module.modules.chat; + +import me.zero.alpine.listener.EventHandler; +import me.zero.alpine.listener.Listener; +import me.zeroeightsix.kami.KamiMod; +import me.zeroeightsix.kami.event.events.PacketEvent; +import me.zeroeightsix.kami.module.Module; +import me.zeroeightsix.kami.util.MessageSendHelper; +import net.minecraft.network.play.server.SPacketChat; + +import java.io.BufferedReader; +import java.io.FileNotFoundException; +import java.io.FileReader; +import java.io.IOException; + +@Module.Info( + name = "LoginMessage", + description = "Sends a given message to public chat on login.", + category = Module.Category.CHAT +) +public class LoginMessage extends Module { + private String loginMessage; + private boolean sent = false; + + @Override + protected void onEnable() { + BufferedReader reader; + + try { + MessageSendHelper.sendChatMessage(getChatName() + "Finding login message from loginmsg.txt..."); + reader = new BufferedReader(new FileReader("loginmsg.txt")); + + loginMessage = reader.readLine(); + + reader.close(); + } catch (FileNotFoundException e) { + MessageSendHelper.sendErrorMessage(getChatName() + "The file '&7loginmsg.txt&f' was not found in your .minecraft folder. Create it and add a message to enable this module."); + disable(); + } catch (IOException e) { + KamiMod.log.error(e); + } + } + + @EventHandler + public Listener serverConnectedEventListener = new Listener<>(event -> { + if (event.getPacket() instanceof SPacketChat && !sent) { + mc.player.sendChatMessage(loginMessage); + + sent = true; + } + }); +}