Skip to content

Commit

Permalink
Fix wildcard metadata not allowing valid items
Browse files Browse the repository at this point in the history
  • Loading branch information
Gliese-832-c committed Nov 3, 2023
1 parent 5adeb7e commit 030283b
Show file tree
Hide file tree
Showing 8 changed files with 46 additions and 140 deletions.
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
org.gradle.jvmargs = -Xmx3G

# Mod Information
mod_version = 1.0.0
mod_version = 1.0.1
maven_group = gliese832c
archives_base_name = selectionGuiCrafting

Expand Down
2 changes: 1 addition & 1 deletion src/main/java/gliese832c/SelectionGuiCrafting.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ public class SelectionGuiCrafting {

public static final String MOD_ID = "selectionguicrafting";
public static final String NAME = "Selection GUI Crafting";
public static final String VERSION = "1.0.0";
public static final String VERSION = "1.0.1";



Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,18 @@ public void rightClickItem(PlayerInteractEvent.RightClickItem event) {
for (Item itemTool : itemPair.tool) {
if (ItemStack.areItemStacksEqual(new ItemStack(itemTool), new ItemStack(eventItemMainhand))) {
for (ItemStack itemInput : itemPair.input) {
if (ItemStack.areItemStacksEqual(new ItemStack(itemInput.getItem(), 1, itemInput.getMetadata(), itemInput.getTagCompound()), new ItemStack(eventStackOffhand.getItem(), 1, eventStackOffhand.getMetadata(), eventStackOffhand.getTagCompound()))) {
openSelectionGui();
event.setCanceled(true);
return;
if (itemInput.getMetadata() == Short.MAX_VALUE) {
if (ItemStack.areItemStacksEqual(new ItemStack(itemInput.getItem(), 1, Short.MAX_VALUE, itemInput.getTagCompound()), (new ItemStack(eventStackOffhand.getItem(), 1, Short.MAX_VALUE, eventStackOffhand.getTagCompound())))) {
openSelectionGui();
event.setCanceled(true);
return;
}
} else {
if (ItemStack.areItemStacksEqual(new ItemStack(itemInput.getItem(), 1, itemInput.getMetadata(), itemInput.getTagCompound()), new ItemStack(eventStackOffhand.getItem(), 1, eventStackOffhand.getMetadata(), eventStackOffhand.getTagCompound()))) {
openSelectionGui();
event.setCanceled(true);
return;
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,6 @@
package gliese832c.selectionGuiCrafting.gui;

import gliese832c.SelectionGuiCrafting;
import gliese832c.selectionGuiCrafting.gui.GuiScreenDynamic;
import gliese832c.selectionGuiCrafting.network.SelectionMessageGiveItem;
import gliese832c.selectionGuiCrafting.network.SelectionMessageProcessRecipe;
import gliese832c.selectionGuiCrafting.network.SelectionPacketHandler;
import gliese832c.selectionGuiCrafting.proxy.CommonProxy;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,16 @@ public Object getServerGuiElement(int ID, EntityPlayer player, World world, int
for (Item itemTool : itemPair.tool) {
if (ItemStack.areItemStacksEqual(new ItemStack(itemTool), (new ItemStack(heldItemMainhand)))) {
for (ItemStack itemInput : itemPair.input) {
if (ItemStack.areItemStacksEqual(new ItemStack(itemInput.getItem(), 1, itemInput.getMetadata(), itemInput.getTagCompound()), (new ItemStack(heldStackOffhand.getItem(), 1, heldStackOffhand.getMetadata(), heldStackOffhand.getTagCompound())))) {
recipeCategory = itemPair.recipeCategory;
//pair = itemPair;
if (itemInput.getMetadata() == Short.MAX_VALUE) {
if (ItemStack.areItemStacksEqual(new ItemStack(itemInput.getItem(), 1, Short.MAX_VALUE, itemInput.getTagCompound()), (new ItemStack(heldStackOffhand.getItem(), 1, Short.MAX_VALUE, heldStackOffhand.getTagCompound())))) {
recipeCategory = itemPair.recipeCategory;
//pair = itemPair;
}
} else {
if (ItemStack.areItemStacksEqual(new ItemStack(itemInput.getItem(), 1, itemInput.getMetadata(), itemInput.getTagCompound()), (new ItemStack(heldStackOffhand.getItem(), 1, heldStackOffhand.getMetadata(), heldStackOffhand.getTagCompound())))) {
recipeCategory = itemPair.recipeCategory;
//pair = itemPair;
}
}
}
}
Expand Down Expand Up @@ -57,9 +64,16 @@ public Object getClientGuiElement(int ID, EntityPlayer player, World world, int
for (Item itemTool : itemPair.tool) {
if (ItemStack.areItemStacksEqual(new ItemStack(itemTool), (new ItemStack(heldItemMainhand)))) {
for (ItemStack itemInput : itemPair.input) {
if (ItemStack.areItemStacksEqual(new ItemStack(itemInput.getItem(), 1, itemInput.getMetadata(), itemInput.getTagCompound()), (new ItemStack(heldStackOffhand.getItem(), 1, heldStackOffhand.getMetadata(), heldStackOffhand.getTagCompound())))) {
recipeCategory = itemPair.recipeCategory;
//pair = itemPair;
if (itemInput.getMetadata() == Short.MAX_VALUE) {
if (ItemStack.areItemStacksEqual(new ItemStack(itemInput.getItem(), 1, Short.MAX_VALUE, itemInput.getTagCompound()), (new ItemStack(heldStackOffhand.getItem(), 1, Short.MAX_VALUE, heldStackOffhand.getTagCompound())))) {
recipeCategory = itemPair.recipeCategory;
//pair = itemPair;
}
} else {
if (ItemStack.areItemStacksEqual(new ItemStack(itemInput.getItem(), 1, itemInput.getMetadata(), itemInput.getTagCompound()), (new ItemStack(heldStackOffhand.getItem(), 1, heldStackOffhand.getMetadata(), heldStackOffhand.getTagCompound())))) {
recipeCategory = itemPair.recipeCategory;
//pair = itemPair;
}
}
}
}
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,18 @@ public IMessage onMessage(SelectionMessageProcessRecipe message, MessageContext
for (Item itemTool : getToolFromCategory(message.recipeCategory)) {
if (ItemStack.areItemStacksEqual(new ItemStack(itemTool), new ItemStack(itemMainhand))) {
for (ItemStack itemInput : getItemFromCategory(message.recipeCategory)) {
if (ItemStack.areItemStacksEqual(new ItemStack(itemInput.getItem(), 1, itemInput.getMetadata(), itemInput.getTagCompound()), new ItemStack(stackOffhand.getItem(), 1, stackOffhand.getMetadata(), stackOffhand.getTagCompound()))) {
boolean valid = false;
if (itemInput.getMetadata() == Short.MAX_VALUE) {
if (ItemStack.areItemStacksEqual(new ItemStack(itemInput.getItem(), 1, Short.MAX_VALUE, itemInput.getTagCompound()), (new ItemStack(stackOffhand.getItem(), 1, Short.MAX_VALUE, stackOffhand.getTagCompound())))) {
valid = true;
}
} else {
if (ItemStack.areItemStacksEqual(new ItemStack(itemInput.getItem(), 1, itemInput.getMetadata(), itemInput.getTagCompound()), new ItemStack(stackOffhand.getItem(), 1, stackOffhand.getMetadata(), stackOffhand.getTagCompound()))) {
valid = true;
}
}

if (valid) {
if (category.recipes.get(message.recipeIndex).inputQuantity <= player.getHeldItemOffhand().getCount()) {

// If all requirements are met, do the actual recipe
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
import gliese832c.SelectionGuiCrafting;
import gliese832c.selectionGuiCrafting.events.EventRightClick;
import gliese832c.selectionGuiCrafting.gui.ModGuiHandler;
import gliese832c.selectionGuiCrafting.network.SelectionMessageGiveItem;
import gliese832c.selectionGuiCrafting.network.SelectionMessageProcessRecipe;
import gliese832c.selectionGuiCrafting.network.SelectionPacketHandler;
import gliese832c.selectionGuiCrafting.recipe.GuiSelectionItemPair;
Expand Down Expand Up @@ -33,7 +32,6 @@ public void preInit(FMLPreInitializationEvent preEvent)
{
MinecraftForge.EVENT_BUS.register(new EventRightClick());

//SelectionPacketHandler.SELECTION_NETWORK_WRAPPER.registerMessage(SelectionMessageGiveItem.SelectionMessageGiveItemHandler.class, SelectionMessageGiveItem.class, 0, Side.SERVER);
SelectionPacketHandler.SELECTION_NETWORK_WRAPPER.registerMessage(SelectionMessageProcessRecipe.SelectionMessageProcessRecipeHandler.class, SelectionMessageProcessRecipe.class, 0, Side.SERVER);
}

Expand Down

0 comments on commit 030283b

Please sign in to comment.