Bugzoo Posted July 4, 2014 Posted July 4, 2014 Im using addItemStackToInventory and i keep getting random numbers of items back. Here is the code im using ((EntityPlayer)player).inventory.addItemStackToInventory(new ItemStack(Minespresso.SugaryMagicCappuccino, 1)); Quote
Elyon Posted July 4, 2014 Posted July 4, 2014 Can you post your entire method or class? In what context are you calling addItemStackToInventory ? Quote
Bugzoo Posted July 4, 2014 Author Posted July 4, 2014 Im sending a packet. if (packet.channel.equals("DrinksNetwork") && packet.sentID == 1) { ((EntityPlayer)player).inventory.addItemStackToInventory(new ItemStack(Minespresso.Cappuccino, 1)); } Quote
Elyon Posted July 4, 2014 Posted July 4, 2014 Can you post your entire method or class? Under what circumstances is this packet sent? Where in your class/method setup are you calling addItemStackToInventory (what method in what class)? You have to help us to help you Quote
Bugzoo Posted July 4, 2014 Author Posted July 4, 2014 Can you post your entire method or class? Under what circumstances is this packet sent? Where in your class/method setup are you calling addItemStackToInventory (what method in what class)? You have to help us to help you Im handling a packet so its pretty obvious what class its in but heres my code package MinespressoMod; import java.io.ByteArrayInputStream; import java.io.DataInputStream; import java.io.IOException; import net.minecraft.client.Minecraft; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.network.INetworkManager; import net.minecraft.network.packet.Packet250CustomPayload; import cpw.mods.fml.common.network.IPacketHandler; import cpw.mods.fml.common.network.Player; public class PacketHandler implements IPacketHandler { @Override public void onPacketData(INetworkManager manager, Packet250CustomPayload packet, Player player) { //Cappuccino if (packet.channel.equals("DrinksNetwork") && packet.sentID == 1) { ((EntityPlayer)player).inventory.addItemStackToInventory(new ItemStack(Minespresso.Cappuccino, 1)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 2) { ((EntityPlayer)player).inventory.addItemStackToInventory(new ItemStack(Minespresso.SugaryCappuccino, 1)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 3) { ((EntityPlayer)player).inventory.addItemStackToInventory(new ItemStack(Minespresso.MagicCappuccino, 1)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 4) { ((EntityPlayer)player).inventory.addItemStackToInventory(new ItemStack(Minespresso.SugaryMagicCappuccino, 1)); } //Coffee if (packet.channel.equals("DrinksNetwork") && packet.sentID == 10) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.Coffee)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 11) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.SugaryCoffee)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 12) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.MagicCoffee)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 13) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.SugaryMagicCoffee)); } //Minespresso if (packet.channel.equals("DrinksNetwork") && packet.sentID == 20) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.Minespresso)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 21) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.SugaryMinespresso)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 22) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.MagicMinespresso)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 23) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.SugaryMagicMinespresso)); } //Latte if (packet.channel.equals("DrinksNetwork") && packet.sentID == 30) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.Latte)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 31) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.SugaryLatte)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 32) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.MagicLatte)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 33) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.SugaryMagicLatte)); } //Tea if (packet.channel.equals("DrinksNetwork") && packet.sentID == 40) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.Tea)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 41) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.SugaryTea)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 42) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.MagicTea)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 43) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.SugaryMagicTea)); } //HotChocolate if (packet.channel.equals("DrinksNetwork") && packet.sentID == 50) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.HotChocolate)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 51) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.SugaryHotChocolate)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 52) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.MagicHotChocolate)); } if (packet.channel.equals("DrinksNetwork") && packet.sentID == 53) { ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.SugaryMagicHotChocolate)); } } private void handleRandom(Packet250CustomPayload packet) { DataInputStream inputStream = new DataInputStream(new ByteArrayInputStream(packet.data)); int randomInt1; int randomInt2; try { randomInt1 = inputStream.readInt(); randomInt2 = inputStream.readInt(); } catch (IOException e) { e.printStackTrace(); return; } System.out.println(randomInt1 + " " + randomInt2); } } Quote
Elyon Posted July 4, 2014 Posted July 4, 2014 Under what circumstances is this packet sent? It is possibly either being sent or handled multiple times, or it might be related to the lack of @SideOnly annotations. ... Also: I did not ask where you handle your packets You wrote that you were sending a packet, not handling one The code you wrote earlier turned out to be from packet handling, not sending Handling or sending a packet does not make it obvious what custom class you are handling/sending it in, or what the contents of that class are You still haven't pasted any code from where you send the packet Hardly obvious, no need to be snappy. We're trying to help, here. Finally, please use http:/gist.github.com/ for longer pastes. Quote
Bugzoo Posted July 4, 2014 Author Posted July 4, 2014 Under what circumstances is this packet sent? It is possibly either being sent or handled multiple times, or it might be related to the lack of @SideOnly annotations. ... Also: I did not ask where you handle your packets You wrote that you were sending a packet, not handling one The code you wrote earlier turned out to be from packet handling, not sending Handling or sending a packet does not make it obvious what custom class you are handling/sending it in, or what the contents of that class are You still haven't pasted any code from where you send the packet Hardly obvious, no need to be snappy. We're trying to help, here. Finally, please use http:/gist.github.com/ for longer pastes. Sorry... public void actionPerformed(GuiButton guibutton){ if(guibutton.id == 1){ Packet250CustomPayload packet = new Packet250CustomPayload(); packet.channel = "DrinksNetwork"; packet.sentID = 50; PacketDispatcher.sendPacketToServer(packet); } Quote
Elyon Posted July 4, 2014 Posted July 4, 2014 No worries; we're here to help Anyway, the code you pasted has sentID set to 50, which would execute this line: ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.HotChocolate)); You may want to change the sentID to 1, or chance the line above to use addItemStackToInventory . Quote
Bugzoo Posted July 4, 2014 Author Posted July 4, 2014 No worries; we're here to help Anyway, the code you pasted has sentID set to 50, which would execute this line: ((EntityPlayer)player).inventory.setInventorySlotContents(1, new ItemStack(Minespresso.HotChocolate)); You may want to change the sentID to 1, or chance the line above to use addItemStackToInventory . Still doesnt make a difference Quote
Bugzoo Posted July 4, 2014 Author Posted July 4, 2014 I found out that when I press the button, it glitches and keeps pressing the button. So if i press it ones it actually presses tons of times. do you know how to fix this, or why its happening Quote
Bugzoo Posted July 4, 2014 Author Posted July 4, 2014 Got it fixed. I was adding the buttons in the drawScreen method instead of the initGui Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.