infer release target from minecraft mod container

This commit is contained in:
gnembon committed 2024-05-16 08:55:50 +02:00
1 parent dd1813c917
commit 7a1e152229
3 files changed
+11 -12

No files matched your search

+5 -1
View File
@@ -10,6 +10,7 @@ import carpet.utils.Translations;
import carpet.utils.CommandHelper;
import carpet.utils.Messenger;
import net.fabricmc.loader.api.FabricLoader;
import net.fabricmc.loader.api.SemanticVersion;
import net.minecraft.commands.CommandSourceStack;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceLocation;
@@ -48,7 +49,10 @@ import static carpet.api.settings.RuleCategory.CLIENT;
public class CarpetSettings
{
public static final String carpetVersion = FabricLoader.getInstance().getModContainer("carpet").orElseThrow().getMetadata().getVersion().toString();
public static final String releaseTarget = "1.20.5";
public static final int [] releaseTarget = {
((SemanticVersion)FabricLoader.getInstance().getModContainer("minecraft").orElseThrow().getMetadata().getVersion()).getVersionComponent(1),
((SemanticVersion)FabricLoader.getInstance().getModContainer("minecraft").orElseThrow().getMetadata().getVersion()).getVersionComponent(2)
};
public static final Logger LOG = LoggerFactory.getLogger("carpet");
public static final ThreadLocal<Boolean> skipGenerationChecks = ThreadLocal.withInitial(() -> false);
public static final ThreadLocal<Boolean> impendingFillSkipUpdates = ThreadLocal.withInitial(() -> false);
+1 -2
View File
@@ -183,8 +183,7 @@ public class Vanilla
return CarpetSettings.runPermissionLevel;
}
@Deprecated
public static String MinecraftServer_getReleaseTarget(MinecraftServer server)
public static int [] MinecraftServer_getReleaseTarget(MinecraftServer server)
{
return CarpetSettings.releaseTarget;
}
@@ -84,16 +84,12 @@ public class SystemInfo
put("game_view_distance", c -> new NumericValue(c.server().getPlayerList().getViewDistance()));
put("game_mod_name", c -> StringValue.of(c.server().getServerModName()));
put("game_version", c -> StringValue.of(c.server().getServerVersion()));
put("game_target", c -> StringValue.of(Vanilla.MinecraftServer_getReleaseTarget(c.server())));
put("game_target", c -> StringValue.of(String.format("1.%d.%d",
Vanilla.MinecraftServer_getReleaseTarget(c.server())[0],
Vanilla.MinecraftServer_getReleaseTarget(c.server())[1])));
put("game_protocol", c -> NumericValue.of(SharedConstants.getProtocolVersion()));
put("game_major_target", c -> {
String[] vers = Vanilla.MinecraftServer_getReleaseTarget(c.server()).split("\\.");
return NumericValue.of((vers.length > 1) ? Integer.parseInt(vers[1]) : 0);
});
put("game_minor_target", c -> {
String[] vers = Vanilla.MinecraftServer_getReleaseTarget(c.server()).split("\\.");
return NumericValue.of((vers.length > 2) ? Integer.parseInt(vers[2]) : 0);
});
put("game_major_target", c -> NumericValue.of(Vanilla.MinecraftServer_getReleaseTarget(c.server())[0]));
put("game_minor_target", c -> NumericValue.of(Vanilla.MinecraftServer_getReleaseTarget(c.server())[1]));
put("game_stable", c -> BooleanValue.of(SharedConstants.getCurrentVersion().isStable()));
put("game_data_version", c -> NumericValue.of(SharedConstants.getCurrentVersion().getDataVersion().getVersion()));
put("game_pack_version", c -> NumericValue.of(SharedConstants.getCurrentVersion().getPackVersion(PackType.SERVER_DATA)));