Skip to content

Commit

Permalink
[Port] Update to special/nsss (v2.5.3)
Browse files Browse the repository at this point in the history
  • Loading branch information
CDAGaming committed Jan 14, 2025
1 parent 8104b0f commit 38f7f23
Show file tree
Hide file tree
Showing 18 changed files with 119 additions and 193 deletions.
140 changes: 27 additions & 113 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import com.hypherionmc.modpublisher.plugin.ModPublisherGradleExtension
import xyz.wagyourtail.jvmdg.gradle.task.files.DowngradeFiles
import xyz.wagyourtail.replace_str.ProcessClasses
import xyz.wagyourtail.unimined.api.UniminedExtension
import xyz.wagyourtail.unimined.api.minecraft.patch.fabric.FabricLikePatcher
import xyz.wagyourtail.unimined.api.minecraft.task.RemapJarTask
import java.util.*

Expand Down Expand Up @@ -124,6 +125,9 @@ subprojects {
}

repositories {
flatDir {
dirs("$rootDir/libs")
}
mavenLocal()
mavenCentral()
// ModLoader Mavens
Expand Down Expand Up @@ -168,122 +172,32 @@ subprojects {

extensions.getByType<UniminedExtension>().minecraft(sourceSets.getByName("main"), true) {
side(if (isJarMod) "client" else "combined")
version(mcVersion)

mappings {
val mcMappings = "mc_mappings"()!!
when (mcMappingsType) {
"mcp" -> {
if (!isJarMod) {
searge()
}
mcp(if (isJarMod) "legacy" else "stable", mcMappings) {
if (!isJarMod) {
clearOutputs()
outputs("mcp", true) { listOf("intermediary") }
}
}
}

"forgeMCP" -> {
forgeBuiltinMCP("forge_version"()!!) {
clearContains()
clearOutputs()
contains({ _, t ->
!t.contains("MCP")
}) {
onlyExistingSrc()
outputs("searge", false) { listOf("official") }
}
contains({ _, t ->
t.contains("MCP")
}) {
outputs("mcp", true) { listOf("intermediary") }
sourceNamespace("searge")
}
}
officialMappingsFromJar {
clearContains()
clearOutputs()
outputs("official", false) { listOf() }
}
}

"retroMCP" -> {
retroMCP(mcMappings)
}
version("empty-$mcVersion")

"yarn" -> {
yarn(mcMappings)
}

"mojmap" -> {
mojmap {
skipIfNotIn("intermediary")
}
}

"parchment" -> {
mojmap {
skipIfNotIn("intermediary")
}
parchment(mcVersion, mcMappings)
}

else -> throw GradleException("Unknown or Unsupported Mappings version")
defaultRemapJar = false
val fabricData: FabricLikePatcher.() -> Unit = {
if (accessWidenerFile.exists()) {
accessWidener(accessWidenerFile)
}

// Only use Intermediaries on Versions that support it
val usingIntermediary = (isLegacy && protocol >= 39) || !isLegacy
if (usingIntermediary) {
if (isModern) {
intermediary()
} else {
legacyIntermediary()
}
}

// ability to add custom mappings
val target = if (!isModern) "mcp" else "mojmap"
stub.withMappings("searge", target) {
c("ModLoader", "net/minecraft/src/ModLoader", "net/minecraft/src/ModLoader")
c("BaseMod", "net/minecraft/src/BaseMod", "net/minecraft/src/BaseMod")
// Fix: Fixed an inconsistent mapping in 1.16 and 1.16.1 between MCP and Mojmap
if (!isLegacy && (protocol == 735 || protocol == 736)) {
c(
"dng",
listOf(
"net/minecraft/client/gui/widget/Widget",
"net/minecraft/client/gui/components/AbstractWidget"
)
) {
m("e", "()I", "func_238483_d_", "getHeightRealms")
}
}
loader("fabric_loader_version"()!!)
if (isJarMod) {
prodNamespace("official")
devMappings = null
}

if (isMCPJar) {
if (protocol <= 2) { // MC a1.1.2_01 and below
devNamespace("searge")
} else {
devFallbackNamespace("searge")
}
} else if (usingIntermediary) {
devFallbackNamespace("intermediary")
customIntermediaries = true
}
if (isModern) {
fabric(fabricData)
} else {
merged {
legacyFabric(fabricData)
jarMod {}
}
}

if (shouldDowngrade) {
val apiVersion = if (buildVersion.isJava7) JavaVersion.VERSION_1_8 else buildVersion
val downgradeClient = tasks.register("downgradeClient", DowngradeFiles::class.java) {
inputCollection = sourceSet.output.classesDirs + sourceSet.runtimeClasspath
classpath = project.files()
outputCollection.files
}

runs.config("client") {
classpath = downgradeClient.get().outputCollection + files(jvmdg.getDowngradedApi(apiVersion))
}
}
mappings {
devNamespace("official")
devFallbackNamespace("official")
}

minecraftRemapper.config {
Expand All @@ -306,7 +220,7 @@ subprojects {
"compileOnly"("com.github.spotbugs:spotbugs-annotations:4.8.6")

// Attach UniLib dependency
"modImplementation"(
"implementation"(
"com.gitlab.cdagaming.unilib:$libPrefix-${
libName.replaceFirstChar {
if (it.isLowerCase()) it.titlecase(
Expand Down Expand Up @@ -436,7 +350,7 @@ subprojects {
jvmdg.debugSkipStubs.add(JavaVersion.VERSION_1_8)
}

val resultJar = tasks.getByName<RemapJarTask>("remapJar").asJar
val resultJar = tasks.getByName<ShadowJar>("shadowJar")
val resultClassifier = resultJar.archiveClassifier.get()
resultJar.archiveClassifier.set("$resultClassifier-native")

Expand Down
19 changes: 3 additions & 16 deletions common/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import xyz.wagyourtail.unimined.api.minecraft.patch.fabric.FabricLikePatcher
import java.util.regex.Pattern

/**
Expand All @@ -23,21 +22,7 @@ val mcVersionLabel: String by extra
val fileFormat: String by extra

unimined.minecraft {
defaultRemapJar = false
if (!isJarMod) {
val fabricData: FabricLikePatcher.() -> Unit = {
if (accessWidenerFile.exists()) {
accessWidener(accessWidenerFile)
}
loader("fabric_loader_version"()!!)
customIntermediaries = true
}
if (isModern) {
fabric(fabricData)
} else {
legacyFabric(fabricData)
}
}
// N/A
}

val shadeOnly: Configuration by configurations.creating
Expand All @@ -48,6 +33,8 @@ configurations.implementation.get().extendsFrom(shade)
configurations.runtimeOnly.get().extendsFrom()

dependencies {
"jarMod"("local:nsss:${"forge_version"()}")

// Legacy Dependencies, based on Protocol Version
if (isLegacy) {
if (protocol <= 61) { // MC 1.5.2 and below
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,13 +40,13 @@
import com.gitlab.cdagaming.unilib.core.utils.ModUpdaterUtils;
import com.gitlab.cdagaming.unilib.utils.GameUtils;
import com.gitlab.cdagaming.unilib.utils.WorldUtils;
import com.mojang.minecraft.Minecraft;
import com.mojang.minecraft.entity.EntityPlayer;
import com.mojang.minecraft.level.World;
import com.mojang.minecraft.util.Session;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import io.github.cdagaming.unicore.utils.OSUtils;
import io.github.cdagaming.unicore.utils.ScheduleUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.src.EntityPlayer;
import net.minecraft.src.Session;
import net.minecraft.src.World;

/**
* The Primary Application Class and Utilities
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@
import com.gitlab.cdagaming.unilib.core.CoreUtils;
import com.gitlab.cdagaming.unilib.utils.gui.controls.ExtendedButtonControl;
import com.gitlab.cdagaming.unilib.utils.gui.widgets.ScrollableTextWidget;
import com.mojang.minecraft.gui.GuiScreen;
import io.github.cdagaming.unicore.utils.StringUtils;
import net.minecraft.src.GuiScreen;

public class MainGui extends ConfigurationGui<Config> {
private final Config INSTANCE, DEFAULTS;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@
import com.gitlab.cdagaming.craftpresence.core.config.element.ModuleData;
import com.gitlab.cdagaming.craftpresence.core.config.element.PresenceData;
import com.google.gson.JsonElement;
import com.mojang.minecraft.gui.GuiDownloadTerrain;
import com.mojang.minecraft.gui.GuiMultiplayer;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import io.github.cdagaming.unicore.impl.HashMapBuilder;
import io.github.cdagaming.unicore.utils.MathUtils;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,10 @@
import com.gitlab.cdagaming.craftpresence.core.config.Config;
import com.gitlab.cdagaming.craftpresence.core.config.element.ModuleData;
import com.gitlab.cdagaming.craftpresence.core.impl.ExtendedModule;
import com.mojang.minecraft.gui.GuiScreen;
import io.github.cdagaming.unicore.utils.FileUtils;
import io.github.cdagaming.unicore.utils.MappingUtils;
import io.github.cdagaming.unicore.utils.StringUtils;
import net.minecraft.src.GuiScreen;
import unilib.external.io.github.classgraph.ClassInfo;

import java.util.List;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,9 @@
import com.gitlab.cdagaming.craftpresence.core.config.element.ModuleData;
import com.gitlab.cdagaming.craftpresence.core.impl.ExtendedModule;
import com.gitlab.cdagaming.unilib.utils.WorldUtils;
import com.mojang.minecraft.entity.Entity;
import com.mojang.minecraft.entity.EntityList;
import io.github.cdagaming.unicore.utils.StringUtils;
import net.minecraft.src.Entity;
import net.minecraft.src.EntityList;

import java.util.List;
import java.util.Map;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,11 @@
import com.gitlab.cdagaming.craftpresence.core.impl.Module;
import com.gitlab.cdagaming.unilib.ModUtils;
import com.gitlab.cdagaming.unilib.utils.ItemUtils;
import com.mojang.minecraft.entity.item.Item;
import com.mojang.minecraft.entity.item.ItemStack;
import com.mojang.minecraft.level.tile.Block;
import com.mojang.minecraft.util.Session;
import io.github.cdagaming.unicore.utils.StringUtils;
import net.minecraft.src.Block;
import net.minecraft.src.Item;
import net.minecraft.src.ItemStack;

import java.util.List;
import java.util.Map;
Expand Down Expand Up @@ -365,7 +366,7 @@ public void updatePresence() {

@Override
public void getInternalData() {
for (Block block : Block.blocksList) {
for (Block block : Session.creativeInventory) {
if (!ItemUtils.isItemEmpty(block)) {
final ItemStack stack = ItemUtils.getStackFrom(block);
final String blockName = ItemUtils.getItemName(stack);
Expand All @@ -381,7 +382,7 @@ public void getInternalData() {
}
}

for (Item item : Item.itemsList) {
for (Item item : Session.creativeInventoryItems) {
if (!ItemUtils.isItemEmpty(item)) {
final ItemStack stack = ItemUtils.getStackFrom(item);
final String itemName = ItemUtils.getItemName(stack);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,11 @@
import com.gitlab.cdagaming.craftpresence.core.config.element.ModuleData;
import com.gitlab.cdagaming.craftpresence.core.impl.ExtendedModule;
import com.gitlab.cdagaming.unilib.utils.GameUtils;
import com.mojang.minecraft.gui.GuiContainer;
import com.mojang.minecraft.gui.GuiScreen;
import io.github.cdagaming.unicore.utils.FileUtils;
import io.github.cdagaming.unicore.utils.MappingUtils;
import io.github.cdagaming.unicore.utils.StringUtils;
import net.minecraft.src.GuiScreen;
import net.minecraft.src.GuiContainer;
import unilib.external.io.github.classgraph.ClassInfo;

import java.util.List;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,11 +34,11 @@
import com.gitlab.cdagaming.unilib.utils.gui.RenderUtils;
import com.gitlab.cdagaming.unilib.utils.gui.controls.ScrollableListControl;
import com.gitlab.cdagaming.unilib.utils.gui.integrations.ExtendedScreen;
import com.mojang.minecraft.Minecraft;
import com.mojang.minecraft.entity.item.ItemStack;
import io.github.cdagaming.unicore.impl.Pair;
import io.github.cdagaming.unicore.utils.MappingUtils;
import io.github.cdagaming.unicore.utils.StringUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.src.ItemStack;
import unilib.external.io.github.classgraph.ClassInfo;

import javax.annotation.Nonnull;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@

import com.gitlab.cdagaming.craftpresence.utils.gui.controls.DynamicScrollableList;
import com.gitlab.cdagaming.unilib.utils.gui.impl.SelectorGui;
import com.mojang.minecraft.gui.GuiScreen;
import io.github.cdagaming.unicore.utils.StringUtils;
import net.minecraft.src.GuiScreen;

import java.util.List;
import java.util.Set;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,14 @@
import com.gitlab.cdagaming.unilib.ModUtils;
import com.gitlab.cdagaming.unilib.utils.WorldUtils;
import com.gitlab.cdagaming.unilib.utils.gui.RenderUtils;
import com.mojang.minecraft.gui.GuiConnecting;
import com.mojang.minecraft.level.WorldClient;
import com.mojang.minecraft.networknew.NetClientHandler;
import com.mojang.minecraft.networknew.NetworkManager;
import io.github.cdagaming.unicore.impl.Pair;
import io.github.cdagaming.unicore.utils.MathUtils;
import io.github.cdagaming.unicore.utils.StringUtils;
import io.github.cdagaming.unicore.utils.TimeUtils;
import net.minecraft.src.*;

import java.net.Socket;
import java.util.List;
Expand Down Expand Up @@ -391,7 +394,7 @@ private void processServerData(final ServerNBTStorage newServerData, final NetCl
final int newCurrentPlayers = 1;

final boolean newLANStatus = false;
final boolean newSinglePlayerStatus = !newLANStatus && !CraftPresence.instance.isMultiplayerWorld();
final boolean newSinglePlayerStatus = !newLANStatus && !CraftPresence.instance.isServer();

// Setup Player Maximum (Hardcoded for LAN)
final int newMaxPlayers = newCurrentPlayers + 1;
Expand Down Expand Up @@ -609,7 +612,7 @@ public void initPresence() {
syncArgument("world.difficulty", () -> {
final String newDifficulty = false ?
ModUtils.RAW_TRANSLATOR.translate("selectWorld.gameMode.hardcore") :
Integer.toString(CraftPresence.world.difficultySetting);
Integer.toString(CraftPresence.world.difficulty);
return StringUtils.getOrDefault(newDifficulty);
});
syncArgument("world.weather.name", () -> {
Expand Down
Loading

0 comments on commit 38f7f23

Please sign in to comment.