diff --git a/build.gradle b/build.gradle index d0c575e..bfd8957 100644 --- a/build.gradle +++ b/build.gradle @@ -52,7 +52,7 @@ processResources { expand "version": project.version filter { line -> line.replace("@mc_version@", project.minecraft_version) } - filter { line -> line.replace("@gh_hash@", System.getenv("GITHUB_SHA") ?: "unknown") } + filter { line -> line.replace("@gh_hash@", System.getenv("GITHUB_SHA") ?: "") } } } diff --git a/src/main/java/anticope/rejects/MeteorRejectsAddon.java b/src/main/java/anticope/rejects/MeteorRejectsAddon.java index e485441..e8d58db 100644 --- a/src/main/java/anticope/rejects/MeteorRejectsAddon.java +++ b/src/main/java/anticope/rejects/MeteorRejectsAddon.java @@ -7,6 +7,7 @@ import anticope.rejects.modules.*; import anticope.rejects.modules.modifier.NoRenderModifier; import anticope.rejects.utils.GiveUtils; import anticope.rejects.utils.RejectsUtils; +import meteordevelopment.meteorclient.addons.GithubRepo; import meteordevelopment.meteorclient.addons.MeteorAddon; import meteordevelopment.meteorclient.MeteorClient; import meteordevelopment.meteorclient.gui.GuiThemes; @@ -15,6 +16,7 @@ import meteordevelopment.meteorclient.systems.commands.Commands; import meteordevelopment.meteorclient.systems.hud.HUD; import meteordevelopment.meteorclient.systems.modules.Category; import meteordevelopment.meteorclient.systems.modules.Modules; +import net.fabricmc.loader.api.FabricLoader; import net.minecraft.item.Items; import org.slf4j.Logger; @@ -106,4 +108,26 @@ public class MeteorRejectsAddon extends MeteorAddon { public void onRegisterCategories() { Modules.registerCategory(CATEGORY); } + + @Override + public String getWebsite() { + return "https://github.com/AntiCope/meteor-rejects"; + } + + @Override + public GithubRepo getRepo() { + return new GithubRepo("AntiCope", "meteor-rejects"); + } + + @Override + public String getCommit() { + String commit = FabricLoader + .getInstance() + .getModContainer("meteor-rejects") + .get().getMetadata() + .getCustomValue("github:sha") + .getAsString(); + return commit.isEmpty() ? null : commit; + + } } diff --git a/src/main/java/anticope/rejects/mixin/TitleScreenMixin.java b/src/main/java/anticope/rejects/mixin/TitleScreenMixin.java deleted file mode 100644 index cce67ad..0000000 --- a/src/main/java/anticope/rejects/mixin/TitleScreenMixin.java +++ /dev/null @@ -1,25 +0,0 @@ -package anticope.rejects.mixin; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; - -import net.minecraft.client.gui.screen.TitleScreen; -import net.minecraft.client.util.math.MatrixStack; - -import anticope.rejects.utils.RejectsConfig; -import anticope.rejects.utils.UpdateUtil; -import meteordevelopment.meteorclient.utils.network.MeteorExecutor; - -@Mixin(value = TitleScreen.class) -public class TitleScreenMixin { - @Inject(method = "render", at = @At("TAIL")) - private void onRender(MatrixStack matrices, int mouseX, int mouseY, float delta, CallbackInfo info) { - if (RejectsConfig.get().checkForUpdates) { - MeteorExecutor.execute(() -> { - UpdateUtil.checkUpdate(); - }); - } - } -} diff --git a/src/main/java/anticope/rejects/utils/ConfigModifier.java b/src/main/java/anticope/rejects/utils/ConfigModifier.java index 846f195..06ca2ee 100644 --- a/src/main/java/anticope/rejects/utils/ConfigModifier.java +++ b/src/main/java/anticope/rejects/utils/ConfigModifier.java @@ -1,6 +1,5 @@ package anticope.rejects.utils; -import meteordevelopment.meteorclient.settings.BoolSetting; import meteordevelopment.meteorclient.settings.EnumSetting; import meteordevelopment.meteorclient.settings.ModuleListSetting; import meteordevelopment.meteorclient.settings.Setting; @@ -34,14 +33,6 @@ public class ConfigModifier { .build() ); - public final Setting checkForUpdates = sgRejects.add(new BoolSetting.Builder() - .name("check-for-updates") - .description("Show toast on title screen when new update is available.") - .defaultValue(RejectsConfig.get().checkForUpdates) - .onChanged(v -> RejectsConfig.get().checkForUpdates = v) - .build() - ); - public static ConfigModifier get() { if (INSTANCE == null) INSTANCE = new ConfigModifier(); return INSTANCE; diff --git a/src/main/java/anticope/rejects/utils/RejectsConfig.java b/src/main/java/anticope/rejects/utils/RejectsConfig.java index 9e6a6a6..f63a386 100644 --- a/src/main/java/anticope/rejects/utils/RejectsConfig.java +++ b/src/main/java/anticope/rejects/utils/RejectsConfig.java @@ -28,7 +28,6 @@ public class RejectsConfig extends System { } public HttpAllowed httpAllowed = HttpAllowed.Everything; - public boolean checkForUpdates = true; public Set hiddenModules = new HashSet(); public RejectsConfig() { @@ -67,7 +66,6 @@ public class RejectsConfig extends System { public NbtCompound toTag() { NbtCompound tag = new NbtCompound(); tag.putString("httpAllowed", httpAllowed.toString()); - tag.putBoolean("checkForUpdates", checkForUpdates); NbtList modulesTag = new NbtList(); for (String module : hiddenModules) modulesTag.add(NbtString.of(module)); @@ -79,7 +77,6 @@ public class RejectsConfig extends System { @Override public RejectsConfig fromTag(NbtCompound tag) { httpAllowed = HttpAllowed.valueOf(tag.getString("httpAllowed")); - checkForUpdates = !tag.contains("checkForUpdates") || tag.getBoolean("checkForUpdates"); NbtList valueTag = tag.getList("hiddenModules", 8); for (NbtElement tagI : valueTag) { diff --git a/src/main/java/anticope/rejects/utils/UpdateUtil.java b/src/main/java/anticope/rejects/utils/UpdateUtil.java deleted file mode 100644 index d0d5f76..0000000 --- a/src/main/java/anticope/rejects/utils/UpdateUtil.java +++ /dev/null @@ -1,36 +0,0 @@ -package anticope.rejects.utils; - -import com.google.gson.JsonObject; -import net.minecraft.item.Items; - -import net.fabricmc.loader.api.FabricLoader; -import anticope.rejects.MeteorRejectsAddon; -import meteordevelopment.meteorclient.utils.network.Http; -import meteordevelopment.meteorclient.utils.render.MeteorToast; - -import static meteordevelopment.meteorclient.MeteorClient.mc; - -public class UpdateUtil { - private static boolean firstTimeTitleScreen = true; - private static final String TAGNAME = "latest-1.18"; - - public static void checkUpdate() { - if (!firstTimeTitleScreen) return; - firstTimeTitleScreen = false; - - MeteorRejectsAddon.LOG.info("Checking for Meteor Rejects update..."); - - String gitHash = FabricLoader - .getInstance() - .getModContainer("meteor-rejects") - .get().getMetadata() - .getCustomValue("updater:sha") - .getAsString().trim(); - - JsonObject tag = Http.get("https://api.github.com/repos/AntiCope/meteor-rejects/git/ref/tags/"+TAGNAME).sendJson(JsonObject.class); - if (tag.get("object").getAsJsonObject().get("sha").getAsString().trim().equals(gitHash)) return; - - mc.getToastManager().add(new MeteorToast(Items.BARRIER, "New Rejects update.", "Download it from Github", 8000)); - } - -} diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index f169cc2..3e450b1 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -32,7 +32,7 @@ ], "custom": { "meteor-client:color": "227,0,0", - "updater:sha": "@gh_hash@" + "github:sha": "@gh_hash@" }, "depends": { "java": ">=16", diff --git a/src/main/resources/meteor-rejects.mixins.json b/src/main/resources/meteor-rejects.mixins.json index 112133f..4a906f4 100644 --- a/src/main/resources/meteor-rejects.mixins.json +++ b/src/main/resources/meteor-rejects.mixins.json @@ -13,7 +13,6 @@ "LivingEntityRendererMixin", "StructureVoidBlockMixin", "ToastManagerMixin", - "TitleScreenMixin", "LivingEntityMixin", "baritone.MineProcessMixin" ],