Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ public static void debug(String message, Level level) {
}

public static ResourceLocation getRL(String resource) {
return new ResourceLocation(MOD_ID, resource);
return ResourceLocation.fromNamespaceAndPath(MOD_ID, resource);
}

public void commonSetup(FMLCommonSetupEvent event) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,36 +11,38 @@
import net.minecraft.resources.ResourceLocation;
import net.neoforged.api.distmarker.Dist;
import net.neoforged.bus.api.SubscribeEvent;
import net.neoforged.fml.common.EventBusSubscriber;
import net.neoforged.fml.common.Mod;
import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent;
import net.neoforged.neoforge.client.event.ModelEvent;
import net.neoforged.neoforge.client.event.RegisterKeyMappingsEvent;
import net.neoforged.neoforge.client.event.RegisterMenuScreensEvent;

@Mod.EventBusSubscriber(modid = AdvancedPeripherals.MOD_ID, value = Dist.CLIENT, bus = Mod.EventBusSubscriber.Bus.MOD)
@EventBusSubscriber(modid = AdvancedPeripherals.MOD_ID, value = Dist.CLIENT, bus = EventBusSubscriber.Bus.MOD)
public class ClientRegistry {

private static final String[] TURTLE_MODELS = new String[]{"turtle_chat_box_upgrade_left", "turtle_chat_box_upgrade_right", "turtle_environment_upgrade_left", "turtle_environment_upgrade_right", "turtle_player_upgrade_left", "turtle_player_upgrade_right", "turtle_geoscanner_upgrade_left", "turtle_geoscanner_upgrade_right"};

@SubscribeEvent
public static void registerModels(ModelEvent.RegisterAdditional event) {
for (String model : TURTLE_MODELS) {
event.register(new ModelResourceLocation(new ResourceLocation(AdvancedPeripherals.MOD_ID, model), "inventory"));
event.register(new ModelResourceLocation(ResourceLocation.fromNamespaceAndPath(AdvancedPeripherals.MOD_ID, model), "inventory"));
}
}

@SubscribeEvent
public static void onClientSetup(FMLClientSetupEvent event) {
MenuScreens.register(ContainerTypes.INVENTORY_MANAGER_CONTAINER.get(), InventoryManagerScreen::new);
public static void menuRegister(RegisterMenuScreensEvent event) {
event.register(ContainerTypes.INVENTORY_MANAGER_CONTAINER.get(), InventoryManagerScreen::new);
}

@SubscribeEvent
public static void onUpgradeModeller(RegisterTurtleModellersEvent event) {
event.register(CCRegistration.CHUNKY_TURTLE.get(), TurtleUpgradeModeller.flatItem());
event.register(CCRegistration.COMPASS_TURTLE.get(), TurtleUpgradeModeller.flatItem());
event.register(CCRegistration.CHAT_BOX_TURTLE.get(), TurtleUpgradeModeller.sided(new ModelResourceLocation(AdvancedPeripherals.getRL("turtle_chat_box_upgrade_left"), "inventory"), new ModelResourceLocation(AdvancedPeripherals.getRL("turtle_chat_box_upgrade_right"), "inventory")));
event.register(CCRegistration.ENVIRONMENT_TURTLE.get(), TurtleUpgradeModeller.sided(new ModelResourceLocation(AdvancedPeripherals.getRL("turtle_environment_upgrade_left"), "inventory"), new ModelResourceLocation(AdvancedPeripherals.getRL("turtle_environment_upgrade_right"), "inventory")));
event.register(CCRegistration.GEO_SCANNER_TURTLE.get(), TurtleUpgradeModeller.sided(new ModelResourceLocation(AdvancedPeripherals.getRL("turtle_geoscanner_upgrade_left"), "inventory"), new ModelResourceLocation(AdvancedPeripherals.getRL("turtle_geoscanner_upgrade_right"), "inventory")));
event.register(CCRegistration.PLAYER_DETECTOR_TURTLE.get(), TurtleUpgradeModeller.sided(new ModelResourceLocation(AdvancedPeripherals.getRL("turtle_player_upgrade_left"), "inventory"), new ModelResourceLocation(AdvancedPeripherals.getRL("turtle_player_upgrade_right"), "inventory")));
event.register(CCRegistration.CHAT_BOX_TURTLE.get(), TurtleUpgradeModeller.sided(AdvancedPeripherals.getRL("turtle_chat_box_upgrade_left"), AdvancedPeripherals.getRL("turtle_chat_box_upgrade_right")));
event.register(CCRegistration.ENVIRONMENT_TURTLE.get(), TurtleUpgradeModeller.sided(AdvancedPeripherals.getRL("turtle_environment_upgrade_left"), AdvancedPeripherals.getRL("turtle_environment_upgrade_right")));
event.register(CCRegistration.GEO_SCANNER_TURTLE.get(), TurtleUpgradeModeller.sided(AdvancedPeripherals.getRL("turtle_geoscanner_upgrade_left"), AdvancedPeripherals.getRL("turtle_geoscanner_upgrade_right")));
event.register(CCRegistration.PLAYER_DETECTOR_TURTLE.get(), TurtleUpgradeModeller.sided(AdvancedPeripherals.getRL("turtle_player_upgrade_left"), AdvancedPeripherals.getRL("turtle_player_upgrade_right")));
event.register(CCRegistration.OP_END_TURTLE.get(), new MetaTurtleUpgradeModeller<>());
event.register(CCRegistration.OP_HUSBANDRY_TURTLE.get(), new MetaTurtleUpgradeModeller<>());
event.register(CCRegistration.OP_WEAK_TURTLE.get(), new MetaTurtleUpgradeModeller<>());
Expand Down
Original file line number Diff line number Diff line change
@@ -1,61 +1,44 @@
package de.srendi.advancedperipherals.common.configuration;

import com.electronwill.nightconfig.core.file.CommentedFileConfig;
import net.neoforged.fml.ModContainer;
import net.neoforged.fml.ModLoadingContext;
import net.neoforged.fml.config.ConfigFileTypeHandler;
import net.neoforged.fml.config.ModConfig;
import net.neoforged.fml.config.IConfigSpec;
import net.neoforged.fml.loading.FMLPaths;

import java.nio.file.Path;
import java.util.function.Function;
import java.util.HashMap;
import java.util.Map;

public class APConfig extends ModConfig {
public class APConfig {

public static final ConfigFileHandler CONFIG_FILE_HANDLER = new ConfigFileHandler();
private static final Map<IConfigSpec, IAPConfig> KNOWN_CONFIGS = new HashMap<>();

public static final GeneralConfig GENERAL_CONFIG = new GeneralConfig();
public static final PeripheralsConfig PERIPHERALS_CONFIG = new PeripheralsConfig();
public static final MetaphysicsConfig METAPHYSICS_CONFIG = new MetaphysicsConfig();
public static final WorldConfig WORLD_CONFIG = new WorldConfig();

public APConfig(IAPConfig config, ModContainer container) {
super(config.getType(), config.getConfigSpec(), container, "Advancedperipherals/" + config.getFileName() + ".toml");
public APConfig() {
}

public static void register(ModLoadingContext context) {
//Creates the config folder
FMLPaths.getOrCreateGameRelativePath(FMLPaths.CONFIGDIR.get().resolve("Advancedperipherals"));

ModContainer modContainer = context.getActiveContainer();
modContainer.addConfig(new APConfig(GENERAL_CONFIG, modContainer));
modContainer.addConfig(new APConfig(PERIPHERALS_CONFIG, modContainer));
modContainer.addConfig(new APConfig(METAPHYSICS_CONFIG, modContainer));
modContainer.addConfig(new APConfig(WORLD_CONFIG, modContainer));
APConfigHelper.registerConfig(KNOWN_CONFIGS, modContainer, GENERAL_CONFIG);
APConfigHelper.registerConfig(KNOWN_CONFIGS, modContainer, PERIPHERALS_CONFIG);
APConfigHelper.registerConfig(KNOWN_CONFIGS, modContainer, METAPHYSICS_CONFIG);
APConfigHelper.registerConfig(KNOWN_CONFIGS, modContainer, WORLD_CONFIG);
}

/*@Override
public ConfigFileTypeHandler getHandler() {
return CONFIG_FILE_HANDLER;
}*/

public static class ConfigFileHandler extends ConfigFileTypeHandler {

public static Path getPath(Path path) {
if (path.endsWith("serverconfig"))
return FMLPaths.CONFIGDIR.get();

return path;
}

@Override
public Function<ModConfig, CommentedFileConfig> reader(Path configBasePath) {
return super.reader(getPath(configBasePath));
public static class APConfigHelper {
public static String getAPConfigFilePath(IAPConfig config) {
return "Advancedperipherals/" + config.getFileName() + ".toml";
}

@Override
public void unload(ModConfig config) {
super.unload(config);
public static void registerConfig(Map<IConfigSpec, IAPConfig> knownConfigs, ModContainer modContainer, IAPConfig config) {
modContainer.registerConfig(config.getType(), config.getConfigSpec(), APConfigHelper.getAPConfigFilePath(config));
knownConfigs.put(config.getConfigSpec(), config);
}
}
}
Loading
Loading