fix: Don't crash with newer fabric versions anymore
This commit is contained in:
@@ -440,6 +440,7 @@ tasks.processResources {
|
|||||||
"version" to project.version.toString(),
|
"version" to project.version.toString(),
|
||||||
"minecraft_version" to libs.versions.minecraft.get(),
|
"minecraft_version" to libs.versions.minecraft.get(),
|
||||||
"fabric_kotlin_version" to libs.versions.fabric.kotlin.get(),
|
"fabric_kotlin_version" to libs.versions.fabric.kotlin.get(),
|
||||||
|
"fabric_api_version" to libs.versions.fabric.api.get(),
|
||||||
"rei_version" to libs.versions.rei.get()
|
"rei_version" to libs.versions.rei.get()
|
||||||
)
|
)
|
||||||
replacements.forEach { (key, value) -> inputs.property(key, value) }
|
replacements.forEach { (key, value) -> inputs.property(key, value) }
|
||||||
|
|||||||
@@ -6,20 +6,20 @@
|
|||||||
minecraft = "1.21.4"
|
minecraft = "1.21.4"
|
||||||
|
|
||||||
# Update from https://kotlinlang.org/
|
# Update from https://kotlinlang.org/
|
||||||
kotlin = "2.1.0"
|
kotlin = "2.1.10"
|
||||||
# Update from https://github.com/google/ksp/releases
|
# Update from https://github.com/google/ksp/releases
|
||||||
kotlin_ksp = "2.1.0-1.0.29"
|
kotlin_ksp = "2.1.10-1.0.30"
|
||||||
|
|
||||||
# Update from https://linkie.shedaniel.me/dependencies?loader=fabric
|
# Update from https://linkie.shedaniel.me/dependencies?loader=fabric
|
||||||
fabric_loader = "0.16.9"
|
fabric_loader = "0.16.10"
|
||||||
fabric_api = "0.114.0+1.21.4"
|
fabric_api = "0.117.0+1.21.4"
|
||||||
yarn = "1.21.4+build.4"
|
yarn = "1.21.4+build.8"
|
||||||
modmenu = "13.0.0-beta.1"
|
modmenu = "13.0.2"
|
||||||
architectury = "15.0.1"
|
architectury = "15.0.1"
|
||||||
rei = "18.0.796"
|
rei = "18.0.796"
|
||||||
|
|
||||||
# Update from https://maven.fabricmc.net/net/fabricmc/fabric-language-kotlin/
|
# Update from https://maven.fabricmc.net/net/fabricmc/fabric-language-kotlin/
|
||||||
fabric_kotlin = "1.13.0+kotlin.2.1.0"
|
fabric_kotlin = "1.13.1+kotlin.2.1.10"
|
||||||
|
|
||||||
# Update from https://maven.architectury.dev/dev/architectury/loom/dev.architectury.loom.gradle.plugin/
|
# Update from https://maven.architectury.dev/dev/architectury/loom/dev.architectury.loom.gradle.plugin/
|
||||||
loom = "1.7.414" # TODO: port back to architectury (and) 1.9.424
|
loom = "1.7.414" # TODO: port back to architectury (and) 1.9.424
|
||||||
|
|||||||
@@ -1,28 +1,34 @@
|
|||||||
|
|
||||||
package moe.nea.firmament.mixins;
|
package moe.nea.firmament.mixins;
|
||||||
|
|
||||||
|
import com.llamalad7.mixinextras.sugar.Local;
|
||||||
import moe.nea.firmament.repo.RepoModResourcePack;
|
import moe.nea.firmament.repo.RepoModResourcePack;
|
||||||
import net.fabricmc.fabric.api.resource.ModResourcePack;
|
import net.fabricmc.fabric.api.resource.ModResourcePack;
|
||||||
|
import net.fabricmc.fabric.impl.resource.loader.ModResourcePackSorter;
|
||||||
import net.fabricmc.fabric.impl.resource.loader.ModResourcePackUtil;
|
import net.fabricmc.fabric.impl.resource.loader.ModResourcePackUtil;
|
||||||
|
import net.fabricmc.loader.api.FabricLoader;
|
||||||
import net.minecraft.resource.ResourceType;
|
import net.minecraft.resource.ResourceType;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
import org.spongepowered.asm.mixin.injection.At;
|
import org.spongepowered.asm.mixin.injection.At;
|
||||||
import org.spongepowered.asm.mixin.injection.Inject;
|
import org.spongepowered.asm.mixin.injection.Inject;
|
||||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||||
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@Mixin(ModResourcePackUtil.class)
|
@Mixin(ModResourcePackUtil.class)
|
||||||
public class AppendRepoAsResourcePack {
|
public class AppendRepoAsResourcePack {
|
||||||
@Inject(method = "appendModResourcePacks", at = @At("TAIL"))
|
@Inject(
|
||||||
|
method = "getModResourcePacks",
|
||||||
|
at = @At(value = "INVOKE", target = "Lnet/fabricmc/fabric/impl/resource/loader/ModResourcePackSorter;getPacks()Ljava/util/List;"),
|
||||||
|
require = 0
|
||||||
|
)
|
||||||
private static void onAppendModResourcePack(
|
private static void onAppendModResourcePack(
|
||||||
List<ModResourcePack> packs,
|
FabricLoader fabricLoader, ResourceType type, @Nullable String subPath, CallbackInfoReturnable<List<ModResourcePack>> cir,
|
||||||
ResourceType type,
|
@Local ModResourcePackSorter sorter
|
||||||
@Nullable String subPath,
|
|
||||||
CallbackInfo ci
|
|
||||||
) {
|
) {
|
||||||
RepoModResourcePack.Companion.append(packs);
|
RepoModResourcePack.Companion.append(sorter);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import java.nio.file.Files
|
|||||||
import java.nio.file.Path
|
import java.nio.file.Path
|
||||||
import java.util.*
|
import java.util.*
|
||||||
import net.fabricmc.fabric.api.resource.ModResourcePack
|
import net.fabricmc.fabric.api.resource.ModResourcePack
|
||||||
|
import net.fabricmc.fabric.impl.resource.loader.ModResourcePackSorter
|
||||||
import net.fabricmc.loader.api.FabricLoader
|
import net.fabricmc.loader.api.FabricLoader
|
||||||
import net.fabricmc.loader.api.metadata.ModMetadata
|
import net.fabricmc.loader.api.metadata.ModMetadata
|
||||||
import kotlin.io.path.exists
|
import kotlin.io.path.exists
|
||||||
@@ -28,9 +29,9 @@ import moe.nea.firmament.Firmament
|
|||||||
|
|
||||||
class RepoModResourcePack(val basePath: Path) : ModResourcePack {
|
class RepoModResourcePack(val basePath: Path) : ModResourcePack {
|
||||||
companion object {
|
companion object {
|
||||||
fun append(packs: MutableList<in ModResourcePack>) {
|
fun append(packs: ModResourcePackSorter) {
|
||||||
Firmament.logger.info("Registering mod resource pack")
|
Firmament.logger.info("Registering mod resource pack")
|
||||||
packs.add(RepoModResourcePack(RepoDownloadManager.repoSavedLocation))
|
packs.addPack(RepoModResourcePack(RepoDownloadManager.repoSavedLocation))
|
||||||
}
|
}
|
||||||
|
|
||||||
fun createResourceDirectly(identifier: Identifier): Optional<Resource> {
|
fun createResourceDirectly(identifier: Identifier): Optional<Resource> {
|
||||||
|
|||||||
@@ -48,7 +48,7 @@
|
|||||||
"firmament.mixins.json"
|
"firmament.mixins.json"
|
||||||
],
|
],
|
||||||
"depends": {
|
"depends": {
|
||||||
"fabric": "*",
|
"fabric": ">=${fabric_api_version}",
|
||||||
"fabric-language-kotlin": ">=${fabric_kotlin_version}",
|
"fabric-language-kotlin": ">=${fabric_kotlin_version}",
|
||||||
"minecraft": ">=${minecraft_version}"
|
"minecraft": ">=${minecraft_version}"
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user