Skip to content
Merged
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
Original file line number Diff line number Diff line change
Expand Up @@ -7,29 +7,31 @@
import io.github.pylonmc.pylon.core.block.base.PylonGuiBlock;
import io.github.pylonmc.pylon.core.block.context.BlockCreateContext;
import io.github.pylonmc.pylon.core.config.adapter.ConfigAdapter;
import io.github.pylonmc.pylon.core.datatypes.PylonSerializers;
import io.github.pylonmc.pylon.core.entity.display.ItemDisplayBuilder;
import io.github.pylonmc.pylon.core.entity.display.transform.TransformBuilder;
import io.github.pylonmc.pylon.core.i18n.PylonArgument;
import io.github.pylonmc.pylon.core.item.PylonItem;
import io.github.pylonmc.pylon.core.item.builder.ItemStackBuilder;
import io.github.pylonmc.pylon.core.logistics.LogisticSlotType;
import io.github.pylonmc.pylon.core.datatypes.PylonSerializers;
import io.github.pylonmc.pylon.core.logistics.VirtualInventoryLogisticSlot;
import io.github.pylonmc.pylon.core.util.PylonUtils;
import io.github.pylonmc.pylon.core.util.gui.GuiItems;
import io.github.pylonmc.pylon.core.util.gui.unit.UnitFormat;
import lombok.Getter;
import org.bukkit.Material;
import org.bukkit.NamespacedKey;
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
import org.bukkit.inventory.ItemStack;
import org.bukkit.persistence.PersistentDataContainer;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import xyz.xenondevs.invui.gui.Gui;
import xyz.xenondevs.invui.inventory.Inventory;
import xyz.xenondevs.invui.inventory.VirtualInventory;

import java.util.List;
import java.util.Map;

import static io.github.pylonmc.pylon.base.util.BaseUtils.baseKey;

Expand All @@ -39,7 +41,9 @@ public class CargoBuffer extends PylonBlock

private static final NamespacedKey FACE_KEY = baseKey("face");

@Getter
private final BlockFace facing;

private final VirtualInventory inventory = new VirtualInventory(1);

public final int transferRate = getSettings().getOrThrow("transfer-rate", ConfigAdapter.INT);
Expand Down Expand Up @@ -165,8 +169,8 @@ public void write(@NotNull PersistentDataContainer pdc) {
}

@Override
public @Nullable BlockFace getFacing() {
return facing;
public @NotNull Map<@NotNull String, @NotNull Inventory> createInventoryMapping() {
return Map.of("inventory", inventory);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,12 @@
import org.jetbrains.annotations.Nullable;
import org.joml.Vector3d;
import xyz.xenondevs.invui.gui.Gui;
import xyz.xenondevs.invui.inventory.Inventory;
import xyz.xenondevs.invui.inventory.VirtualInventory;
import xyz.xenondevs.invui.inventory.event.PlayerUpdateReason;

import java.util.List;
import java.util.Map;


public class DieselPipeBender extends PylonBlock
Expand Down Expand Up @@ -212,6 +214,14 @@ public void tick(double deltaSeconds) {
.build();
}

@Override
public @NotNull Map<@NotNull String, @NotNull Inventory> createInventoryMapping() {
return Map.of(
"input", inputInventory,
"output", outputInventory
);
}

@Override
public @Nullable WailaDisplay getWaila(@NotNull Player player) {
return new WailaDisplay(getDefaultWailaTranslationKey().arguments(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import xyz.xenondevs.invui.gui.Gui;
import xyz.xenondevs.invui.inventory.Inventory;

import java.util.List;
import java.util.Map;
Expand Down Expand Up @@ -60,7 +61,12 @@ public void onFluidRemoved(@NotNull PylonFluid fluid, double amount) {}

@Override
public @NotNull Gui createGui() {
return (FluidSelector.make(() -> fluid, this::setFluid));
return FluidSelector.make(() -> fluid, this::setFluid);
}

@Override
public @NotNull Map<@NotNull String, @NotNull Inventory> createInventoryMapping() {
return Map.of();
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,10 @@
import com.google.common.base.Preconditions;
import io.github.pylonmc.pylon.base.content.machines.fluid.gui.FluidSelector;
import io.github.pylonmc.pylon.core.block.PylonBlock;
import io.github.pylonmc.pylon.core.block.base.PylonFluidBlock;
import io.github.pylonmc.pylon.core.block.base.PylonFluidTank;
import io.github.pylonmc.pylon.core.block.base.PylonGuiBlock;
import io.github.pylonmc.pylon.core.block.context.BlockBreakContext;
import io.github.pylonmc.pylon.core.block.context.BlockCreateContext;
import io.github.pylonmc.pylon.core.waila.WailaDisplay;
import io.github.pylonmc.pylon.core.config.PylonConfig;
import io.github.pylonmc.pylon.core.config.adapter.ConfigAdapter;
import io.github.pylonmc.pylon.core.datatypes.PylonSerializers;
Expand All @@ -23,6 +21,7 @@
import io.github.pylonmc.pylon.core.item.builder.ItemStackBuilder;
import io.github.pylonmc.pylon.core.util.PylonUtils;
import io.github.pylonmc.pylon.core.util.gui.unit.UnitFormat;
import io.github.pylonmc.pylon.core.waila.WailaDisplay;
import net.kyori.adventure.text.Component;
import org.bukkit.Material;
import org.bukkit.NamespacedKey;
Expand All @@ -35,8 +34,10 @@
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import xyz.xenondevs.invui.gui.Gui;
import xyz.xenondevs.invui.inventory.Inventory;

import java.util.List;
import java.util.Map;

import static io.github.pylonmc.pylon.base.util.BaseUtils.baseKey;

Expand Down Expand Up @@ -167,6 +168,11 @@ public void setFluid(PylonFluid fluid) {
return Component.translatable("pylon.pylonbase.item.fluid_filter.gui");
}

@Override
public @NotNull Map<@NotNull String, @NotNull Inventory> createInventoryMapping() {
return Map.of();
}

@Override
public void onBreak(@NotNull List<@NotNull ItemStack> drops, @NotNull BlockBreakContext context) {
PylonFluidTank.super.onBreak(drops, context);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@
import io.github.pylonmc.pylon.core.block.base.PylonTickingBlock;
import io.github.pylonmc.pylon.core.block.context.BlockBreakContext;
import io.github.pylonmc.pylon.core.block.context.BlockCreateContext;
import io.github.pylonmc.pylon.core.waila.WailaDisplay;
import io.github.pylonmc.pylon.core.config.adapter.ConfigAdapter;
import io.github.pylonmc.pylon.core.datatypes.PylonSerializers;
import io.github.pylonmc.pylon.core.fluid.FluidPointType;
import io.github.pylonmc.pylon.core.fluid.PylonFluid;
import io.github.pylonmc.pylon.core.i18n.PylonArgument;
import io.github.pylonmc.pylon.core.util.PylonUtils;
import io.github.pylonmc.pylon.core.util.gui.unit.UnitFormat;
import io.github.pylonmc.pylon.core.waila.WailaDisplay;
import net.kyori.adventure.text.Component;
import org.bukkit.NamespacedKey;
import org.bukkit.block.Block;
Expand All @@ -25,6 +25,7 @@
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import xyz.xenondevs.invui.gui.Gui;
import xyz.xenondevs.invui.inventory.Inventory;
import xyz.xenondevs.invui.inventory.VirtualInventory;

import java.util.List;
Expand Down Expand Up @@ -150,6 +151,11 @@ public Component getGuiTitle() {
.build();
}

@Override
public @NotNull Map<@NotNull String, @NotNull Inventory> createInventoryMapping() {
return Map.of();
}

@Override
public void tick(double deltaSeconds) {
if (currentRecipe != null && passedFluid >= currentRecipe.input().amountMillibuckets()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
import org.jetbrains.annotations.Nullable;
import org.joml.Vector3i;
import xyz.xenondevs.invui.gui.Gui;
import xyz.xenondevs.invui.inventory.Inventory;
import xyz.xenondevs.invui.inventory.VirtualInventory;

import java.util.HashMap;
Expand Down Expand Up @@ -119,6 +120,11 @@ public void postInitialise() {
.build();
}

@Override
public @NotNull Map<@NotNull String, @NotNull Inventory> createInventoryMapping() {
return Map.of("inventory", inventory);
}

@Override
public @NotNull Map<@NotNull Vector3i, @NotNull MultiblockComponent> getComponents() {
Map<Vector3i, MultiblockComponent> components = new HashMap<>();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import xyz.xenondevs.invui.gui.Gui;
import xyz.xenondevs.invui.inventory.Inventory;
import xyz.xenondevs.invui.inventory.VirtualInventory;

import java.util.Map;
Expand Down Expand Up @@ -143,6 +144,11 @@ public void onProcessFinished() {
fuel = null;
}

@Override
public @NotNull Map<@NotNull String, @NotNull Inventory> createInventoryMapping() {
return Map.of("fuels", inventory);
}

// TODO display fuels
public record Fuel(
@NotNull NamespacedKey key,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package io.github.pylonmc.pylon.base.content.machines.smelting;

import io.github.pylonmc.pylon.base.PylonBase;
import io.github.pylonmc.pylon.base.recipes.CastingRecipe;
import io.github.pylonmc.pylon.core.block.base.PylonGuiBlock;
import io.github.pylonmc.pylon.core.block.base.PylonTickingBlock;
Expand All @@ -25,10 +24,13 @@
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import xyz.xenondevs.invui.gui.Gui;
import xyz.xenondevs.invui.inventory.Inventory;
import xyz.xenondevs.invui.inventory.VirtualInventory;
import xyz.xenondevs.invui.item.ItemProvider;
import xyz.xenondevs.invui.item.impl.AbstractItem;

import java.util.Map;

public final class SmelteryCaster extends SmelteryComponent implements PylonGuiBlock, PylonTickingBlock {

private @Nullable PylonFluid bottomFluid = null;
Expand Down Expand Up @@ -135,6 +137,11 @@ private static TranslatableComponent casterKey(@NotNull String subkey, @NotNull
}
}

@Override
public @NotNull Map<@NotNull String, @NotNull Inventory> createInventoryMapping() {
return Map.of("output", inventory);
}

@Override
public void tick(double deltaSeconds) {
SmelteryController controller = getController();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,9 @@
import io.github.pylonmc.pylon.base.util.BaseUtils;
import io.github.pylonmc.pylon.base.util.HslColor;
import io.github.pylonmc.pylon.core.block.BlockStorage;
import io.github.pylonmc.pylon.core.block.base.*;
import io.github.pylonmc.pylon.core.block.base.PylonGuiBlock;
import io.github.pylonmc.pylon.core.block.base.PylonMultiblock;
import io.github.pylonmc.pylon.core.block.base.PylonTickingBlock;
import io.github.pylonmc.pylon.core.block.context.BlockBreakContext;
import io.github.pylonmc.pylon.core.block.context.BlockCreateContext;
import io.github.pylonmc.pylon.core.config.Config;
Expand Down Expand Up @@ -45,6 +47,7 @@
import org.jetbrains.annotations.Nullable;
import org.joml.Vector3i;
import xyz.xenondevs.invui.gui.Gui;
import xyz.xenondevs.invui.inventory.Inventory;
import xyz.xenondevs.invui.item.Item;
import xyz.xenondevs.invui.item.ItemProvider;
import xyz.xenondevs.invui.item.impl.AbstractItem;
Expand Down Expand Up @@ -211,15 +214,20 @@ public void handleClick(@NotNull ClickType clickType, @NotNull Player player, @N
}
}

@Override
public @NotNull Map<@NotNull String, @NotNull Inventory> createInventoryMapping() {
return Map.of();
}
// </editor-fold>

// <editor-fold desc="Multiblock" defaultstate="collapsed">
private final BlockPosition center = new BlockPosition(
getBlock().getRelative(
((Directional) getBlock().getBlockData()).getFacing().getOppositeFace(),
2
)
);
// </editor-fold>

// <editor-fold desc="Multiblock" defaultstate="collapsed">
// @formatter:off
private static final Vector3i[] MULTIBLOCK_DIRECTIONS = new Vector3i[] {
new Vector3i(-2, 0, -2), new Vector3i(-2, 0, -1), new Vector3i(-2, 0, 0), new Vector3i(-2, 0, 1), new Vector3i(-2, 0, 2),
Expand Down
Loading