Posted July 25, 20178 yr I added a new block to Minecraft and I was wondering if I could possibly give the player an effect while standing on said block. If it is possible, how would i go about setting it up?
July 25, 20178 yr Block#onEntityWalk is called when an entity (that can trigger walking) walks on top of a block. If a block has a collision bounding box smaller than a full block, Block#onEntityCollidedWithBlock is called when an entity collides with the block. You can override one of these two methods to check if the entity is an instance of EntityLivingBase and then use EntityLivingBase#addPotionEffect to add a potion effect to the entity. Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.
July 25, 20178 yr I will note, however, that onEntityWalk is not 100% reliable. 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.
July 25, 20178 yr How you have your block detect an entity depends on what area of effect you want. Do you want the effect if a player walks on top of a carpet laid on top of your block? If so, then you need to look beyond collision. If your block is going to be rare (not spawning by the thousands or millions in the world), then you could use a tile entity to do a short-range living entity search and apply the status effect to those you deem worthy. Alternatively, you could add randomness (and avoid using a TE) by setting your block to tick randomly and doing your short-range search then. You might find other ideas by looking at vanilla coding for beacons. The debugger is a powerful and necessary tool in any IDE, so learn how to use it. You'll be able to tell us more and get better help here if you investigate your runtime problems in the debugger before posting.
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.