Posted May 1, 201510 yr So I've got another question. I've got an entity that's meant to poop every now and then. That bit works. It's just that I can't seem to make it manufacture the little poop block that I have made. The block appears fine in world and everything, it's just that I can't get worldObj.setBlock() to do anything. Here's the code for setting it: public void Poop() { if(!worldObj.isRemote) { System.out.println("Pooping!"); worldObj.setBlock((int)posX, (int)posY, (int)posZ, new GotchiPoopBlock()); worldObj.markBlockForUpdate((int)posX, (int)posY, (int)posZ); m_Needs.SatisfyNeed("Poop", 100); } } What am I doing wrong?
May 1, 201510 yr Register your block somewhere and public void Poop() { if(!worldObj.isRemote) { System.out.println("Pooping!"); worldObj.setBlock((int)posX, (int)posY, (int)posZ, Whereitsregistered.yourpoopblock); worldObj.markBlockForUpdate((int)posX, (int)posY, (int)posZ); m_Needs.SatisfyNeed("Poop", 100); } } I think lol I'm beginner in java and in minecraft modding. Please be specific. Any code examples are appreciated. Sorry for my english i'm from Czech republic. Please hit that thank you button if i helped
May 1, 201510 yr Author Never ever make a new Block instance outside of preInit. It shows that you completely misunderstood how Blocks work. Sorry for my ignorance. Register your block somewhere and public void Poop() { if(!worldObj.isRemote) { System.out.println("Pooping!"); worldObj.setBlock((int)posX, (int)posY, (int)posZ, [b]Whereitsregistered.yourpoopblock[/b]); worldObj.markBlockForUpdate((int)posX, (int)posY, (int)posZ); m_Needs.SatisfyNeed("Poop", 100); } } I think lol That fixed it! Thank you both so much, I'm learning a lot by asking questions here. I think I'll hit some more basic tutorials.
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.