Skip to content
Merged
Show file tree
Hide file tree
Changes from 6 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
5 changes: 4 additions & 1 deletion src/main/java/io/github/pylonmc/pylon/PylonBlocks.java
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ public static void initialize() {
RebarBlock.register(PylonKeys.PORTABLE_FLUID_TANK_TIN, Material.GREEN_STAINED_GLASS, PortableFluidTank.class);
RebarBlock.register(PylonKeys.PORTABLE_FLUID_TANK_IRON, Material.LIGHT_GRAY_STAINED_GLASS, PortableFluidTank.class);
RebarBlock.register(PylonKeys.PORTABLE_FLUID_TANK_BRONZE, Material.ORANGE_STAINED_GLASS, PortableFluidTank.class);
RebarBlock.register(PylonKeys.PORTABLE_FLUID_TANK_OBSIDIAN, Material.BLACK_STAINED_GLASS, PortableFluidTank.class);
RebarBlock.register(PylonKeys.PORTABLE_FLUID_TANK_IGNEOUS_COMPOSITE, Material.BLACK_STAINED_GLASS, PortableFluidTank.class);
RebarBlock.register(PylonKeys.PORTABLE_FLUID_TANK_STEEL, Material.GRAY_STAINED_GLASS, PortableFluidTank.class);
RebarBlock.register(PylonKeys.PORTABLE_FLUID_TANK_PALLADIUM, Material.BLUE_STAINED_GLASS, PortableFluidTank.class);
Expand All @@ -64,6 +65,7 @@ public static void initialize() {
RebarBlock.register(PylonKeys.FLUID_TANK_CASING_TIN, Material.GREEN_STAINED_GLASS, FluidTankCasing.class);
RebarBlock.register(PylonKeys.FLUID_TANK_CASING_IRON, Material.LIGHT_GRAY_STAINED_GLASS, FluidTankCasing.class);
RebarBlock.register(PylonKeys.FLUID_TANK_CASING_BRONZE, Material.ORANGE_STAINED_GLASS, FluidTankCasing.class);
RebarBlock.register(PylonKeys.FLUID_TANK_CASING_OBSIDIAN, Material.BLACK_STAINED_GLASS, FluidTankCasing.class);
RebarBlock.register(PylonKeys.FLUID_TANK_CASING_IGNEOUS_COMPOSITE, Material.BLACK_STAINED_GLASS, FluidTankCasing.class);
RebarBlock.register(PylonKeys.FLUID_TANK_CASING_STEEL, Material.GRAY_STAINED_GLASS, FluidTankCasing.class);
RebarBlock.register(PylonKeys.FLUID_TANK_CASING_PALLADIUM, Material.BLUE_STAINED_GLASS, FluidTankCasing.class);
Expand Down Expand Up @@ -97,7 +99,6 @@ public static void initialize() {
RebarBlock.register(PylonKeys.SMELTERY_CASTER, Material.BRICKS, SmelteryCaster.class);
RebarBlock.register(PylonKeys.SMELTERY_BURNER, Material.FURNACE, SmelteryBurner.class);
RebarBlock.register(PylonKeys.DIESEL_SMELTERY_HEATER, Material.FURNACE, DieselSmelteryHeater.class);
RebarBlock.register(PylonKeys.PIT_KILN, Material.DECORATED_POT, PitKiln.class);
RebarBlock.register(PylonKeys.FLUID_STRAINER, Material.COPPER_GRATE, FluidStrainer.class);
RebarBlock.register(PylonKeys.EXPLOSIVE_TARGET, Material.TARGET, ExplosiveTarget.class);
RebarBlock.register(PylonKeys.EXPLOSIVE_TARGET_FIERY, Material.TARGET, ExplosiveTarget.class);
Expand Down Expand Up @@ -182,6 +183,8 @@ public static void initialize() {
RebarBlock.register(PylonKeys.CREATIVE_ITEM_VOIDER, Material.STRUCTURE_VOID, CreativeItemVoider.class);
RebarBlock.register(PylonKeys.COLLIMATOR, Material.OBSIDIAN, Collimator.class);
RebarBlock.register(PylonKeys.COLLIMATOR_PILLAR, Material.DEEPSLATE_TILE_WALL, CollimatorPillar.class);
RebarBlock.register(PylonKeys.CRUDE_ALLOY_FURNACE, Material.BLAST_FURNACE, CrudeAlloyFurnace.class);
RebarBlock.register(PylonKeys.KILN, Material.BLAST_FURNACE, Kiln.class);
RebarBlock.register(PylonKeys.WOODEN_SILO, Material.BROWN_TERRACOTTA, Silo.class);
RebarBlock.register(PylonKeys.COPPER_SILO, Material.TERRACOTTA, Silo.class);
RebarBlock.register(PylonKeys.TIN_SILO, Material.GREEN_TERRACOTTA, Silo.class);
Expand Down
7 changes: 0 additions & 7 deletions src/main/java/io/github/pylonmc/pylon/PylonHelpPages.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ public class PylonHelpPages {
public static final SimpleStaticGuidePage HELP = new SimpleStaticGuidePage(pylonKey("help"));

public static final SimpleStaticGuidePage PROGRESSION = new SimpleStaticGuidePage(pylonKey("help_progression"));
public static final SimpleStaticGuidePage PIT_KILN = new SimpleStaticGuidePage(pylonKey("help_pit_kiln"));
public static final SimpleStaticGuidePage FLUID_HANDLING = new SimpleStaticGuidePage(pylonKey("help_fluid_handling"));
public static final SimpleStaticGuidePage HYDRAULICS = new SimpleStaticGuidePage(pylonKey("help_hydraulics"));
public static final SimpleStaticGuidePage BLOOMERY = new SimpleStaticGuidePage(pylonKey("help_bloomery"));
Expand All @@ -29,7 +28,6 @@ public static void initialise() {

PROGRESSION.addButton(Item.simple(ItemStackBuilder.guide(Material.IRON_PICKAXE, Pylon.getInstance(), "help.progression.manual_core")));
PROGRESSION.addButton(Item.simple(ItemStackBuilder.guide(Material.CLOCK, Pylon.getInstance(), "help.loupe"))); // recycle loupe desc
PROGRESSION.addButton(Item.simple(ItemStackBuilder.guide(Material.BRICKS, Pylon.getInstance(), "help.progression.pit_kiln")));
PROGRESSION.addButton(Item.simple(ItemStackBuilder.guide(Material.BRICK, Pylon.getInstance(), "help.progression.bronze_age")));
PROGRESSION.addButton(Item.simple(ItemStackBuilder.guide(Material.WATER_BUCKET, Pylon.getInstance(), "help.progression.hydraulic_machines")));
PROGRESSION.addButton(Item.simple(ItemStackBuilder.guide(Material.MINECART, Pylon.getInstance(), "help.progression.cargo_machines")));
Expand All @@ -40,11 +38,6 @@ public static void initialise() {
PROGRESSION.addButton(Item.simple(ItemStackBuilder.guide(Material.ELYTRA, Pylon.getInstance(), "help.progression.flight_ring")));
HELP.addPage(Material.BOOKSHELF, PROGRESSION);

PIT_KILN.addButton(Item.simple(ItemStackBuilder.guide(Material.DECORATED_POT, Pylon.getInstance(), "help.pit_kiln.kiln")));
PIT_KILN.addButton(Item.simple(ItemStackBuilder.guide(Material.DECORATED_POT, Pylon.getInstance(), "help.pit_kiln.construction")));
PIT_KILN.addButton(Item.simple(ItemStackBuilder.guide(Material.DECORATED_POT, Pylon.getInstance(), "help.pit_kiln.crafting")));
HELP.addButton(new PageButton(ItemStackBuilder.of(Material.DECORATED_POT).addCustomModelDataString(PylonKeys.PIT_KILN.asString()), PIT_KILN));

HELP.addButton(new PageButton(ItemStackBuilder.of(Material.BROWN_TERRACOTTA).addCustomModelDataString(PylonKeys.FLUID_PIPE_WOOD.asString()), FLUID_HANDLING));

HELP.addButton(new PageButton(ItemStackBuilder.of(Material.WAXED_COPPER_BULB).addCustomModelDataString(PylonKeys.HYDRAULIC_CORE_DRILL.asString()), HYDRAULICS));
Expand Down
58 changes: 51 additions & 7 deletions src/main/java/io/github/pylonmc/pylon/PylonItems.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@
import io.github.pylonmc.pylon.content.machines.hydraulics.*;
import io.github.pylonmc.pylon.content.machines.simple.*;
import io.github.pylonmc.pylon.content.machines.smelting.DieselSmelteryHeater;
import io.github.pylonmc.pylon.content.machines.smelting.PitKiln;
import io.github.pylonmc.pylon.content.machines.storage.Silo;
import io.github.pylonmc.pylon.content.resources.CharcoalBlock;
import io.github.pylonmc.pylon.content.resources.IronBloom;
Expand All @@ -36,7 +35,6 @@
import io.github.pylonmc.pylon.recipes.HammerRecipe;
import io.github.pylonmc.pylon.recipes.MoldingRecipe;
import io.github.pylonmc.pylon.recipes.PipeBendingRecipe;
import io.github.pylonmc.pylon.recipes.PitKilnRecipe;
import io.github.pylonmc.pylon.recipes.ShimmerAltarRecipe;
import io.github.pylonmc.pylon.recipes.StrainingRecipe;
import io.github.pylonmc.pylon.recipes.TableSawRecipe;
Expand Down Expand Up @@ -489,6 +487,13 @@ private PylonItems() {
PylonPages.MISCELLANEOUS.addItem(FINE_SEDIMENT);
}

public static final ItemStack SLAG = ItemStackBuilder.rebar(Material.FLINT, PylonKeys.SLAG)
.build();
static {
RebarItem.register(RebarItem.class, SLAG);
PylonPages.MISCELLANEOUS.addItem(SLAG);
}

public static final ItemStack QUARTZ_DUST = ItemStackBuilder.rebar(Material.CLAY_BALL, PylonKeys.QUARTZ_DUST)
.set(DataComponentTypes.ITEM_MODEL, Material.SUGAR.getKey())
.build();
Expand Down Expand Up @@ -2018,6 +2023,13 @@ private PylonItems() {

//<editor-fold desc="Machines - Simple Machines" defaultstate=collapsed>

public static final ItemStack CRUDE_ALLOY_FURNACE = ItemStackBuilder.rebar(Material.BLAST_FURNACE, PylonKeys.CRUDE_ALLOY_FURNACE)
.build();
static {
RebarItem.register(RebarItem.class, CRUDE_ALLOY_FURNACE, PylonKeys.CRUDE_ALLOY_FURNACE);
PylonPages.SIMPLE_MACHINES.addItem(CRUDE_ALLOY_FURNACE);
}

public static final ItemStack GRINDSTONE = ItemStackBuilder.rebar(Material.SMOOTH_STONE_SLAB, PylonKeys.GRINDSTONE)
.build();
static {
Expand Down Expand Up @@ -2219,13 +2231,12 @@ private PylonItems() {
//</editor-fold>

//<editor-fold desc="Machines - Smelting" defaultstate=collapsed>
public static final ItemStack PIT_KILN = ItemStackBuilder.rebar(Material.DECORATED_POT, PylonKeys.PIT_KILN)

public static final ItemStack KILN = ItemStackBuilder.rebar(Material.BLAST_FURNACE, PylonKeys.KILN)
.build();
static {
RebarItem.register(PitKiln.Item.class, PIT_KILN, PylonKeys.PIT_KILN);
PylonPages.SMELTING.addItem(PIT_KILN);
RebarGuide.getOrCreateInfoPage(PylonKeys.PIT_KILN)
.addButton(new MachineRecipesButton(PIT_KILN, PitKilnRecipe.RECIPE_TYPE));
RebarItem.register(RebarItem.class, KILN, PylonKeys.KILN);
PylonPages.SMELTING.addItem(KILN);
}

public static final ItemStack BLOOMERY = ItemStackBuilder.rebar(Material.MAGMA_BLOCK, PylonKeys.BLOOMERY)
Expand Down Expand Up @@ -2353,6 +2364,17 @@ private PylonItems() {
PylonPages.FLUID_PIPES_AND_TANKS.addItem(FLUID_PIPE_BRONZE);
}

public static final ItemStack FLUID_PIPE_OBSIDIAN = ItemStackBuilder.rebar(Material.CLAY_BALL, PylonKeys.FLUID_PIPE_OBSIDIAN)
.set(
DataComponentTypes.ITEM_MODEL,
Settings.get(PylonKeys.FLUID_PIPE_OBSIDIAN).getOrThrow("material", ConfigAdapter.MATERIAL).key()
)
.build();
static {
RebarItem.register(FluidPipe.class, FLUID_PIPE_OBSIDIAN);
PylonPages.FLUID_PIPES_AND_TANKS.addItem(FLUID_PIPE_OBSIDIAN);
}

public static final ItemStack FLUID_PIPE_IGNEOUS_COMPOSITE = ItemStackBuilder.rebar(Material.CLAY_BALL, PylonKeys.FLUID_PIPE_IGNEOUS_COMPOSITE)
.set(
DataComponentTypes.ITEM_MODEL,
Expand Down Expand Up @@ -2453,6 +2475,20 @@ private PylonItems() {
PylonPages.FLUID_PIPES_AND_TANKS.addItem(PORTABLE_FLUID_TANK_BRONZE);
}

public static final ItemStack PORTABLE_FLUID_TANK_OBSIDIAN
= ItemStackBuilder.rebar(Material.BLACK_STAINED_GLASS, PylonKeys.PORTABLE_FLUID_TANK_OBSIDIAN)
.editPdc(pdc -> pdc.set(PortableFluidTank.Item.FLUID_AMOUNT_KEY, RebarSerializers.DOUBLE, 0.0))
.addCustomModelDataString("pylon:fluid:empty")
.build();
static {
RebarItem.register(
PortableFluidTank.Item.class,
PORTABLE_FLUID_TANK_OBSIDIAN,
PylonKeys.PORTABLE_FLUID_TANK_OBSIDIAN
);
PylonPages.FLUID_PIPES_AND_TANKS.addItem(PORTABLE_FLUID_TANK_OBSIDIAN);
}

public static final ItemStack PORTABLE_FLUID_TANK_IGNEOUS_COMPOSITE
= ItemStackBuilder.rebar(Material.BLACK_STAINED_GLASS, PylonKeys.PORTABLE_FLUID_TANK_IGNEOUS_COMPOSITE)
.editPdc(pdc -> pdc.set(PortableFluidTank.Item.FLUID_AMOUNT_KEY, RebarSerializers.DOUBLE, 0.0))
Expand Down Expand Up @@ -2538,6 +2574,14 @@ private PylonItems() {
PylonPages.FLUID_PIPES_AND_TANKS.addItem(FLUID_TANK_CASING_BRONZE);
}

public static final ItemStack FLUID_TANK_CASING_OBSIDIAN
= ItemStackBuilder.rebar(Material.BLACK_STAINED_GLASS, PylonKeys.FLUID_TANK_CASING_OBSIDIAN)
.build();
static {
RebarItem.register(FluidTankCasing.Item.class, FLUID_TANK_CASING_OBSIDIAN, PylonKeys.FLUID_TANK_CASING_OBSIDIAN);
PylonPages.FLUID_PIPES_AND_TANKS.addItem(FLUID_TANK_CASING_OBSIDIAN);
}

public static final ItemStack FLUID_TANK_CASING_IGNEOUS_COMPOSITE
= ItemStackBuilder.rebar(Material.BLACK_STAINED_GLASS, PylonKeys.FLUID_TANK_CASING_IGNEOUS_COMPOSITE)
.build();
Expand Down
9 changes: 6 additions & 3 deletions src/main/java/io/github/pylonmc/pylon/PylonKeys.java
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,6 @@ public class PylonKeys {
public static final NamespacedKey STONE_HAMMER = pylonKey("stone_hammer");
public static final NamespacedKey IRON_HAMMER = pylonKey("iron_hammer");
public static final NamespacedKey DIAMOND_HAMMER = pylonKey("diamond_hammer");
public static final NamespacedKey NETHERITE_HAMMER = pylonKey("netherite_hammer");

public static final NamespacedKey WATERING_CAN = pylonKey("watering_can");
public static final NamespacedKey SPRINKLER = pylonKey("sprinkler");
Expand Down Expand Up @@ -155,6 +154,8 @@ public class PylonKeys {

public static final NamespacedKey GRINDSTONE = pylonKey("grindstone");
public static final NamespacedKey GRINDSTONE_HANDLE = pylonKey("grindstone_handle");
public static final NamespacedKey CRUDE_ALLOY_FURNACE = pylonKey("crude_alloy_furnace");
public static final NamespacedKey KILN = pylonKey("kiln");

public static final NamespacedKey MIXING_POT = pylonKey("mixing_pot");
public static final NamespacedKey CRUCIBLE = pylonKey("crucible");
Expand All @@ -166,6 +167,7 @@ public class PylonKeys {
public static final NamespacedKey FLUID_PIPE_TIN = pylonKey("fluid_pipe_tin");
public static final NamespacedKey FLUID_PIPE_BRONZE = pylonKey("fluid_pipe_bronze");
public static final NamespacedKey FLUID_PIPE_IRON = pylonKey("fluid_pipe_iron");
public static final NamespacedKey FLUID_PIPE_OBSIDIAN = pylonKey("fluid_pipe_obsidian");
public static final NamespacedKey FLUID_PIPE_IGNEOUS_COMPOSITE = pylonKey("fluid_pipe_igneous_composite");
public static final NamespacedKey FLUID_PIPE_STEEL = pylonKey("fluid_pipe_steel");
public static final NamespacedKey FLUID_PIPE_CREATIVE = pylonKey("fluid_pipe_creative");
Expand All @@ -175,6 +177,7 @@ public class PylonKeys {
public static final NamespacedKey PORTABLE_FLUID_TANK_TIN = pylonKey("portable_fluid_tank_tin");
public static final NamespacedKey PORTABLE_FLUID_TANK_IRON = pylonKey("portable_fluid_tank_iron");
public static final NamespacedKey PORTABLE_FLUID_TANK_BRONZE = pylonKey("portable_fluid_tank_bronze");
public static final NamespacedKey PORTABLE_FLUID_TANK_OBSIDIAN = pylonKey("portable_fluid_tank_obsidian");
public static final NamespacedKey PORTABLE_FLUID_TANK_IGNEOUS_COMPOSITE = pylonKey("portable_fluid_tank_igneous_composite");
public static final NamespacedKey PORTABLE_FLUID_TANK_STEEL = pylonKey("portable_fluid_tank_steel");

Expand All @@ -184,6 +187,7 @@ public class PylonKeys {
public static final NamespacedKey FLUID_TANK_CASING_TIN = pylonKey("fluid_tank_casing_tin");
public static final NamespacedKey FLUID_TANK_CASING_IRON = pylonKey("fluid_tank_casing_iron");
public static final NamespacedKey FLUID_TANK_CASING_BRONZE = pylonKey("fluid_tank_casing_bronze");
public static final NamespacedKey FLUID_TANK_CASING_OBSIDIAN = pylonKey("fluid_tank_casing_obsidian");
public static final NamespacedKey FLUID_TANK_CASING_IGNEOUS_COMPOSITE = pylonKey("fluid_tank_casing_igneous_composite");
public static final NamespacedKey FLUID_TANK_CASING_STEEL = pylonKey("fluid_tank_casing_steel");

Expand Down Expand Up @@ -243,8 +247,6 @@ public class PylonKeys {
public static final NamespacedKey SMELTERY_CASTER = pylonKey("smeltery_caster");
public static final NamespacedKey SMELTERY_BURNER = pylonKey("smeltery_burner");

public static final NamespacedKey PIT_KILN = pylonKey("pit_kiln");

public static final NamespacedKey EXPLOSIVE_TARGET = pylonKey("explosive_target");
public static final NamespacedKey EXPLOSIVE_TARGET_FIERY = pylonKey("explosive_target_fiery");
public static final NamespacedKey EXPLOSIVE_TARGET_SUPER = pylonKey("explosive_target_super");
Expand Down Expand Up @@ -466,4 +468,5 @@ public class PylonKeys {
public static final NamespacedKey PALLADIUM_SILO = pylonKey("palladium_silo");

public static final NamespacedKey FINE_SEDIMENT = pylonKey("fine_sediment");
public static final NamespacedKey SLAG = pylonKey("slag");
}
19 changes: 10 additions & 9 deletions src/main/java/io/github/pylonmc/pylon/PylonRecipes.java
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,12 @@ public static void initialize() {
PipeBendingRecipe.RECIPE_TYPE.register();
PressRecipe.RECIPE_TYPE.register();
SmelteryRecipe.RECIPE_TYPE.register();
PitKilnRecipe.RECIPE_TYPE.register();
KilnRecipe.RECIPE_TYPE.register();
StrainingRecipe.RECIPE_TYPE.register();
TableSawRecipe.RECIPE_TYPE.register();
SiloConverterRecipe.RECIPE_TYPE.register();
HydraulicPurifier.RECIPE_TYPE.register();
CrudeAlloyFurnaceRecipe.RECIPE_TYPE.register();

//hardcoded
initCollimator();
Expand All @@ -71,8 +72,8 @@ private static void initCollimator() {
)
.addIngredient('#', GuiItems.backgroundBlack())
.addIngredient('i', new FluidButton(input.amountMillibuckets(), PylonFluids.OBSCYRA))
.addIngredient('x', ItemButton.from(PylonItems.COLLIMATOR))
.addIngredient('o', ItemButton.from(PylonItems.COHESIVE_UNIT))
.addIngredient('x', ItemButton.of(PylonItems.COLLIMATOR))
.addIngredient('o', ItemButton.of(PylonItems.COHESIVE_UNIT))
.build()
).register();
}
Expand Down Expand Up @@ -110,11 +111,11 @@ private static void initPalladiumCondenser() {
"# # # # # # # # #"
)
.addIngredient('#', GuiItems.backgroundBlack())
.addIngredient('x', ItemButton.from(PylonItems.PALLADIUM_CONDENSER))
.addIngredient('x', ItemButton.of(PylonItems.PALLADIUM_CONDENSER))
.addIngredient('H', new FluidButton((double) dieselUse, PylonFluids.BIODIESEL))
.addIngredient('d', new FluidButton((double) hydraulicUse, PylonFluids.HYDRAULIC_FLUID))
.addIngredient('s', ItemButton.from(dusts))
.addIngredient('p', ItemButton.from(PylonItems.PALLADIUM_DUST))
.addIngredient('s', ItemButton.of(dusts))
.addIngredient('p', ItemButton.of(PylonItems.PALLADIUM_DUST))
.addIngredient('D', new FluidButton((double) hydraulicUse, PylonFluids.DIRTY_HYDRAULIC_FLUID))
.build()
).register();
Expand Down Expand Up @@ -146,7 +147,7 @@ private static void initBiorefinery() {
"# # # # # # # # #"
)
.addIngredient('#', GuiItems.backgroundBlack())
.addIngredient('x', ItemButton.from(PylonItems.BIOREFINERY))
.addIngredient('x', ItemButton.of(PylonItems.BIOREFINERY))
.addIngredient('o', new FluidButton(1.0, PylonFluids.BIODIESEL))
.addIngredient('p', new FluidButton(plantOilPerMbOfBiodiesel, PylonFluids.PLANT_OIL))
.addIngredient('e', new FluidButton(ethanolPerMbOfBiodiesel, PylonFluids.ETHANOL))
Expand Down Expand Up @@ -176,8 +177,8 @@ private static void initFermenter() {
"# # # # # # # # #"
)
.addIngredient('#', GuiItems.backgroundBlack())
.addIngredient('i', ItemButton.from(ItemStack.of(Material.SUGAR_CANE)))
.addIngredient('x', ItemButton.from(PylonItems.FERMENTER))
.addIngredient('i', ItemButton.of(ItemStack.of(Material.SUGAR_CANE)))
.addIngredient('x', ItemButton.of(PylonItems.FERMENTER))
.addIngredient('o', new FluidButton(ethanolPerSugarcane, PylonFluids.ETHANOL))
.build()
).register();
Expand Down
Loading