1
0
mirror of https://github.com/kami-blue/client synced 2025-02-20 23:27:14 +00:00

Merge branch 'master' into dewy/baritone

This commit is contained in:
Dewy REDACTED 2020-04-17 14:02:00 +01:00
commit 1faa066873
No known key found for this signature in database
GPG Key ID: 0CAA84A783228505
12 changed files with 57 additions and 63 deletions

View File

@ -1,9 +1,8 @@
package me.zeroeightsix.kami;
import club.minnced.discord.rpc.DiscordEventHandlers;
import club.minnced.discord.rpc.DiscordRPC;
import club.minnced.discord.rpc.DiscordRichPresence;
import me.zeroeightsix.kami.module.modules.misc.DiscordSettings;
import me.zeroeightsix.kami.module.modules.misc.DiscordRPC;
import me.zeroeightsix.kami.util.RichPresence;
import net.minecraft.client.Minecraft;
@ -18,10 +17,10 @@ import static me.zeroeightsix.kami.KamiMod.MODULE_MANAGER;
public class DiscordPresence {
public static DiscordRichPresence presence;
private static boolean connected;
private static final DiscordRPC rpc;
private static final club.minnced.discord.rpc.DiscordRPC rpc;
private static String details;
private static String state;
private static DiscordSettings discordSettings;
private static DiscordRPC discordRPC;
public static void start() {
KamiMod.log.info("Starting Discord RPC");
@ -52,10 +51,10 @@ public class DiscordPresence {
while (!Thread.currentThread().isInterrupted()) {
try {
DiscordPresence.rpc.Discord_RunCallbacks();
discordSettings = MODULE_MANAGER.getModuleT(DiscordSettings.class);
discordRPC = MODULE_MANAGER.getModuleT(DiscordRPC.class);
String separator = " | ";
details = discordSettings.getLine(discordSettings.line1Setting.getValue()) + separator + discordSettings.getLine(discordSettings.line3Setting.getValue());
state = discordSettings.getLine(discordSettings.line2Setting.getValue()) + separator + discordSettings.getLine(discordSettings.line4Setting.getValue());
details = discordRPC.getLine(discordRPC.line1Setting.getValue()) + separator + discordRPC.getLine(discordRPC.line3Setting.getValue());
state = discordRPC.getLine(discordRPC.line2Setting.getValue()) + separator + discordRPC.getLine(discordRPC.line4Setting.getValue());
DiscordPresence.presence.details = details;
DiscordPresence.presence.state = state;
DiscordPresence.rpc.Discord_UpdatePresence(DiscordPresence.presence);
@ -66,9 +65,9 @@ public class DiscordPresence {
}
}
private static void setRpcFromSettings() {
discordSettings = MODULE_MANAGER.getModuleT(DiscordSettings.class);
details = discordSettings.getLine(discordSettings.line1Setting.getValue()) + " " + discordSettings.getLine(discordSettings.line3Setting.getValue());
state = discordSettings.getLine(discordSettings.line2Setting.getValue()) + " " + discordSettings.getLine(discordSettings.line4Setting.getValue());
discordRPC = MODULE_MANAGER.getModuleT(DiscordRPC.class);
details = discordRPC.getLine(discordRPC.line1Setting.getValue()) + " " + discordRPC.getLine(discordRPC.line3Setting.getValue());
state = discordRPC.getLine(discordRPC.line2Setting.getValue()) + " " + discordRPC.getLine(discordRPC.line4Setting.getValue());
DiscordPresence.presence.details = details;
DiscordPresence.presence.state = state;
DiscordPresence.presence.largeImageKey = "kami";
@ -77,7 +76,7 @@ public class DiscordPresence {
}
static {
rpc = DiscordRPC.INSTANCE;
rpc = club.minnced.discord.rpc.DiscordRPC.INSTANCE;
DiscordPresence.presence = new DiscordRichPresence();
DiscordPresence.connected = false;
}

View File

@ -18,14 +18,7 @@ public class FixGuiCommand extends Command {
@Override
public void call(String[] args) {
FixGui fixGui = MODULE_MANAGER.getModuleT(FixGui.class);
if (fixGui.isEnabled()) {
fixGui.disable();
sendChatMessage("[" + getLabel() + "] Disabled");
}
else {
fixGui.enable();
sendChatMessage("[" + getLabel() + "] Enabled");
}
MODULE_MANAGER.getModuleT(FixGui.class).enable();
sendChatMessage(getChatLabel() + "Ran");
}
}

View File

@ -50,6 +50,8 @@ public class RootCheckButtonUI<T extends CheckButton> extends AbstractComponentU
Component componentAt = KamiMod.getInstance().guiManager.getComponentAt(DisplayGuiScreen.mouseX, DisplayGuiScreen.mouseY);
if (componentAt.getHeight() != 11) return; // PREVENT DRAWING WHEN OUTSIDE THE CONTAINER // 11 is height of the regular module
if (componentAt.getWidth() != component.getWidth()) return; // prevent drawing 2 different categories when overlapped
glDisable(GL_SCISSOR_TEST); // let it draw outside of the container
glDepthRange(0, 0.01); // set render priority to the top

View File

@ -6,6 +6,6 @@ import me.zeroeightsix.kami.module.Module;
* @author S-B99
* @see me.zeroeightsix.kami.gui.kami.theme.kami.RootCheckButtonUI
*/
@Module.Info(name = "Tooltips", description = "Displays handy module descriptions in the GUI", category = Module.Category.CLIENT)
@Module.Info(name = "Tooltips", description = "Displays handy module descriptions in the GUI", category = Module.Category.CLIENT, showOnArray = Module.ShowOnArray.OFF)
public class Tooltips extends Module {
}

View File

@ -15,6 +15,8 @@ import net.minecraft.item.ItemPickaxe;
import net.minecraft.network.play.server.SPacketBlockBreakAnim;
import net.minecraft.util.math.BlockPos;
import static me.zeroeightsix.kami.gui.kami.DisplayGuiScreen.getScale;
/**
* @author Antonio32A
* Updated by S-B99 on 31/03/20
@ -70,8 +72,7 @@ public class BreakingWarning extends Module {
String text = playerName + " is breaking blocks near you!";
FontRenderer renderer = Wrapper.getFontRenderer();
int divider = mc.gameSettings.guiScale;
if (divider == 0) divider = 3;
int divider = getScale();
renderer.drawStringWithShadow(mc.displayWidth / divider / 2 - renderer.getStringWidth(text) / 2, mc.displayHeight / divider / 2 - 16, 240, 87, 70, text);
}

View File

@ -4,7 +4,7 @@ import me.zeroeightsix.kami.module.Module;
import me.zeroeightsix.kami.module.modules.capes.Capes;
import me.zeroeightsix.kami.module.modules.chat.CustomChat;
import me.zeroeightsix.kami.module.modules.client.*;
import me.zeroeightsix.kami.module.modules.misc.DiscordSettings;
import me.zeroeightsix.kami.module.modules.misc.DiscordRPC;
import me.zeroeightsix.kami.module.modules.render.TabFriends;
import me.zeroeightsix.kami.setting.Setting;
import me.zeroeightsix.kami.setting.Settings;
@ -18,7 +18,7 @@ import static me.zeroeightsix.kami.KamiMod.MODULE_MANAGER;
@Module.Info(name = "RunConfig", category = Module.Category.HIDDEN, showOnArray = Module.ShowOnArray.OFF, description = "Default manager for first runs")
public class RunConfig extends Module {
private Setting<Boolean> hasRunCapes = register(Settings.b("Capes", false));
private Setting<Boolean> hasRunDiscordSettings = register(Settings.b("DiscordSettings", false));
private Setting<Boolean> hasRunDiscordSettings = register(Settings.b("DiscordRPC", false));
private Setting<Boolean> hasRunFixGui = register(Settings.b("FixGui", false));
private Setting<Boolean> hasRunTabFriends = register(Settings.b("TabFriends", false));
private Setting<Boolean> hasRunCustomChat = register(Settings.b("CustomChat", false));
@ -35,7 +35,7 @@ public class RunConfig extends Module {
hasRunCapes.setValue(true);
}
if (!hasRunDiscordSettings.getValue()) {
MODULE_MANAGER.getModule(DiscordSettings.class).enable();
MODULE_MANAGER.getModule(DiscordRPC.class).enable();
hasRunDiscordSettings.setValue(true);
}
if (!hasRunFixGui.getValue()) {

View File

@ -23,15 +23,16 @@ import static me.zeroeightsix.kami.util.MessageSendHelper.sendErrorMessage;
*/
@Module.Info(name = "AutoNametag", description = "Automatically nametags entities", category = Module.Category.MISC)
public class AutoNametag extends Module {
private Setting<Mode> modeSetting = register(Settings.e("Mode", Mode.WITHER));
private Setting<Mode> modeSetting = register(Settings.e("Mode", Mode.ANY));
private Setting<Float> range = register(Settings.floatBuilder("Range").withMinimum(2.0f).withValue(3.5f).withMaximum(10.0f).build());
private Setting<Boolean> debug = register(Settings.b("Debug", false));
private String currentName = "";
private int currentSlot = -1;
public void onUpdate() {
useNameTag();
findNameTags();
useNameTag();
}
private void useNameTag() {
@ -40,17 +41,6 @@ public class AutoNametag extends Module {
switch (modeSetting.getValue()) {
case WITHER:
if (w instanceof EntityWither && !w.getDisplayName().getUnformattedText().equals(currentName)) {
final EntityWither wither = (EntityWither) w;
if (mc.player.getDistance(wither) <= range.getValue()) {
if (debug.getValue())
sendChatMessage("Found unnamed Wither");
selectNameTags();
mc.playerController.interactWithEntity(mc.player, wither, EnumHand.MAIN_HAND);
}
}
return;
case ANY:
if (w instanceof EntityMob || w instanceof EntityAnimal && !w.getDisplayName().getUnformattedText().equals(currentName)) {
if (mc.player.getDistance(w) <= range.getValue()) {
if (debug.getValue())
sendChatMessage("Found unnamed " + w.getDisplayName().getUnformattedText());
@ -58,42 +48,49 @@ public class AutoNametag extends Module {
mc.playerController.interactWithEntity(mc.player, w, EnumHand.MAIN_HAND);
}
}
break;
case ANY:
if ((w instanceof EntityMob || w instanceof EntityAnimal) && !w.getDisplayName().getUnformattedText().equals(currentName)) {
if (mc.player.getDistance(w) <= range.getValue()) {
if (debug.getValue())
sendChatMessage("Found unnamed " + w.getDisplayName().getUnformattedText());
selectNameTags();
mc.playerController.interactWithEntity(mc.player, w, EnumHand.MAIN_HAND);
}
}
break;
}
}
mc.player.inventory.currentItem = originalSlot;
}
private void selectNameTags() {
int tagSlot = -1;
for (int i = 0; i < 9; i++) {
ItemStack stack = mc.player.inventory.getStackInSlot(i);
if (stack == ItemStack.EMPTY || stack.getItem() instanceof ItemBlock) continue;
Item tag = stack.getItem();
if (tag instanceof ItemNameTag) {
tagSlot = i;
currentName = stack.getDisplayName();
}
}
if (tagSlot == -1) {
if (debug.getValue()) sendErrorMessage(getChatName() + "Error: No nametags in hotbar");
if (currentSlot == -1 || !isNametag(currentSlot)) {
sendErrorMessage(getChatName() + "Error: No nametags in hotbar");
disable();
return;
}
mc.player.inventory.currentItem = tagSlot;
mc.player.inventory.currentItem = currentSlot;
}
private void findNameTags() {
for (int i = 0; i < 9; i++) {
ItemStack stack = mc.player.inventory.getStackInSlot(i);
if (stack == ItemStack.EMPTY || stack.getItem() instanceof ItemBlock) continue;
Item tag = stack.getItem();
if (tag instanceof ItemNameTag) {
if (isNametag(i)) {
currentName = stack.getDisplayName();
currentSlot = i;
}
}
}
/* In case they run out of nametags, check again */
private boolean isNametag(int i) {
ItemStack stack = mc.player.inventory.getStackInSlot(i);
Item tag = stack.getItem();
return tag instanceof ItemNameTag && !stack.getDisplayName().equals("Name Tag");
}
private enum Mode { WITHER, ANY }
}

View File

@ -42,7 +42,7 @@ public class AutoSpawner extends Module {
private Setting<Boolean> partyWithers = register(Settings.booleanBuilder("Withers").withValue(false).withVisibility(v -> party.getValue()).build());
private Setting<EntityMode> entityMode = register(Settings.enumBuilder(EntityMode.class).withName("Entity Mode").withValue(EntityMode.SNOW).withVisibility(v -> !party.getValue()).build());
private Setting<Float> placeRange = register(Settings.floatBuilder("Place Range").withMinimum(2.0f).withValue(3.5f).withMaximum(10.0f).build());
private Setting<Integer> delay = register(Settings.integerBuilder("Delay").withMinimum(12).withValue(20).withMaximum(100).build());
private Setting<Integer> delay = register(Settings.integerBuilder("Delay").withMinimum(12).withValue(20).withMaximum(100).withVisibility(v -> useMode.getValue().equals(UseMode.SPAM)).build());
private Setting<Boolean> rotate = register(Settings.b("Rotate", true));
private Setting<Boolean> debug = register(Settings.b("Debug", false));

View File

@ -14,8 +14,8 @@ import static me.zeroeightsix.kami.util.MessageSendHelper.sendWarningMessage;
* Updated by S-B99 on 13/01/20
* Updated (slightly) by Dewy on 3rd April 2020
*/
@Module.Info(name = "DiscordSettings", category = Module.Category.MISC, description = "Discord Rich Presence")
public class DiscordSettings extends Module {
@Module.Info(name = "DiscordRPC", category = Module.Category.MISC, description = "Discord Rich Presence")
public class DiscordRPC extends Module {
private Setting<Boolean> coordsConfirm = register(Settings.b("Coords Confirm", false));
public Setting<LineInfo> line1Setting = register(Settings.e("Line 1 Left", LineInfo.VERSION)); // details left
public Setting<LineInfo> line3Setting = register(Settings.e("Line 1 Right", LineInfo.USERNAME)); // details right

View File

@ -9,6 +9,7 @@ import me.zeroeightsix.kami.setting.Setting;
import me.zeroeightsix.kami.setting.Settings;
import me.zeroeightsix.kami.util.Wrapper;
import static me.zeroeightsix.kami.gui.kami.DisplayGuiScreen.getScale;
import static me.zeroeightsix.kami.util.InfoCalculator.round;
/**
@ -26,8 +27,8 @@ public class LagNotifier extends Module {
String text = "Server Not Responding! " + timeDifference() + "s";
FontRenderer renderer = Wrapper.getFontRenderer();
int divider = mc.gameSettings.guiScale;
if (divider == 0) divider = 3; /* 217 is the offset to make it go high, bigger = higher, with 0 being center */
int divider = getScale();
/* 217 is the offset to make it go high, bigger = higher, with 0 being center */
renderer.drawStringWithShadow(mc.displayWidth / divider / 2 - renderer.getStringWidth(text) / 2, mc.displayHeight / divider / 2 - 217, 255, 85, 85, text);
}

View File

@ -9,6 +9,8 @@ import org.lwjgl.opengl.Display;
import java.util.List;
import static me.zeroeightsix.kami.gui.kami.DisplayGuiScreen.getScale;
/**
* @author S-B99
* Created by S-B99 on 24/03/20
@ -42,8 +44,7 @@ public class GuiFrameUtil {
if (kamiGUI == null || mc.player == null) return;
List<Frame> frames = ContainerHelper.getAllChildren(Frame.class, kamiGUI);
for (Frame frame : frames) {
int divider = mc.gameSettings.guiScale;
if (divider == 0) divider = 3;
int divider = getScale();
if (frame.getX() > (Display.getWidth() / divider)) {
frame.setX((Display.getWidth() / divider) - frame.getWidth());
}

View File

@ -37,7 +37,7 @@ public class WebUtils {
new Thread(() -> {
try {
// connect to https://api.github.com/repos/kami-blue/client/contributors
HttpsURLConnection connection = (HttpsURLConnection) new URL(KamiMod.CAPES_JSON).openConnection();
HttpsURLConnection connection = (HttpsURLConnection) new URL("https://api.github.com/repos/kami-blue/client/contributors").openConnection();
connection.connect();
// then parse it