From 3bfffcd5d09a2c5d0b4129ba1a36e386b553d737 Mon Sep 17 00:00:00 2001 From: Laur Date: Sat, 14 Feb 2026 01:05:58 +0200 Subject: [PATCH] Added feature where 6b6t is automatically added to the server list if not already there --- .../anarchymod/mixin/ServerListMixin.java | 29 +++++++++++++++++++ .../src/main/resources/anarchymod.mixins.json | 3 +- .../anarchymod/mixin/ServerListMixin.java | 29 +++++++++++++++++++ .../src/main/resources/anarchymod.mixins.json | 3 +- .../anarchymod/mixin/ServerListMixin.java | 29 +++++++++++++++++++ .../src/main/resources/anarchymod.mixins.json | 3 +- .../anarchymod/mixin/ServerListMixin.java | 29 +++++++++++++++++++ .../src/main/resources/anarchymod.mixins.json | 3 +- 8 files changed, 124 insertions(+), 4 deletions(-) create mode 100644 mc-1.21.10/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java create mode 100644 mc-1.21.11/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java create mode 100644 mc-1.21.8/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java create mode 100644 mc-1.21.9/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java diff --git a/mc-1.21.10/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java b/mc-1.21.10/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java new file mode 100644 index 0000000..0a24469 --- /dev/null +++ b/mc-1.21.10/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java @@ -0,0 +1,29 @@ +package me.itskronx11.anarchymod.mixin; + +import me.itskronx11.anarchymod.Domains; +import net.minecraft.client.multiplayer.ServerData; +import net.minecraft.client.multiplayer.ServerList; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.List; + +@Mixin(ServerList.class) +public class ServerListMixin { + + @Shadow + @Final + private List serverList; + + @Inject(method = "load", at = @At("TAIL")) + public void afterLoad(CallbackInfo ci) { + if (serverList.stream().noneMatch(data -> Domains.contains(data.ip))) { + serverList.addFirst(new ServerData("6b6t", "6b6t.org", ServerData.Type.OTHER)); + } + } + +} diff --git a/mc-1.21.10/src/main/resources/anarchymod.mixins.json b/mc-1.21.10/src/main/resources/anarchymod.mixins.json index 3806905..6f97bc0 100644 --- a/mc-1.21.10/src/main/resources/anarchymod.mixins.json +++ b/mc-1.21.10/src/main/resources/anarchymod.mixins.json @@ -4,7 +4,8 @@ "package": "me.itskronx11.anarchymod.mixin", "compatibilityLevel": "JAVA_21", "client": [ - "BlockedServersMixin" + "BlockedServersMixin", + "ServerListMixin" ], "injectors": { "defaultRequire": 1 diff --git a/mc-1.21.11/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java b/mc-1.21.11/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java new file mode 100644 index 0000000..0a24469 --- /dev/null +++ b/mc-1.21.11/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java @@ -0,0 +1,29 @@ +package me.itskronx11.anarchymod.mixin; + +import me.itskronx11.anarchymod.Domains; +import net.minecraft.client.multiplayer.ServerData; +import net.minecraft.client.multiplayer.ServerList; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.List; + +@Mixin(ServerList.class) +public class ServerListMixin { + + @Shadow + @Final + private List serverList; + + @Inject(method = "load", at = @At("TAIL")) + public void afterLoad(CallbackInfo ci) { + if (serverList.stream().noneMatch(data -> Domains.contains(data.ip))) { + serverList.addFirst(new ServerData("6b6t", "6b6t.org", ServerData.Type.OTHER)); + } + } + +} diff --git a/mc-1.21.11/src/main/resources/anarchymod.mixins.json b/mc-1.21.11/src/main/resources/anarchymod.mixins.json index 3806905..6f97bc0 100644 --- a/mc-1.21.11/src/main/resources/anarchymod.mixins.json +++ b/mc-1.21.11/src/main/resources/anarchymod.mixins.json @@ -4,7 +4,8 @@ "package": "me.itskronx11.anarchymod.mixin", "compatibilityLevel": "JAVA_21", "client": [ - "BlockedServersMixin" + "BlockedServersMixin", + "ServerListMixin" ], "injectors": { "defaultRequire": 1 diff --git a/mc-1.21.8/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java b/mc-1.21.8/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java new file mode 100644 index 0000000..0a24469 --- /dev/null +++ b/mc-1.21.8/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java @@ -0,0 +1,29 @@ +package me.itskronx11.anarchymod.mixin; + +import me.itskronx11.anarchymod.Domains; +import net.minecraft.client.multiplayer.ServerData; +import net.minecraft.client.multiplayer.ServerList; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.List; + +@Mixin(ServerList.class) +public class ServerListMixin { + + @Shadow + @Final + private List serverList; + + @Inject(method = "load", at = @At("TAIL")) + public void afterLoad(CallbackInfo ci) { + if (serverList.stream().noneMatch(data -> Domains.contains(data.ip))) { + serverList.addFirst(new ServerData("6b6t", "6b6t.org", ServerData.Type.OTHER)); + } + } + +} diff --git a/mc-1.21.8/src/main/resources/anarchymod.mixins.json b/mc-1.21.8/src/main/resources/anarchymod.mixins.json index 3806905..6f97bc0 100644 --- a/mc-1.21.8/src/main/resources/anarchymod.mixins.json +++ b/mc-1.21.8/src/main/resources/anarchymod.mixins.json @@ -4,7 +4,8 @@ "package": "me.itskronx11.anarchymod.mixin", "compatibilityLevel": "JAVA_21", "client": [ - "BlockedServersMixin" + "BlockedServersMixin", + "ServerListMixin" ], "injectors": { "defaultRequire": 1 diff --git a/mc-1.21.9/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java b/mc-1.21.9/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java new file mode 100644 index 0000000..0a24469 --- /dev/null +++ b/mc-1.21.9/src/main/java/me/itskronx11/anarchymod/mixin/ServerListMixin.java @@ -0,0 +1,29 @@ +package me.itskronx11.anarchymod.mixin; + +import me.itskronx11.anarchymod.Domains; +import net.minecraft.client.multiplayer.ServerData; +import net.minecraft.client.multiplayer.ServerList; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.List; + +@Mixin(ServerList.class) +public class ServerListMixin { + + @Shadow + @Final + private List serverList; + + @Inject(method = "load", at = @At("TAIL")) + public void afterLoad(CallbackInfo ci) { + if (serverList.stream().noneMatch(data -> Domains.contains(data.ip))) { + serverList.addFirst(new ServerData("6b6t", "6b6t.org", ServerData.Type.OTHER)); + } + } + +} diff --git a/mc-1.21.9/src/main/resources/anarchymod.mixins.json b/mc-1.21.9/src/main/resources/anarchymod.mixins.json index 3806905..6f97bc0 100644 --- a/mc-1.21.9/src/main/resources/anarchymod.mixins.json +++ b/mc-1.21.9/src/main/resources/anarchymod.mixins.json @@ -4,7 +4,8 @@ "package": "me.itskronx11.anarchymod.mixin", "compatibilityLevel": "JAVA_21", "client": [ - "BlockedServersMixin" + "BlockedServersMixin", + "ServerListMixin" ], "injectors": { "defaultRequire": 1