ModMenuIntegration.java 946 B

12345678910111213141516171819202122232425
  1. package me.lortseam.completeconfig.gui;
  2. import com.terraformersmc.modmenu.api.ConfigScreenFactory;
  3. import com.terraformersmc.modmenu.api.ModMenuApi;
  4. import me.lortseam.completeconfig.data.Config;
  5. import me.lortseam.completeconfig.data.Registry;
  6. import java.util.HashMap;
  7. import java.util.Map;
  8. import java.util.Optional;
  9. public final class ModMenuIntegration implements ModMenuApi {
  10. @Override
  11. public Map<String, ConfigScreenFactory<?>> getProvidedConfigScreenFactories() {
  12. Map<String, ConfigScreenFactory<?>> factories = new HashMap<>();
  13. for (Map.Entry<String, Config> entry : Registry.getMainConfigs().entrySet()) {
  14. Optional<ConfigScreenBuilder> builder = ConfigScreenBuilder.getMain(entry.getKey());
  15. if (!builder.isPresent()) continue;
  16. factories.put(entry.getKey(), parentScreen -> builder.get().build(parentScreen, entry.getValue()));
  17. }
  18. return factories;
  19. }
  20. }