Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add more fluid solidifier molds #2665

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 57 additions & 0 deletions src/main/java/gregtech/common/items/MetaItem1.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import gregtech.api.items.metaitem.ElectricStats;
import gregtech.api.items.metaitem.FilteredFluidStats;
import gregtech.api.items.metaitem.FoodStats;
import gregtech.api.items.metaitem.MetaItem;
import gregtech.api.items.metaitem.MusicDiscStats;
import gregtech.api.items.metaitem.StandardMetaItem;
import gregtech.api.items.metaitem.stats.IItemComponent;
Expand Down Expand Up @@ -61,13 +62,17 @@
import gregtech.core.sound.GTSoundEvents;

import net.minecraft.client.resources.I18n;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Items;
import net.minecraft.init.MobEffects;
import net.minecraft.item.EnumDyeColor;
import net.minecraft.item.EnumRarity;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraft.util.ResourceLocation;

import org.jetbrains.annotations.NotNull;

import static gregtech.api.GTValues.M;
import static gregtech.api.util.DyeUtil.getOredictColorName;
import static gregtech.common.items.MetaItems.*;
Expand All @@ -78,6 +83,26 @@ public MetaItem1() {
super();
}

@Override
public void getSubItems(@NotNull CreativeTabs tab, @NotNull NonNullList<ItemStack> subItems) {
if (!isInCreativeTab(tab)) return;
for (MetaItem<?>.MetaValueItem item : metaItems.values()) {
if (!item.isInCreativeTab(tab)) continue;

int itemMetaData = item.getMetaValue();
if (itemMetaData >= 1004 && itemMetaData <= 1013) continue;

item.getSubItemHandler().getSubItems(item.getStackForm(), tab, subItems);

if (itemMetaData == 30) {
for (MetaItem<?>.MetaValueItem moldItem : SHAPE_MOLDS) {
if (moldItem.getMetaValue() < 1005) continue;
moldItem.getSubItemHandler().getSubItems(moldItem.getStackForm(), tab, subItems);
}
}
}
}

@Override
public void registerSubItems() {
// Credits: ID 0-10
Expand Down Expand Up @@ -131,6 +156,18 @@ public void registerSubItems() {
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[12] = SHAPE_MOLD_ROTOR = addItem(24, "shape.mold.rotor")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[13] = SHAPE_MOLD_RING = addItem(25, "shape.mold.ring")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[14] = SHAPE_MOLD_BOLT = addItem(26, "shape.mold.bolt")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[15] = SHAPE_MOLD_ROD = addItem(27, "shape.mold.rod")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[16] = SHAPE_MOLD_ROD_LONG = addItem(28, "shape.mold.rod_long")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[17] = SHAPE_MOLD_SCREW = addItem(29, "shape.mold.screw")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[18] = SHAPE_MOLD_ROUND = addItem(30, "shape.mold.round")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));

// Extruder Shapes: ID 31-59
SHAPE_EXTRUDERS[0] = SHAPE_EXTRUDER_PLATE = addItem(31, "shape.extruder.plate")
Expand Down Expand Up @@ -1143,5 +1180,25 @@ public void registerSubItems() {

MULTIBLOCK_BUILDER = addItem(1004, "tool.multiblock_builder").addComponents(new MultiblockBuilderBehavior())
.setMaxStackSize(1);

// Extra molds 1005-1013
SHAPE_MOLDS[19] = SHAPE_MOLD_TURBINE_BLADE = addItem(1005, "shape.mold.turbine_blade")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[20] = SHAPE_MOLD_PIPE_TINY = addItem(1006, "shape.mold.pipe.tiny")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[21] = SHAPE_MOLD_PIPE_SMALL = addItem(1007, "shape.mold.pipe.small")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[22] = SHAPE_MOLD_PIPE_NORMAL = addItem(1008, "shape.mold.pipe.normal")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[23] = SHAPE_MOLD_PIPE_LARGE = addItem(1009, "shape.mold.pipe.large")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[24] = SHAPE_MOLD_PIPE_HUGE = addItem(1010, "shape.mold.pipe.huge")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[25] = SHAPE_MOLD_BUN = addItem(1011, "shape.mold.bun")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[26] = SHAPE_MOLD_BREAD = addItem(1012, "shape.mold.bread")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
SHAPE_MOLDS[27] = SHAPE_MOLD_BAGUETTE = addItem(1013, "shape.mold.baguette")
.setMaterialInfo(new ItemMaterialInfo(new MaterialStack(Materials.Steel, M * 4)));
}
}
17 changes: 16 additions & 1 deletion src/main/java/gregtech/common/items/MetaItems.java
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ private MetaItems() {}

public static MetaItem<?>.MetaValueItem SHAPE_EMPTY;

public static final MetaItem<?>.MetaValueItem[] SHAPE_MOLDS = new MetaValueItem[13];
public static final MetaItem<?>.MetaValueItem[] SHAPE_MOLDS = new MetaValueItem[28];
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_PLATE;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_GEAR;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_CREDIT;
Expand All @@ -71,6 +71,21 @@ private MetaItems() {}
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_NAME;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_GEAR_SMALL;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_ROTOR;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_RING;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_BOLT;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_ROD;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_ROD_LONG;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_SCREW;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_ROUND;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_TURBINE_BLADE;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_PIPE_TINY;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_PIPE_SMALL;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_PIPE_NORMAL;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_PIPE_LARGE;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_PIPE_HUGE;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_BUN;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_BREAD;
public static MetaItem<?>.MetaValueItem SHAPE_MOLD_BAGUETTE;

public static final MetaItem<?>.MetaValueItem[] SHAPE_EXTRUDERS = new MetaValueItem[27];
public static MetaItem<?>.MetaValueItem SHAPE_EXTRUDER_PLATE;
Expand Down
164 changes: 139 additions & 25 deletions src/main/java/gregtech/loaders/recipe/CraftingRecipeLoader.java
Original file line number Diff line number Diff line change
Expand Up @@ -223,32 +223,146 @@ private static void loadCraftingRecipes() {
ModHandler.addShapedRecipe("shape_extruder_rotor", SHAPE_EXTRUDER_ROTOR.getStackForm(), " ", " S ", "x ",
'S', SHAPE_EMPTY.getStackForm());

ModHandler.addShapedRecipe("shape_mold_rotor", SHAPE_MOLD_ROTOR.getStackForm(), " h", " S ", " ", 'S',
SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_gear_small", SHAPE_MOLD_GEAR_SMALL.getStackForm(), " ", " ", "h S",
ModHandler.addShapedRecipe("shape_mold_rotor", SHAPE_MOLD_ROTOR.getStackForm(),
" h",
" S ",
" ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_gear_small", SHAPE_MOLD_GEAR_SMALL.getStackForm(),
" ",
" ",
"h S",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_name", SHAPE_MOLD_NAME.getStackForm(),
" S",
" ",
"h ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_anvil", SHAPE_MOLD_ANVIL.getStackForm(),
" S",
" ",
" h ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_cylinder", SHAPE_MOLD_CYLINDER.getStackForm(),
" S",
" ",
" h",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_nugget", SHAPE_MOLD_NUGGET.getStackForm(),
"S h",
" ",
" ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_block", SHAPE_MOLD_BLOCK.getStackForm(),
" ",
"hS ",
" ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_ball", SHAPE_MOLD_BALL.getStackForm(),
" ",
" S ",
"h ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_ingot", SHAPE_MOLD_INGOT.getStackForm(),
" ",
" S ",
" h ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_bottle", SHAPE_MOLD_BOTTLE.getStackForm(),
" ",
" S ",
" h",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_credit", SHAPE_MOLD_CREDIT.getStackForm(),
"h ",
" S ",
" ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_gear", SHAPE_MOLD_GEAR.getStackForm(),
" ",
" Sh",
" ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_plate", SHAPE_MOLD_PLATE.getStackForm(),
" h ",
" S ",
" ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_ring", SHAPE_MOLD_RING.getStackForm(),
" ",
" h ",
" S ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_bolt", SHAPE_MOLD_BOLT.getStackForm(),
"h ",
" ",
"S ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_rod", SHAPE_MOLD_ROD.getStackForm(),
" h ",
" ",
"S ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_rod_long", SHAPE_MOLD_ROD_LONG.getStackForm(),
" h",
" ",
"S ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_screw", SHAPE_MOLD_SCREW.getStackForm(),
" ",
"h ",
"S ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_round", SHAPE_MOLD_ROUND.getStackForm(),
" ",
" h ",
"S ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_turbine_blade", SHAPE_MOLD_TURBINE_BLADE.getStackForm(),
" ",
" h",
"S ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_pipe_tiny", SHAPE_MOLD_PIPE_TINY.getStackForm(),
" ",
" ",
"Sh ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_pipe_small", SHAPE_MOLD_PIPE_SMALL.getStackForm(),
" ",
" ",
"S h",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_pipe_normal", SHAPE_MOLD_PIPE_NORMAL.getStackForm(),
" ",
" ",
" Sh",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_pipe_large", SHAPE_MOLD_PIPE_LARGE.getStackForm(),
" ",
" ",
"hS ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_pipe_huge", SHAPE_MOLD_PIPE_HUGE.getStackForm(),
" ",
" h",
" S ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_bun", SHAPE_MOLD_BUN.getStackForm(),
" ",
"h ",
" S ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_bread", SHAPE_MOLD_BREAD.getStackForm(),
"h ",
" ",
" S ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_baguette", SHAPE_MOLD_BAGUETTE.getStackForm(),
" ",
" h",
" S ",
'S', SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_name", SHAPE_MOLD_NAME.getStackForm(), " S", " ", "h ", 'S',
SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_anvil", SHAPE_MOLD_ANVIL.getStackForm(), " S", " ", " h ", 'S',
SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_cylinder", SHAPE_MOLD_CYLINDER.getStackForm(), " S", " ", " h", 'S',
SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_nugget", SHAPE_MOLD_NUGGET.getStackForm(), "S h", " ", " ", 'S',
SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_block", SHAPE_MOLD_BLOCK.getStackForm(), " ", "hS ", " ", 'S',
SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_ball", SHAPE_MOLD_BALL.getStackForm(), " ", " S ", "h ", 'S',
SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_ingot", SHAPE_MOLD_INGOT.getStackForm(), " ", " S ", " h ", 'S',
SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_bottle", SHAPE_MOLD_BOTTLE.getStackForm(), " ", " S ", " h", 'S',
SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_credit", SHAPE_MOLD_CREDIT.getStackForm(), "h ", " S ", " ", 'S',
SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_gear", SHAPE_MOLD_GEAR.getStackForm(), " ", " Sh", " ", 'S',
SHAPE_EMPTY.getStackForm());
ModHandler.addShapedRecipe("shape_mold_plate", SHAPE_MOLD_PLATE.getStackForm(), " h ", " S ", " ", 'S',
SHAPE_EMPTY.getStackForm());

///////////////////////////////////////////////////
// Credits //
Expand Down
Loading