Skip to content

Commit

Permalink
Post merge fixes
Browse files Browse the repository at this point in the history
- Move ForgeVanillinConfig -> NeoForgeVanillinConfig
- Fix references to old forge config builder
- Move mixin declaration to mods.toml
- Remove jij'd mixinextras
  • Loading branch information
Jozufozu committed Jan 24, 2025
1 parent 1b0e327 commit e36dbe1
Show file tree
Hide file tree
Showing 6 changed files with 36 additions and 25 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,6 @@ public class Vanillin {
public static final Logger CONFIG_LOGGER = LoggerFactory.getLogger(ID + "/config");

public static ResourceLocation rl(String path) {
return new ResourceLocation(ID, path);
return ResourceLocation.fromNamespaceAndPath(ID, path);
}
}
2 changes: 1 addition & 1 deletion common/src/vanillin/resources/vanillin.mixins.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"required" : true,
"minVersion" : "0.8",
"package" : "dev.engine_room.vanillin.mixin",
"compatibilityLevel" : "JAVA_17",
"compatibilityLevel" : "JAVA_21",
"refmap" : "vanillin.refmap.json",
"client" : [
"text.BakedGlyphMixin",
Expand Down
5 changes: 0 additions & 5 deletions vanillinNeoForge/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,6 @@ loom {
add(main, "vanillin.refmap.json")
}

forge {
mixinConfig("vanillin.mixins.json")
}

runs {
configureEach {
property("forge.logging.markers", "")
Expand All @@ -70,7 +66,6 @@ dependencies {
compileOnly(project(path = common, configuration = "vanillinResources"))

compileOnly(annotationProcessor("io.github.llamalad7:mixinextras-common:0.4.1")!!)
implementation(include("io.github.llamalad7:mixinextras-forge:0.4.1")!!)

// JiJ flywheel proper
include(project(path = platform, configuration = "flywheelRemap"))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,24 +13,24 @@
import dev.engine_room.vanillin.config.VisualConfigValue;
import dev.engine_room.vanillin.config.VisualOverride;
import dev.engine_room.vanillin.config.VisualOverrideValue;
import net.minecraftforge.common.ForgeConfigSpec;
import net.minecraftforge.fml.ModList;
import net.minecraftforge.fml.ModLoadingContext;
import net.minecraftforge.fml.config.ModConfig;
import net.minecraftforge.forgespi.language.IModInfo;
import net.neoforged.fml.ModList;
import net.neoforged.fml.ModLoadingContext;
import net.neoforged.fml.config.ModConfig;
import net.neoforged.neoforge.common.ModConfigSpec;
import net.neoforged.neoforgespi.language.IModInfo;

public class ForgeVanillinConfig {
public static final ForgeVanillinConfig INSTANCE = new ForgeVanillinConfig(VanillaVisuals.CONFIGURATOR);
public class NeoForgeVanillinConfig {
public static final NeoForgeVanillinConfig INSTANCE = new NeoForgeVanillinConfig(VanillaVisuals.CONFIGURATOR);

private final Configurator configurator;
private final ForgeConfigSpec clientSpec;
private final ModConfigSpec clientSpec;

private final ConfigSection blockEntities;
private final ConfigSection entities;

private ForgeVanillinConfig(Configurator configurator) {
private NeoForgeVanillinConfig(Configurator configurator) {
this.configurator = configurator;
var builder = new ForgeConfigSpec.Builder();
var builder = new ModConfigSpec.Builder();

// Seems like we need to register all field ahead of time so this constructor must run after VanillaVisuals#init
var blockEntities = setup(builder, configurator.blockEntities.values(), "block_entities");
Expand All @@ -49,7 +49,7 @@ public void apply() {
}

public void registerSpecs(ModLoadingContext context) {
context.registerConfig(ModConfig.Type.CLIENT, clientSpec);
context.getActiveContainer().registerConfig(ModConfig.Type.CLIENT, clientSpec);
}

private static ModOverrides modOverrides() {
Expand Down Expand Up @@ -111,8 +111,8 @@ private static void readSection(List<VisualOverride> dst, String modId, Config c
}
}

private static Map<String, ForgeConfigSpec.EnumValue<VisualConfigValue>> setup(ForgeConfigSpec.Builder builder, Collection<? extends Configurator.ConfiguredVisual> configuredVisuals, String push) {
var out = new HashMap<String, ForgeConfigSpec.EnumValue<VisualConfigValue>>();
private static Map<String, ModConfigSpec.EnumValue<VisualConfigValue>> setup(ModConfigSpec.Builder builder, Collection<? extends Configurator.ConfiguredVisual> configuredVisuals, String push) {
var out = new HashMap<String, ModConfigSpec.EnumValue<VisualConfigValue>>();
builder.push(push);

for (var configured : configuredVisuals) {
Expand All @@ -126,7 +126,7 @@ private static Map<String, ForgeConfigSpec.EnumValue<VisualConfigValue>> setup(F
return out;
}

private record ConfigSection(Map<String, ForgeConfigSpec.EnumValue<VisualConfigValue>> config, Map<String, List<VisualOverride>> overrides) {
private record ConfigSection(Map<String, ModConfigSpec.EnumValue<VisualConfigValue>> config, Map<String, List<VisualOverride>> overrides) {
void apply(Collection<? extends Configurator.ConfiguredVisual> values) {
for (var configured : values) {
var key = configured.configKey();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,28 @@
package dev.engine_room.vanillin;

import dev.engine_room.vanillin.visuals.VanillaVisuals;
import net.neoforged.api.distmarker.Dist;
import net.neoforged.bus.api.IEventBus;
import net.neoforged.fml.ModLoadingContext;
import net.neoforged.fml.common.Mod;
import net.neoforged.neoforge.common.NeoForge;
import net.neoforged.fml.event.config.ModConfigEvent;

@Mod(value = Vanillin.ID, dist = Dist.CLIENT)
public class VanillinNeoForgeClient {
public VanillinNeoForgeClient(IEventBus modEventBus) {
IEventBus neoEventBus = NeoForge.EVENT_BUS;
public VanillinNeoForgeClient() {
var modLoadingContext = ModLoadingContext.get();

IEventBus modEventBus = modLoadingContext.getActiveContainer()
.getEventBus();

VanillaVisuals.init();
NeoForgeVanillinConfig.INSTANCE.registerSpecs(modLoadingContext);

modEventBus.<ModConfigEvent>addListener(event -> {
if (event.getConfig()
.getModId()
.equals(Vanillin.ID)) {
NeoForgeVanillinConfig.INSTANCE.apply();
}
});
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ authors = "Jozufozu, PepperCode1"
displayURL = "${mod_homepage}"
displayTest = "IGNORE_ALL_VERSION"

[[mixins]]
config = "vanillin.mixins.json"

[[dependencies.${ vanillin_id }]]
modId = "minecraft"
type = "required"
Expand Down

0 comments on commit e36dbe1

Please sign in to comment.