diff options
| author | shedaniel <daniel@shedaniel.me> | 2020-04-18 15:48:19 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2020-04-18 15:48:19 +0800 |
| commit | 8e617f5a6c92a21be270ec190261d979deac965f (patch) | |
| tree | db564a02bd9a4d60cf5362d0ae239924ccd5d9c6 /src/main/java/me/shedaniel/rei/impl/ItemEntryStack.java | |
| parent | 8fc595cace9efb981009b7a9f1a3be1809895164 (diff) | |
| download | RoughlyEnoughItems-8e617f5a6c92a21be270ec190261d979deac965f.tar.gz RoughlyEnoughItems-8e617f5a6c92a21be270ec190261d979deac965f.tar.bz2 RoughlyEnoughItems-8e617f5a6c92a21be270ec190261d979deac965f.zip | |
Added FluidSupportProvider
Signed-off-by: shedaniel <daniel@shedaniel.me>
Diffstat (limited to 'src/main/java/me/shedaniel/rei/impl/ItemEntryStack.java')
| -rw-r--r-- | src/main/java/me/shedaniel/rei/impl/ItemEntryStack.java | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/src/main/java/me/shedaniel/rei/impl/ItemEntryStack.java b/src/main/java/me/shedaniel/rei/impl/ItemEntryStack.java index cb65b0396..cceea85a6 100644 --- a/src/main/java/me/shedaniel/rei/impl/ItemEntryStack.java +++ b/src/main/java/me/shedaniel/rei/impl/ItemEntryStack.java @@ -40,6 +40,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.Tag; import net.minecraft.util.Identifier; +import net.minecraft.util.math.MathHelper; import net.minecraft.util.registry.Registry; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.Nullable; @@ -77,11 +78,21 @@ public class ItemEntryStack extends AbstractEntryStack implements OptimalEntrySt } @Override + public double getFloatingAmount() { + return itemStack.getCount(); + } + + @Override public void setAmount(int amount) { itemStack.setCount(amount); } @Override + public void setFloatingAmount(double amount) { + itemStack.setCount(MathHelper.floor(amount)); + } + + @Override public boolean isEmpty() { return itemStack.isEmpty(); } @@ -103,14 +114,14 @@ public class ItemEntryStack extends AbstractEntryStack implements OptimalEntrySt @Override public boolean equalsIgnoreTagsAndAmount(EntryStack stack) { if (stack.getType() != Type.ITEM) - return false; + return EntryStack.copyItemToFluid(this).equalsIgnoreTagsAndAmount(stack); return itemStack.getItem() == stack.getItem(); } @Override public boolean equalsAll(EntryStack stack) { if (stack.getType() != Type.ITEM) - return false; + return EntryStack.copyItemToFluid(this).equalsAll(stack); if (itemStack.getItem() != stack.getItem() || getAmount() != stack.getAmount()) return false; return ItemStack.areTagsEqual(itemStack, stack.getItemStack()); @@ -119,7 +130,7 @@ public class ItemEntryStack extends AbstractEntryStack implements OptimalEntrySt @Override public boolean equalsIgnoreAmount(EntryStack stack) { if (stack.getType() != Type.ITEM) - return false; + return EntryStack.copyItemToFluid(this).equalsIgnoreAmount(stack); if (itemStack.getItem() != stack.getItem()) return false; ItemStack otherStack = stack.getItemStack(); @@ -173,7 +184,7 @@ public class ItemEntryStack extends AbstractEntryStack implements OptimalEntrySt @Override public boolean equalsIgnoreTags(EntryStack stack) { if (stack.getType() != Type.ITEM) - return false; + return EntryStack.copyItemToFluid(this).equalsIgnoreTags(stack); if (itemStack.getItem() != stack.getItem()) return false; return getAmount() == stack.getAmount(); |
