aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/gregtech/nei/NEI_GT_Config.java2
-rw-r--r--src/main/java/gregtech/nei/dumper/MaterialDumper.java38
-rw-r--r--src/main/resources/assets/gregtech/lang/en_US.lang2
3 files changed, 42 insertions, 0 deletions
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<String[]> dump(Mode mode) {
+ List<String[]> dump = new ArrayList<>();
+ Map<Integer, Materials> 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;
+ }
+}
diff --git a/src/main/resources/assets/gregtech/lang/en_US.lang b/src/main/resources/assets/gregtech/lang/en_US.lang
index f26224c028..2c467d575d 100644
--- a/src/main/resources/assets/gregtech/lang/en_US.lang
+++ b/src/main/resources/assets/gregtech/lang/en_US.lang
@@ -307,6 +307,8 @@ GT5U.interface.coverTabs.east=East
nei.options.tools.dump.gt5u=GT5u
nei.options.tools.dump.gt5u.metatileentity=MetaTileEntity
nei.options.tools.dump.gt5u.metatileentitys=MetaTileEntities
+nei.options.tools.dump.gt5u.material=Material
+nei.options.tools.dump.gt5u.materials=Materials
nei.options.tools.dump.gt5u.warn_env=You're outside of the pack. Some IDs present in the full pack might be missing in this dump.
nei.options.tools.dump.gt5u.mode.0=Free
nei.options.tools.dump.gt5u.mode.1=Used