Port to 1.21 & Add NeoForge support

This commit is contained in:
Martin Prokoph
2024-06-17 14:55:41 +02:00
parent 6be616e91e
commit ecc50e77e2
102 changed files with 568 additions and 425 deletions

View File

@@ -0,0 +1,38 @@
package eu.midnightdust.neoforge.betterbeds;
import net.minecraft.resource.*;
import net.minecraft.text.Text;
import net.minecraft.util.Identifier;
import net.neoforged.api.distmarker.Dist;
import net.neoforged.bus.api.SubscribeEvent;
import net.neoforged.fml.ModList;
import net.neoforged.fml.common.EventBusSubscriber;
import net.neoforged.neoforge.event.AddPackFindersEvent;
import net.neoforged.neoforgespi.locating.IModFile;
import java.util.Optional;
import static eu.midnightdust.neoforge.betterbeds.BetterBedsNeoForge.MOD_ID;
@EventBusSubscriber(modid = MOD_ID, bus = EventBusSubscriber.Bus.MOD, value = Dist.CLIENT)
public class BetterBedsClientEvents {
@SubscribeEvent
public static void addPackFinders(AddPackFindersEvent event) {
if (event.getPackType() == ResourceType.CLIENT_RESOURCES) {
registerResourcePack(event, Identifier.of(MOD_ID,"fancyconnectedbeds"), false);
}
}
private static void registerResourcePack(AddPackFindersEvent event, Identifier id, boolean alwaysEnabled) {
event.addRepositorySource(((profileAdder) -> {
IModFile file = ModList.get().getModFileById(id.getNamespace()).getFile();
try {
ResourcePackProfile.PackFactory pack = new DirectoryResourcePack.DirectoryBackedFactory(file.findResource("resourcepacks/" + id.getPath()));
ResourcePackInfo info = new ResourcePackInfo(id.toString(), Text.of(id.getNamespace()+"/"+id.getPath()), ResourcePackSource.BUILTIN, Optional.empty());
ResourcePackProfile packProfile = ResourcePackProfile.create(info, pack, ResourceType.CLIENT_RESOURCES, new ResourcePackPosition(alwaysEnabled, ResourcePackProfile.InsertionPosition.TOP, false));
if (packProfile != null) {
profileAdder.accept(packProfile);
}
} catch (NullPointerException e) {e.fillInStackTrace();}
}));
}
}

View File

@@ -0,0 +1,10 @@
package eu.midnightdust.neoforge.betterbeds;
import net.neoforged.fml.common.Mod;
@Mod(BetterBedsNeoForge.MOD_ID)
public class BetterBedsNeoForge {
public static final String MOD_ID = "betterbeds";
public BetterBedsNeoForge() {}
}

View File

@@ -0,0 +1,31 @@
modLoader = "javafml"
loaderVersion = "[2,)"
#issueTrackerURL = ""
license = "MIT License"
[[mods]]
modId = "betterbeds"
version = "${version}"
displayName = "Better Beds"
logoFile = "betterbeds.png"
authors = "TeamMidnightDust, Motschen"
description = '''
Changes the renderer of the bed to use block models instead of a block entity renderer!
'''
[[mixins]]
config = "betterbeds.mixins.json"
[[dependencies.betterbeds]]
modId = "neoforge"
mandatory = true
versionRange = "[21.0,)"
ordering = "NONE"
side = "BOTH"
[[dependencies.betterbeds]]
modId = "minecraft"
mandatory = true
versionRange = "[1.21,)"
ordering = "NONE"
side = "BOTH"

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB