OmniArcher Posted October 25, 2013 Posted October 25, 2013 I've been looking for a way to drop items from a block for my mod, I want it to drop 5-6 items. I've been looking in the tutorials section and googled it but found nothing recent for 1.6. Can anyone help? Quote -OmniArcher-
Draco18s Posted October 25, 2013 Posted October 25, 2013 EntityItem ei = new EntityItem(...) ei.stack = new ItemStack(...) world.spawnEntityInWorld(...) Quote Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
GotoLink Posted October 25, 2013 Posted October 25, 2013 You can use idDroped, damageDroped, quantityDroped in Block, if it is at block break you want it to happen. Quote
OmniArcher Posted October 25, 2013 Author Posted October 25, 2013 You can use idDroped, damageDroped, quantityDroped in Block, if it is at block break you want it to happen. I've tried using idDropped and quantityDropped, and it crashed the game when I break the block Quote -OmniArcher-
Draco18s Posted October 25, 2013 Posted October 25, 2013 You can use idDroped, damageDroped, quantityDroped in Block, if it is at block break you want it to happen. I've tried using idDropped and quantityDropped, and it crashed the game when I break the block This is useful information about your problem that does not contain the information that would be useful to solving it. (Read: post the crash log) Quote Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
OmniArcher Posted October 25, 2013 Author Posted October 25, 2013 You can use idDroped, damageDroped, quantityDroped in Block, if it is at block break you want it to happen. I've tried using idDropped and quantityDropped, and it crashed the game when I break the block This is useful information about your problem that does not contain the information that would be useful to solving it. (Read: post the crash log) ---- Minecraft Crash Report ---- // You should try our sister game, Minceraft! Time: 10/25/13 12:09 AM Description: Ticking memory connection java.lang.NullPointerException at oBlox.block.BlockRedTrintiumOre.idDropped(BlockRedTrintiumOre.java:20) at net.minecraft.block.Block.getBlockDropped(Block.java:1831) at net.minecraft.block.Block.dropBlockAsItemWithChance(Block.java:721) at net.minecraft.block.Block.dropBlockAsItem(Block.java:711) at net.minecraft.block.Block.harvestBlock(Block.java:1142) at net.minecraft.item.ItemInWorldManager.tryHarvestBlock(ItemInWorldManager.java:338) at net.minecraft.item.ItemInWorldManager.onBlockClicked(ItemInWorldManager.java:206) at net.minecraft.network.NetServerHandler.handleBlockDig(NetServerHandler.java:493) at net.minecraft.network.packet.Packet14BlockDig.processPacket(Packet14BlockDig.java:67) at net.minecraft.network.MemoryConnection.processReadPackets(MemoryConnection.java:89) at net.minecraft.network.NetServerHandler.networkTick(NetServerHandler.java:141) at net.minecraft.network.NetworkListenThread.networkTick(NetworkListenThread.java:54) at net.minecraft.server.integrated.IntegratedServerListenThread.networkTick(IntegratedServerListenThread.java:109) at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:691) at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:587) at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:129) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:484) at net.minecraft.server.ThreadMinecraftServer.run(ThreadMinecraftServer.java:16) A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Stacktrace: at oBlox.block.BlockRedTrintiumOre.idDropped(BlockRedTrintiumOre.java:20) at net.minecraft.block.Block.getBlockDropped(Block.java:1831) at net.minecraft.block.Block.dropBlockAsItemWithChance(Block.java:721) at net.minecraft.block.Block.dropBlockAsItem(Block.java:711) at net.minecraft.block.Block.harvestBlock(Block.java:1142) at net.minecraft.item.ItemInWorldManager.tryHarvestBlock(ItemInWorldManager.java:338) at net.minecraft.item.ItemInWorldManager.onBlockClicked(ItemInWorldManager.java:206) at net.minecraft.network.NetServerHandler.handleBlockDig(NetServerHandler.java:493) at net.minecraft.network.packet.Packet14BlockDig.processPacket(Packet14BlockDig.java:67) at net.minecraft.network.MemoryConnection.processReadPackets(MemoryConnection.java:89) at net.minecraft.network.NetServerHandler.networkTick(NetServerHandler.java:141) -- Ticking connection -- Details: Connection: net.minecraft.network.NetServerHandler@10b5a8f9 Stacktrace: at net.minecraft.network.NetworkListenThread.networkTick(NetworkListenThread.java:54) at net.minecraft.server.integrated.IntegratedServerListenThread.networkTick(IntegratedServerListenThread.java:109) at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:691) at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:587) at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:129) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:484) at net.minecraft.server.ThreadMinecraftServer.run(ThreadMinecraftServer.java:16) -- System Details -- Details: Minecraft Version: 1.6.4 Operating System: Windows 7 (amd64) version 6.1 Java Version: 1.7.0_10, Oracle Corporation Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation Memory: 773187584 bytes (737 MB) / 1056309248 bytes (1007 MB) up to 1056309248 bytes (1007 MB) JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M AABB Pool Size: 3686 (206416 bytes; 0 MB) allocated, 3289 (184184 bytes; 0 MB) used Suspicious classes: FML and Forge are installed IntCache: cache: 0, tcache: 0, allocated: 1, tallocated: 63 FML: MCP v8.11 FML v6.4.30.933 Minecraft Forge 9.11.1.933 4 mods loaded, 4 mods active mcp{8.09} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available FML{6.4.30.933} [Forge Mod Loader] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available Forge{9.11.1.933} [Minecraft Forge] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available oBlox{0.0.1} [OmniBlox] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available Profiler Position: N/A (disabled) Vec3 Pool Size: 1264 (70784 bytes; 0 MB) allocated, 1047 (58632 bytes; 0 MB) used Player Count: 1 / 8; [EntityPlayerMP['PigsDropBacon'/178, l='defualt test type', x=341.70, y=34.00, z=44.70]] Type: Integrated Server (map_client.txt) Is Modded: Definitely; Client brand changed to 'fml,forge' Quote -OmniArcher-
Draco18s Posted October 25, 2013 Posted October 25, 2013 Ok, now show us the class BlockRedTrintiumOre Quote Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
OmniArcher Posted October 25, 2013 Author Posted October 25, 2013 Ok, now show us the class BlockRedTrintiumOre Sorry, probably shoulda put this link up top in the first place. - https://github.com/OmniArcher/OmniBlox Quote -OmniArcher-
MineMaarten Posted October 26, 2013 Posted October 26, 2013 You haven't updated your GitHub with the code that's causing you problems. Quote Author of PneumaticCraft, MineChess, Minesweeper Mod and Sokoban Mod. Visit www.minemaarten.com to take a look at them.
Draco18s Posted October 26, 2013 Posted October 26, 2013 at oBlox.block.BlockRedTrintiumOre.idDropped(BlockRedTrintiumOre.java:20) Lets see, line 20... package oBlox.block; import java.util.Random; import oBlox.item.ModItems; import net.minecraft.block.Block; import net.minecraft.block.material.Material; public class BlockRedTrintiumOre extends Block { public BlockRedTrintiumOre(int id) { super(id, Material.rock); this.setUnlocalizedName("Red Trintium Ore"); } } Your code only goes up to line 17. And does not contain an idDropped method. Quote Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
OmniArcher Posted October 26, 2013 Author Posted October 26, 2013 I removed the idDropped method when I updated the github, just relized that, sorry. Heres the code for the block. package oBlox.block; import oBlox.lib.ItemIds; import net.minecraft.block.Block; import net.minecraft.block.material.Material; public class BlockRedTrintiumOre extends Block { public BlockRedTrintiumOre(int id) { super(id, Material.rock); this.idDropped(ItemIds.REDTCRYSTAL_DEFAULT, null, id); this.setUnlocalizedName("Red Trintium Ore"); } } EDIT- this is what I have at the moment, I'm going to debug right now and most likely post a crash report in a few minutes Quote -OmniArcher-
MineMaarten Posted October 26, 2013 Posted October 26, 2013 You need to override that method, not call it. So in you block class add: public int quantityDropped(Random par1Random) { return 5; } If you want to drop 5 items. That method will be called by others. Quote Author of PneumaticCraft, MineChess, Minesweeper Mod and Sokoban Mod. Visit www.minemaarten.com to take a look at them.
OmniArcher Posted October 26, 2013 Author Posted October 26, 2013 No crash but it didn't drop the item Quote -OmniArcher-
Draco18s Posted October 26, 2013 Posted October 26, 2013 I need the current code and the current problem before I can help you. Quote Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
OmniArcher Posted October 26, 2013 Author Posted October 26, 2013 This is what I have now after the overriding suggestion, does it look good? package oBlox.block; import java.util.Random; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import oBlox.item.ModItems; public class BlockRedTrintiumOre extends Block { public BlockRedTrintiumOre(int id) { super(id, Material.rock); this.setUnlocalizedName("Red Trintium Ore"); } @Override public int quantityDropped(Random par1Random) { return 6; } @Override public int idDropped(int par1, Random par2Random, int par3) { return ModItems.redTCrystal.itemID; } } Quote -OmniArcher-
OmniArcher Posted October 26, 2013 Author Posted October 26, 2013 Ignore the stuff on github atm, as I havnt updated yet, Im posting all my current code here Quote -OmniArcher-
OmniArcher Posted October 26, 2013 Author Posted October 26, 2013 Tried that and when breaking block, crashed ---- Minecraft Crash Report ---- // I'm sorry, Dave. Time: 10/25/13 8:20 PM Description: Ticking memory connection java.lang.NullPointerException at oBlox.block.BlockRedTrintiumOre.idDropped(BlockRedTrintiumOre.java:28) at net.minecraft.block.Block.getBlockDropped(Block.java:1831) at net.minecraft.block.Block.dropBlockAsItemWithChance(Block.java:721) at net.minecraft.block.Block.dropBlockAsItem(Block.java:711) at net.minecraft.block.Block.harvestBlock(Block.java:1142) at net.minecraft.item.ItemInWorldManager.tryHarvestBlock(ItemInWorldManager.java:338) at net.minecraft.item.ItemInWorldManager.onBlockClicked(ItemInWorldManager.java:206) at net.minecraft.network.NetServerHandler.handleBlockDig(NetServerHandler.java:493) at net.minecraft.network.packet.Packet14BlockDig.processPacket(Packet14BlockDig.java:67) at net.minecraft.network.MemoryConnection.processReadPackets(MemoryConnection.java:89) at net.minecraft.network.NetServerHandler.networkTick(NetServerHandler.java:141) at net.minecraft.network.NetworkListenThread.networkTick(NetworkListenThread.java:54) at net.minecraft.server.integrated.IntegratedServerListenThread.networkTick(IntegratedServerListenThread.java:109) at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:691) at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:587) at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:129) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:484) at net.minecraft.server.ThreadMinecraftServer.run(ThreadMinecraftServer.java:16) A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Stacktrace: at oBlox.block.BlockRedTrintiumOre.idDropped(BlockRedTrintiumOre.java:28) at net.minecraft.block.Block.getBlockDropped(Block.java:1831) at net.minecraft.block.Block.dropBlockAsItemWithChance(Block.java:721) at net.minecraft.block.Block.dropBlockAsItem(Block.java:711) at net.minecraft.block.Block.harvestBlock(Block.java:1142) at net.minecraft.item.ItemInWorldManager.tryHarvestBlock(ItemInWorldManager.java:338) at net.minecraft.item.ItemInWorldManager.onBlockClicked(ItemInWorldManager.java:206) at net.minecraft.network.NetServerHandler.handleBlockDig(NetServerHandler.java:493) at net.minecraft.network.packet.Packet14BlockDig.processPacket(Packet14BlockDig.java:67) at net.minecraft.network.MemoryConnection.processReadPackets(MemoryConnection.java:89) at net.minecraft.network.NetServerHandler.networkTick(NetServerHandler.java:141) -- Ticking connection -- Details: Connection: net.minecraft.network.NetServerHandler@3c25a937 Stacktrace: at net.minecraft.network.NetworkListenThread.networkTick(NetworkListenThread.java:54) at net.minecraft.server.integrated.IntegratedServerListenThread.networkTick(IntegratedServerListenThread.java:109) at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:691) at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:587) at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:129) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:484) at net.minecraft.server.ThreadMinecraftServer.run(ThreadMinecraftServer.java:16) -- System Details -- Details: Minecraft Version: 1.6.4 Operating System: Windows 7 (amd64) version 6.1 Java Version: 1.7.0_10, Oracle Corporation Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation Memory: 809391264 bytes (771 MB) / 1056309248 bytes (1007 MB) up to 1056309248 bytes (1007 MB) JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M AABB Pool Size: 3495 (195720 bytes; 0 MB) allocated, 3146 (176176 bytes; 0 MB) used Suspicious classes: FML and Forge are installed IntCache: cache: 0, tcache: 0, allocated: 3, tallocated: 63 FML: MCP v8.11 FML v6.4.30.933 Minecraft Forge 9.11.1.933 4 mods loaded, 4 mods active mcp{8.09} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available FML{6.4.30.933} [Forge Mod Loader] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available Forge{9.11.1.933} [Minecraft Forge] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available oBlox{0.0.1} [OmniBlox] (bin) Unloaded->Constructed->Pre-initialized->Initialized->Post-initialized->Available->Available->Available->Available Profiler Position: N/A (disabled) Vec3 Pool Size: 1324 (74144 bytes; 0 MB) allocated, 1094 (61264 bytes; 0 MB) used Player Count: 1 / 8; [EntityPlayerMP['PigsDropBacon'/180, l='defualt test type', x=341.70, y=34.00, z=44.54]] Type: Integrated Server (map_client.txt) Is Modded: Definitely; Client brand changed to 'fml,forge' Quote -OmniArcher-
Draco18s Posted October 26, 2013 Posted October 26, 2013 Do this: @Override public int idDropped(int par1, Random par2Random, int par3) { System.out.println("About to crash, ModItems: " + ModItems); System.out.println("About to crash, redTCrystal: " + ModItems.redTCrystal); System.out.println("About to crash, itemID: " + ModItems.redTCrystal.itemID); return ModItems.redTCrystal.itemID; } Won't fix your problem, but it'll tell you which object is null. Quote Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
OmniArcher Posted October 26, 2013 Author Posted October 26, 2013 Im getting a redline under the first System.out.printLn, at the + ModItems Quote -OmniArcher-
Draco18s Posted October 26, 2013 Posted October 26, 2013 Right. Cause you can't do that. Sometimes I type stuff out and it doesn't work, just delete that line. I'm pretty sure we can be confident that the class exists. Quote Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
OmniArcher Posted October 26, 2013 Author Posted October 26, 2013 redTCrystal is null Quote -OmniArcher-
Draco18s Posted October 26, 2013 Posted October 26, 2013 Now figure out why and fix it. Quote Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
OmniArcher Posted October 26, 2013 Author Posted October 26, 2013 Ok this doesnt crash the game when I break the block package oBlox.block; import java.util.Random; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import oBlox.lib.ItemIds; public class BlockRedTrintiumOre extends Block { public BlockRedTrintiumOre(int id) { super(id, Material.rock); this.setHardness(2); this.setUnlocalizedName("Red Trintium Ore"); } @Override public int quantityDropped(Random par1Random) { return 6; } @Override public int idDropped(int par1, Random par2Random, int par3) { return ItemIds.REDTCRYSTAL_DEFAULT; } } But i don't get the items and the console prints this ""Attempted to add a EntityItem to the world with a invalid item: ID 2500 at (342.41, 34.68, 42.32), this is most likely a config issue between you and the server. Please double check your configs" Quote -OmniArcher-
MineMaarten Posted October 26, 2013 Posted October 26, 2013 And this ID you can get like how you did earlier: "ModItems.redTCrystal.itemID". The problem then was that redTCrystal was null. So find out why, because that's not normal. Probably you haven't initialized your item (redTCrystal = new Item....). Quote Author of PneumaticCraft, MineChess, Minesweeper Mod and Sokoban Mod. Visit www.minemaarten.com to take a look at them.
OmniArcher Posted October 26, 2013 Author Posted October 26, 2013 I'd like to thank everyone that posted, and Id like to say that I got it working thanks to everyone's help The code will be updated on github in a while after I add the rest of the items and oreGen, and ill possibly make textures first too Quote -OmniArcher-
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.