aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/MapExtendingRecipe.h
diff options
context:
space:
mode:
Diffstat (limited to 'Minecraft.World/MapExtendingRecipe.h')
-rw-r--r--Minecraft.World/MapExtendingRecipe.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/Minecraft.World/MapExtendingRecipe.h b/Minecraft.World/MapExtendingRecipe.h
new file mode 100644
index 00000000..40f94937
--- /dev/null
+++ b/Minecraft.World/MapExtendingRecipe.h
@@ -0,0 +1,46 @@
+#pragma once
+/*
+class MapExtendingRecipe extends ShapedRecipy {
+ public MapExtendingRecipe() {
+ super(3, 3, new ItemInstance[] {
+ new ItemInstance(Item.paper), new ItemInstance(Item.paper), new ItemInstance(Item.paper),
+ new ItemInstance(Item.paper), new ItemInstance(Item.map, 0, Recipes.ANY_AUX_VALUE), new ItemInstance(Item.paper),
+ new ItemInstance(Item.paper), new ItemInstance(Item.paper), new ItemInstance(Item.paper),
+ }, new ItemInstance(Item.emptyMap, 0, 0));
+ }
+
+ @Override
+ public boolean matches(CraftingContainer craftSlots, Level level) {
+ if (!super.matches(craftSlots, level)) return false;
+ ItemInstance map = null;
+
+ for (int i = 0; i < craftSlots.getContainerSize() && map == null; i++) {
+ ItemInstance item = craftSlots.getItem(i);
+ if (item != null && item.id == Item.map.id) map = item;
+ }
+
+ if (map == null) return false;
+ MapItemSavedData data = Item.map.getSavedData(map, level);
+ if (data == null) return false;
+ return data.scale < MapItemSavedData.MAX_SCALE;
+ }
+
+ @Override
+ public ItemInstance assemble(CraftingContainer craftSlots) {
+ ItemInstance map = null;
+
+ for (int i = 0; i < craftSlots.getContainerSize() && map == null; i++) {
+ ItemInstance item = craftSlots.getItem(i);
+ if (item != null && item.id == Item.map.id) map = item;
+ }
+
+ map = map.copy();
+ map.count = 1;
+
+ if (map.getTag() == null) map.setTag(new CompoundTag());
+ map.getTag().putBoolean("map_is_scaling", true);
+
+ return map;
+ }
+};
+*/ \ No newline at end of file