From 7a41e4ebce3b712011d6e1495b6c368cc1f4bebf Mon Sep 17 00:00:00 2001 From: miozune Date: Tue, 14 Feb 2023 15:00:45 +0900 Subject: Add material ID dumper (#1737) * Add material ID dumper * spotlessApply (#1738) Co-authored-by: GitHub GTNH Actions <> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- src/main/java/gregtech/nei/NEI_GT_Config.java | 2 ++ .../java/gregtech/nei/dumper/MaterialDumper.java | 38 ++++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 src/main/java/gregtech/nei/dumper/MaterialDumper.java (limited to 'src/main/java/gregtech/nei') diff --git a/src/main/java/gregtech/nei/NEI_GT_Config.java b/src/main/java/gregtech/nei/NEI_GT_Config.java index 0a27157358..5c530ed709 100644 --- a/src/main/java/gregtech/nei/NEI_GT_Config.java +++ b/src/main/java/gregtech/nei/NEI_GT_Config.java @@ -20,6 +20,7 @@ import gregtech.api.util.GT_Recipe; import gregtech.common.items.GT_MetaGenerated_Item_01; import gregtech.common.items.GT_MetaGenerated_Item_02; import gregtech.common.items.GT_MetaGenerated_Item_03; +import gregtech.nei.dumper.MaterialDumper; import gregtech.nei.dumper.MetaItemDumper; import gregtech.nei.dumper.MetaTileEntityDumper; @@ -69,6 +70,7 @@ public class NEI_GT_Config implements IConfigureNEI { API.addItemListEntry(ItemList.VOLUMETRIC_FLASK.get(1)); API.addOption(new MetaTileEntityDumper()); + API.addOption(new MaterialDumper()); API.addOption(new MetaItemDumper(GT_MetaGenerated_Item_01.INSTANCE, "metaitem01")); API.addOption(new MetaItemDumper(GT_MetaGenerated_Item_02.INSTANCE, "metaitem02")); API.addOption(new MetaItemDumper(GT_MetaGenerated_Item_03.INSTANCE, "metaitem03")); diff --git a/src/main/java/gregtech/nei/dumper/MaterialDumper.java b/src/main/java/gregtech/nei/dumper/MaterialDumper.java new file mode 100644 index 0000000000..60b32e11f1 --- /dev/null +++ b/src/main/java/gregtech/nei/dumper/MaterialDumper.java @@ -0,0 +1,38 @@ +package gregtech.nei.dumper; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.stream.Collectors; + +import gregtech.api.GregTech_API; +import gregtech.api.enums.Materials; + +public class MaterialDumper extends GregTechIDDumper { + + public MaterialDumper() { + super("material"); + } + + @Override + public String[] header() { + return new String[] { "id", "name", }; + } + + @Override + protected Iterable dump(Mode mode) { + List dump = new ArrayList<>(); + Map idMap = Arrays.stream(GregTech_API.sGeneratedMaterials).filter(Objects::nonNull) + .collect(Collectors.toMap(m -> m.mMetaItemSubID, m -> m)); + for (int i = 0; i < 1000; i++) { + if (mode == Mode.FREE && !idMap.containsKey(i)) { + dump.add(new String[] { String.valueOf(i), "", }); + } else if (mode == Mode.USED && idMap.containsKey(i)) { + dump.add(new String[] { String.valueOf(i), idMap.get(i).mName, }); + } + } + return dump; + } +} -- cgit