From f608d55f93148c16dd8deb9b65d0574d324d8907 Mon Sep 17 00:00:00 2001 From: Boblet Date: Mon, 12 Sep 2022 16:59:29 +0200 Subject: [PATCH] small material test --- .../inventory/material/MaterialShapes.java | 20 +++++++++++ .../java/com/hbm/inventory/material/Mats.java | 5 +++ .../hbm/inventory/material/NTMMaterial.java | 33 +++++++++++++++++++ 3 files changed, 58 insertions(+) create mode 100644 src/main/java/com/hbm/inventory/material/MaterialShapes.java create mode 100644 src/main/java/com/hbm/inventory/material/Mats.java create mode 100644 src/main/java/com/hbm/inventory/material/NTMMaterial.java diff --git a/src/main/java/com/hbm/inventory/material/MaterialShapes.java b/src/main/java/com/hbm/inventory/material/MaterialShapes.java new file mode 100644 index 000000000..d22cc8c70 --- /dev/null +++ b/src/main/java/com/hbm/inventory/material/MaterialShapes.java @@ -0,0 +1,20 @@ +package com.hbm.inventory.material; + +public enum MaterialShapes { + + QUANTUM(1), // 1/72 of an ingot, allows the ingot to be divisible through 2, 4, 6, 8, 9, 12, 24 and 36 + NUGGET(8, "nugget"), + WIRE(9), + INGOT(NUGGET.quantity * 9, "ingot"), + DUST(INGOT.quantity, "dust"), + PLATE(INGOT.quantity, "plate"), + BLOCK(INGOT.quantity * 9, "block"); + + int quantity; + String[] prefixes; + + private MaterialShapes(int quantity, String... prefixes) { + this.quantity = quantity; + this.prefixes = prefixes; + } +} diff --git a/src/main/java/com/hbm/inventory/material/Mats.java b/src/main/java/com/hbm/inventory/material/Mats.java new file mode 100644 index 000000000..065c7da19 --- /dev/null +++ b/src/main/java/com/hbm/inventory/material/Mats.java @@ -0,0 +1,5 @@ +package com.hbm.inventory.material; + +public class Mats { + +} diff --git a/src/main/java/com/hbm/inventory/material/NTMMaterial.java b/src/main/java/com/hbm/inventory/material/NTMMaterial.java new file mode 100644 index 000000000..38bf7fec2 --- /dev/null +++ b/src/main/java/com/hbm/inventory/material/NTMMaterial.java @@ -0,0 +1,33 @@ +package com.hbm.inventory.material; + +/** + * Encapsulates most materials that are currently listed as DictFrames, even vanilla ones. + * @author hbm + * + */ +public class NTMMaterial { + + public String[] names; + public MaterialShapes[] shapes = new MaterialShapes[0]; + public boolean omitItemGen = false; + public boolean smeltable = false; + + public NTMMaterial(String... names) { + this.names = names; + } + + public NTMMaterial setShapes(MaterialShapes... shapes) { + this.shapes = shapes; + return this; + } + + public NTMMaterial omit() { + this.omitItemGen = true; + return this; + } + + public NTMMaterial smeltable() { + this.smeltable = true; + return this; + } +}