aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/cc/polyfrost/oneconfig
diff options
context:
space:
mode:
authorWyvest <45589059+Wyvest@users.noreply.github.com>2022-07-02 06:12:23 +0700
committerWyvest <45589059+Wyvest@users.noreply.github.com>2022-07-02 06:12:23 +0700
commitd4bb5a94308d4379ef3d6cc7b9221ea0d98ff051 (patch)
tree9bb9b53e2823f73084780673763504f4098bae69 /src/main/java/cc/polyfrost/oneconfig
parentd2b1d57120bb51e76191302a58d935afe52b89df (diff)
downloadOneConfig-d4bb5a94308d4379ef3d6cc7b9221ea0d98ff051.tar.gz
OneConfig-d4bb5a94308d4379ef3d6cc7b9221ea0d98ff051.tar.bz2
OneConfig-d4bb5a94308d4379ef3d6cc7b9221ea0d98ff051.zip
Separate Minecraft dependant and non-dependant code
Diffstat (limited to 'src/main/java/cc/polyfrost/oneconfig')
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/config/compatibility/vigilance/VigilanceConfig.java8
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/config/profiles/Profiles.java16
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/events/event/ChatReceiveEvent.java11
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/events/event/ReceivePacketEvent.java6
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/events/event/ScreenOpenEvent.java5
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/events/event/SendPacketEvent.java5
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/events/event/TimerUpdateEvent.java19
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/GuiPause.java9
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/HudGui.java65
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/OneConfigGui.java25
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/SideBar.java8
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/elements/BasicElement.java4
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/elements/ColorSelector.java18
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/elements/ModCard.java8
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/elements/Slider.java4
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigCheckbox.java4
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigDropdown.java22
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigPageButton.java4
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigSlider.java4
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigSwitch.java4
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/elements/config/ConfigTextBox.java4
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/elements/text/TextInputField.java17
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/gui/pages/Page.java8
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/hud/Hud.java12
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/hud/TextHud.java3
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/images/Image.java8
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/OneConfig.java87
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/config/OneConfigConfig.java14
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/config/Preferences.java14
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/config/core/ConfigCore.java2
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/gui/BlurHandler.java140
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/init/OneConfigInit.java2
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/mixin/FontRendererMixin.java15
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/mixin/GuiIngameForgeMixin.java17
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/mixin/MinecraftMixin.java98
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/mixin/NetHandlerPlayClientMixin.java36
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/mixin/NetworkManagerMixin.java23
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/mixin/OptifineConfigMixin.java21
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/mixin/ShaderGroupAccessor.java14
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/mixin/VigilantMixin.java8
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/mixin/WorldClientMixin.java21
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/plugin/asm/ClassTransformer.java102
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/plugin/asm/ITransformer.java24
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/plugin/asm/OneConfigTweaker.java117
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/plugin/asm/tweakers/NanoVGGLConfigTransformer.java47
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/plugin/asm/tweakers/VigilantTransformer.java89
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/plugin/hooks/Lwjgl2FunctionProvider.java39
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/plugin/hooks/OptifineConfigHook.java23
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/internal/plugin/hooks/VigilantHook.java27
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/platform/GLPlatform.java17
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/platform/GuiPlatform.java8
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/platform/I18nPlatform.java5
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/platform/LoaderPlatform.java19
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/platform/MousePlatform.java15
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/platform/Platform.java55
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/platform/ServerPlatform.java7
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/renderer/RenderManager.java29
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/test/TestConfig_Test.java6
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/test/TestMod_Test.java14
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/test/TestMultilineHud_Test.java3
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/test/TestNanoVGGui_Test.java1
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/utils/InputUtils.java13
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/utils/commands/CommandManager.java328
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/utils/commands/PlatformCommandManager.java7
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/utils/gui/GuiUtils.java27
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/utils/gui/OneUIScreen.java31
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/utils/hypixel/HypixelUtils.java19
67 files changed, 355 insertions, 1530 deletions
diff --git a/src/main/java/cc/polyfrost/oneconfig/config/compatibility/vigilance/VigilanceConfig.java b/src/main/java/cc/polyfrost/oneconfig/config/compatibility/vigilance/VigilanceConfig.java
index 1948e0a..97dd0cb 100644
--- a/src/main/java/cc/polyfrost/oneconfig/config/compatibility/vigilance/VigilanceConfig.java
+++ b/src/main/java/cc/polyfrost/oneconfig/config/compatibility/vigilance/VigilanceConfig.java
@@ -8,11 +8,11 @@ import cc.polyfrost.oneconfig.config.elements.OptionPage;
import cc.polyfrost.oneconfig.config.elements.BasicOption;
import cc.polyfrost.oneconfig.config.Config;
import cc.polyfrost.oneconfig.gui.elements.config.*;
+import cc.polyfrost.oneconfig.platform.Platform;
import gg.essential.vigilance.Vigilant;
import gg.essential.vigilance.data.*;
import kotlin.reflect.KMutableProperty0;
import kotlin.reflect.jvm.ReflectJvmMapping;
-import net.minecraft.client.resources.I18n;
import java.awt.*;
import java.lang.reflect.Field;
@@ -131,7 +131,7 @@ public class VigilanceConfig extends Config {
private String getName(PropertyAttributesExt ext) {
try {
PropertyAttributesExt.class.getDeclaredField("i18nName").setAccessible(true);
- return I18n.format((String) PropertyAttributesExt.class.getDeclaredField("i18nName").get(ext));
+ return Platform.getI18nPlatform().format((String) PropertyAttributesExt.class.getDeclaredField("i18nName").get(ext));
} catch (IllegalAccessException | NoSuchFieldException e) {
return ext.getName();
}
@@ -140,7 +140,7 @@ public class VigilanceConfig extends Config {
private String getCategory(PropertyAttributesExt ext) {
try {
PropertyAttributesExt.class.getDeclaredField("i18nCategory").setAccessible(true);
- return I18n.format((String) PropertyAttributesExt.class.getDeclaredField("i18nCategory").get(ext));
+ return Platform.getI18nPlatform().format((String) PropertyAttributesExt.class.getDeclaredField("i18nCategory").get(ext));
} catch (IllegalAccessException | NoSuchFieldException e) {
return ext.getCategory();
}
@@ -149,7 +149,7 @@ public class VigilanceConfig extends Config {
private String getSubcategory(PropertyAttributesExt ext) {
try {
PropertyAttributesExt.class.getDeclaredField("i18nSubcategory").setAccessible(true);
- return I18n.format((String) PropertyAttributesExt.class.getDeclaredField("i18nSubcategory").get(ext));
+ return Platform.getI18nPlatform().format((String) PropertyAttributesExt.class.getDeclaredField("i18nSubcategory").get(ext));
} catch (IllegalAccessException | NoSuchFieldException e) {
return ext.getSubcategory();
}
diff --git a/src/main/java/cc/polyfrost/oneconfig/config/profiles/Profiles.java b/src/main/java/cc/polyfrost/oneconfig/config/profiles/Profiles.java
index 0f5ce09..29a9daa 100644
--- a/src/main/java/cc/polyfrost/oneconfig/config/profiles/Profiles.java
+++ b/src/main/java/cc/polyfrost/oneconfig/config/profiles/Profiles.java
@@ -1,9 +1,10 @@
package cc.polyfrost.oneconfig.config.profiles;
-import cc.polyfrost.oneconfig.internal.OneConfig;
import cc.polyfrost.oneconfig.internal.config.OneConfigConfig;
import cc.polyfrost.oneconfig.internal.config.core.ConfigCore;
import org.apache.commons.io.FileUtils;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import java.io.File;
import java.io.IOException;
@@ -11,13 +12,14 @@ import java.util.ArrayList;
import java.util.Arrays;
public class Profiles {
+ private static final Logger LOGGER = LogManager.getLogger("OneConfig Profiles");
public static final File nonProfileSpecificDir = new File("OneConfig/config");
public static final File profileDir = new File("OneConfig/profiles");
public static ArrayList<String> profiles;
public static String getCurrentProfile() {
if (!profileDir.exists() && !profileDir.mkdir()) {
- OneConfig.LOGGER.fatal("Could not create profiles folder");
+ LOGGER.fatal("Could not create profiles folder");
return null;
}
if (profiles == null) {
@@ -33,7 +35,7 @@ public class Profiles {
public static void createProfile(String name) {
File folder = new File(profileDir, name);
if (!folder.exists() && !folder.mkdir()) {
- OneConfig.LOGGER.fatal("Could not create profile folder");
+ LOGGER.fatal("Could not create profile folder");
return;
}
profiles.add(name);
@@ -58,7 +60,7 @@ public class Profiles {
public static void loadProfile(String profile) {
ConfigCore.saveAll();
OneConfigConfig.currentProfile = profile;
- OneConfig.config.save();
+ //OneConfig.config.save(); todo do we actually need this
ConfigCore.reInitAll();
}
@@ -70,14 +72,14 @@ public class Profiles {
profiles.remove(name);
profiles.add(newName);
} catch (IOException e) {
- OneConfig.LOGGER.error("Failed to rename profile");
+ LOGGER.error("Failed to rename profile");
}
}
public static void deleteProfile(String name) {
if (name.equals(getCurrentProfile())) {
if (profiles.size() == 1) {
- OneConfig.LOGGER.error("Cannot delete only profile!");
+ LOGGER.error("Cannot delete only profile!");
return;
}
loadProfile(profiles.stream().filter(entry -> !entry.equals(name)).findFirst().get());
@@ -86,7 +88,7 @@ public class Profiles {
FileUtils.deleteDirectory(getProfileDir(name));
profiles.remove(name);
} catch (IOException e) {
- OneConfig.LOGGER.error("Failed to delete profile");
+ LOGGER.error("Failed to delete profile");
}
}
}
diff --git a/src/main/java/cc/polyfrost/oneconfig/events/event/ChatReceiveEvent.java b/src/main/java/cc/polyfrost/oneconfig/events/event/ChatReceiveEvent.java
index 616479e..299ce12 100644
--- a/src/main/java/cc/polyfrost/oneconfig/events/event/ChatReceiveEvent.java
+++ b/src/main/java/cc/polyfrost/oneconfig/events/event/ChatReceiveEvent.java
@@ -1,8 +1,5 @@
package cc.polyfrost.oneconfig.events.event;
-
-import net.minecraft.util.IChatComponent;
-
/**
* Called when a chat message is received.
*/
@@ -10,9 +7,13 @@ public class ChatReceiveEvent extends CancellableEvent {
/**
* The message that was received.
*/
- public final IChatComponent message;
+ public final Object message;
- public ChatReceiveEvent(IChatComponent message) {
+ public ChatReceiveEvent(Object message) {
this.message = message;
}
+
+ public String getFullyUnformattedMessage() {
+ return "";
+ }
}
diff --git a/src/main/java/cc/polyfrost/oneconfig/events/event/ReceivePacketEvent.java b/src/main/java/cc/polyfrost/oneconfig/events/event/ReceivePacketEvent.java
index 17bc16d..f35bd0c 100644
--- a/src/main/java/cc/polyfrost/oneconfig/events/event/ReceivePacketEvent.java
+++ b/src/main/java/cc/polyfrost/oneconfig/events/event/ReceivePacketEvent.java
@@ -1,11 +1,9 @@
package cc.polyfrost.oneconfig.events.event;
-import net.minecraft.network.Packet;
-
public class ReceivePacketEvent extends CancellableEvent {
- public final Packet<?> packet;
+ public final Object packet;
- public ReceivePacketEvent(Packet<?> packet) {
+ public ReceivePacketEvent(Object packet) {
this.packet = packet;
}
}
diff --git a/src/main/java/cc/polyfrost/oneconfig/events/event/ScreenOpenEvent.java b/src/main/java/cc/polyfrost/oneconfig/events/event/ScreenOpenEvent.java
index 4593638..daee38b 100644
--- a/src/main/java/cc/polyfrost/oneconfig/events/event/ScreenOpenEvent.java
+++ b/src/main/java/cc/polyfrost/oneconfig/events/event/ScreenOpenEvent.java
@@ -1,6 +1,5 @@
package cc.polyfrost.oneconfig.events.event;
-import net.minecraft.client.gui.GuiScreen;
import org.jetbrains.annotations.Nullable;
/**
@@ -9,9 +8,9 @@ import org.jetbrains.annotations.Nullable;
*/
public class ScreenOpenEvent extends CancellableEvent {
@Nullable
- public final GuiScreen screen;
+ public final Object screen;
- public ScreenOpenEvent(@Nullable GuiScreen screen) {
+ public ScreenOpenEvent(@Nullable Object screen) {
this.screen = screen;
}
}
diff --git a/src/main/java/cc/polyfrost/oneconfig/events/event/SendPacketEvent.java b/src/main/java/cc/polyfrost/oneconfig/events/event/SendPacketEvent.java
index 3cee784..791f8d6 100644
--- a/src/main/java/cc/polyfrost/oneconfig/events/event/SendPacketEvent.java
+++ b/src/main/java/cc/polyfrost/oneconfig/events/event/SendPacketEvent.java
@@ -1,11 +1,10 @@
package cc.polyfrost.oneconfig.events.event;
-import net.minecraft.network.Packet;
public class SendPacketEvent extends CancellableEvent {
- public final Packet<?> packet;
+ public final Object packet;
- public SendPacketEvent(Packet<?> packet) {
+ public SendPacketEvent(Object packet) {
this.packet = packet;
}
}
diff --git a/src/main/java/cc/polyfrost/oneconfig/events/event/TimerUpdateEvent.java b/src/main/java/cc/polyfrost/oneconfig/events/event/TimerUpdateEvent.java
index a8b88dc..c5f863c 100644
--- a/src/main/java/cc/polyfrost/oneconfig/events/event/TimerUpdateEvent.java
+++ b/src/main/java/cc/polyfrost/oneconfig/events/event/TimerUpdateEvent.java
@@ -1,23 +1,12 @@
package cc.polyfrost.oneconfig.events.event;
-import net.minecraft.util.Timer;
-
-/**
- * Called when the {@link Timer} is updated.
- * Can be used as an alternative to getting instances of {@link Timer}
- * via Mixin or Access Wideners / Transformers
- */
public class TimerUpdateEvent {
- /**
- * Whether the deltaTicks / renderPartialTicks was updated
- */
+
public final boolean updatedDeltaTicks;
- /**
- * The {@link Timer} instance
- */
- public final Timer timer;
- public TimerUpdateEvent(Timer timer, boolean updatedDeltaTicks) {
+ public final Object timer;
+
+ public TimerUpdateEvent(Object timer, boolean updatedDeltaTicks) {
this.timer = timer;
this.updatedDeltaTicks = updatedDeltaTicks;
}
diff --git a/src/main/java/cc/polyfrost/oneconfig/gui/GuiPause.java b/src/main/java/cc/polyfrost/oneconfig/gui/GuiPause.java
new file mode 100644
index 0000000..44b2b5c
--- /dev/null
+++ b/src/main/java/cc/polyfrost/oneconfig/gui/GuiPause.java
@@ -0,0 +1,9 @@
+package cc.polyfrost.oneconfig.gui;
+
+/**
+ * Hack that allows GUIs to set whether the game should pause when the GUI is displayed without depending on
+ * Minecraft itself.
+ */
+public interface GuiPause {
+ boolean doesGuiPauseGame();
+}
diff --git a/src/main/java/cc/polyfrost/oneconfig/gui/HudGui.java b/src/main/java/cc/polyfrost/oneconfig/gui/HudGui.java
index b13170a..2c3e681 100644
--- a/src/main/java/cc/polyfrost/oneconfig/gui/HudGui.java
+++ b/src/main/java/cc/polyfrost/oneconfig/gui/HudGui.java
@@ -3,6 +3,7 @@ package cc.polyfrost.oneconfig.gui;
import cc.polyfrost.oneconfig.internal.config.core.ConfigCore;
import cc.polyfrost.oneconfig.hud.Hud;
import cc.polyfrost.oneconfig.internal.hud.HudCore;
+import cc.polyfrost.oneconfig.libs.universal.UResolution;
import cc.polyfrost.oneconfig.renderer.RenderManager;
import cc.polyfrost.oneconfig.libs.universal.UKeyboard;
import cc.polyfrost.oneconfig.libs.universal.UMatrixStack;
@@ -13,7 +14,7 @@ import org.jetbrains.annotations.Nullable;
import java.awt.*;
import java.util.ArrayList;
-public class HudGui extends UScreen {
+public class HudGui extends UScreen implements GuiPause {
private Hud editingHud;
private boolean isDragging;
private boolean isScaling;
@@ -29,7 +30,7 @@ public class HudGui extends UScreen {
@Override
public void onDrawScreen(@NotNull UMatrixStack matrixStack, int mouseX, int mouseY, float partialTicks) {
- RenderManager.drawGlRect(0, 0, this.width, this.height, new Color(80, 80, 80, 50).getRGB());
+ RenderManager.drawGlRect(0, 0, UResolution.getScaledWidth(), UResolution.getScaledHeight(), new Color(80, 80, 80, 50).getRGB());
if (isDragging) {
setPosition(mouseX - xOffset, mouseY - yOffset, true);
@@ -42,8 +43,8 @@ public class HudGui extends UScreen {
private void processHud(Hud hud, int mouseX) {
if (hud == editingHud && isScaling) {
- float xFloat = hud.getXScaled(this.width);
- float yFloat = hud.getYScaled(this.height);
+ float xFloat = hud.getXScaled(UResolution.getScaledWidth());
+ float yFloat = hud.getYScaled(UResolution.getScaledHeight());
float pos = getXSnapping(mouseX, true);
float newWidth = pos - xFloat;
float newScale = newWidth / ((hud.getWidth(hud.scale) + hud.paddingX * hud.scale) / hud.scale);
@@ -53,16 +54,16 @@ public class HudGui extends UScreen {
newScale = 0.3f;
hud.scale = newScale;
- if (xFloat / this.width > 0.5)
- editingHud.xUnscaled = (xFloat + (hud.getWidth(hud.scale) + hud.paddingX * hud.scale)) / (double) this.width;
- if (yFloat / this.height > 0.5)
- editingHud.yUnscaled = (yFloat + (hud.getHeight(hud.scale) + hud.paddingY * hud.scale)) / (double) this.height;
+ if (xFloat / UResolution.getScaledWidth() > 0.5)
+ editingHud.xUnscaled = (xFloat + (hud.getWidth(hud.scale) + hud.paddingX * hud.scale)) / (double) UResolution.getScaledWidth();
+ if (yFloat / UResolution.getScaledHeight() > 0.5)
+ editingHud.yUnscaled = (yFloat + (hud.getHeight(hud.scale) + hud.paddingY * hud.scale)) / (double) UResolution.getScaledHeight();
}
int width = (int) (hud.getExampleWidth(hud.scale) + hud.paddingX * hud.scale);
int height = (int) (hud.getExampleHeight(hud.scale) + hud.paddingY * hud.scale);
- int x = (int) hud.getXScaled(this.width);
- int y = (int) hud.getYScaled(this.height);
+ int x = (int) hud.getXScaled(UResolution.getScaledWidth());
+ int y = (int) hud.getYScaled(UResolution.getScaledHeight());
hud.drawExampleAll(x, y, hud.scale, true);
int color = new Color(215, 224, 235).getRGB();
@@ -90,12 +91,12 @@ public class HudGui extends UScreen {
if (newX < 0)