From d167d208be5dbbecbd98fb62feaffa9f8f593dd7 Mon Sep 17 00:00:00 2001 From: JuiceyBeans <75553966+JuiceyBeans@users.noreply.github.com> Date: Wed, 24 Dec 2025 18:58:58 +0400 Subject: [PATCH 1/2] Fire resistant flag + impl --- .../gtceu/api/data/chemical/material/info/MaterialFlags.java | 5 +++++ .../java/com/gregtechceu/gtceu/api/item/tool/GTToolItem.java | 4 +++- .../com/gregtechceu/gtceu/common/data/GTMaterialItems.java | 5 ++++- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/gregtechceu/gtceu/api/data/chemical/material/info/MaterialFlags.java b/src/main/java/com/gregtechceu/gtceu/api/data/chemical/material/info/MaterialFlags.java index 5d67ccb5c79..21e10271785 100644 --- a/src/main/java/com/gregtechceu/gtceu/api/data/chemical/material/info/MaterialFlags.java +++ b/src/main/java/com/gregtechceu/gtceu/api/data/chemical/material/info/MaterialFlags.java @@ -85,6 +85,11 @@ public String toString() { */ public static final MaterialFlag PHOSPHORESCENT = new MaterialFlag.Builder("phosphorescent").build(); + /** + * Add to material if it is fire resistant + */ + public static final MaterialFlag FIRE_RESISTANT = new MaterialFlag.Builder("fire_resistant").build(); + ////////////////// // DUST // ////////////////// diff --git a/src/main/java/com/gregtechceu/gtceu/api/item/tool/GTToolItem.java b/src/main/java/com/gregtechceu/gtceu/api/item/tool/GTToolItem.java index 6098176e030..7c852723333 100644 --- a/src/main/java/com/gregtechceu/gtceu/api/item/tool/GTToolItem.java +++ b/src/main/java/com/gregtechceu/gtceu/api/item/tool/GTToolItem.java @@ -2,6 +2,7 @@ import com.gregtechceu.gtceu.GTCEu; import com.gregtechceu.gtceu.api.data.chemical.material.Material; +import com.gregtechceu.gtceu.api.data.chemical.material.info.MaterialFlags; import com.gregtechceu.gtceu.api.item.IGTTool; import com.gregtechceu.gtceu.api.sound.SoundEntry; import com.gregtechceu.gtceu.client.renderer.item.ToolItemRenderer; @@ -53,7 +54,8 @@ public class GTToolItem extends DiggerItem implements IGTTool { public GTToolItem(GTToolType toolType, MaterialToolTier tier, Material material, IGTToolDefinition definition, Properties properties) { - super(0, 0, tier, toolType.harvestTags.isEmpty() ? null : toolType.harvestTags.get(0), properties); + super(0, 0, tier, toolType.harvestTags.isEmpty() ? null : toolType.harvestTags.get(0), + material.hasFlag(MaterialFlags.FIRE_RESISTANT) ? properties.fireResistant() : properties); this.toolType = toolType; this.material = material; this.electricTier = toolType.electricTier; diff --git a/src/main/java/com/gregtechceu/gtceu/common/data/GTMaterialItems.java b/src/main/java/com/gregtechceu/gtceu/common/data/GTMaterialItems.java index eae601945b0..64f9ceb1bd7 100644 --- a/src/main/java/com/gregtechceu/gtceu/common/data/GTMaterialItems.java +++ b/src/main/java/com/gregtechceu/gtceu/common/data/GTMaterialItems.java @@ -2,6 +2,7 @@ import com.gregtechceu.gtceu.api.GTCEuAPI; import com.gregtechceu.gtceu.api.data.chemical.material.Material; +import com.gregtechceu.gtceu.api.data.chemical.material.info.MaterialFlags; import com.gregtechceu.gtceu.api.data.chemical.material.properties.PropertyKey; import com.gregtechceu.gtceu.api.data.chemical.material.registry.MaterialRegistry; import com.gregtechceu.gtceu.api.data.chemical.material.stack.MaterialEntry; @@ -86,7 +87,9 @@ public static void generateMaterialItems() { private static void generateMaterialItem(TagPrefix tagPrefix, Material material, GTRegistrate registrate) { MATERIAL_ITEMS_BUILDER.put(tagPrefix, material, registrate .item(tagPrefix.idPattern().formatted(material.getName()), - properties -> tagPrefix.itemConstructor().create(properties, tagPrefix, material)) + properties -> tagPrefix.itemConstructor() + .create(material.hasFlag(MaterialFlags.FIRE_RESISTANT) ? properties.fireResistant() : + properties, tagPrefix, material)) .setData(ProviderType.LANG, NonNullBiConsumer.noop()) .transform(GTItems.unificationItem(tagPrefix, material)) .properties(p -> p.stacksTo(tagPrefix.maxStackSize())) From c9910e884a28ee7fc91da7575ab7278a54ae6140 Mon Sep 17 00:00:00 2001 From: JuiceyBeans <75553966+JuiceyBeans@users.noreply.github.com> Date: Wed, 24 Dec 2025 18:59:05 +0400 Subject: [PATCH 2/2] Set netherite as fire resistant --- .../gtceu/common/data/materials/UnknownCompositionMaterials.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/com/gregtechceu/gtceu/common/data/materials/UnknownCompositionMaterials.java b/src/main/java/com/gregtechceu/gtceu/common/data/materials/UnknownCompositionMaterials.java index d75cfddb82e..2c0550e18f3 100644 --- a/src/main/java/com/gregtechceu/gtceu/common/data/materials/UnknownCompositionMaterials.java +++ b/src/main/java/com/gregtechceu/gtceu/common/data/materials/UnknownCompositionMaterials.java @@ -392,6 +392,7 @@ public static void register() { Netherite = new Material.Builder(GTCEu.id("netherite")) .ingot().color(0x4b4042).secondaryColor(0x474447) + .flags(FIRE_RESISTANT) .toolStats(ToolProperty.Builder.of(10.0F, 4.0F, 2032, 4) .enchantability(21).build()) .buildAndRegister();