Jump to content

API for custom mob interaction with chest or any item/tile.


clowcadia

Recommended Posts

I am just doing some research and i have not found an answer to my problem through tutorials or posts on any modding community.

I am not even born into the modding of mine craft, as i am sudo coding what i want to do.

I have taken a look at modding custom mob ai and my finding are very vague.

 

I am looking for a way to have a custom mob/npc to interact with a chest or anything i can provide it. And i am concerned that based on my findings there is no specific api for this, and yet mods like computer craft and thaumcraft have turtles and golems interact with storage all the time.

My assumption though is that the interact command for player can be also used with custom mobs.

Please explain me the basic concept for this issue, i do not need a step by by step instructions, all though if there are tutorial related to this i would gladly take a look.

As I said this is a sudo-research before i get my hands dirty.

ps. i am aiming to create a mob that is like a turtle from computer craft that will return to a chest once it has done gathering/harvesting a full mob inventory. also that will use another storage as a fuel source in my case food source

Link to comment
Share on other sites

You would need to create a FakePlayer for things that require a EntityPlayer, and for Chests and other inventories you would have to access those via the TE in the world.

  • Like 1

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Link to comment
Share on other sites

What do you mean by TE, and i did some research on fake player, is it just one entity to be responsible for the mod entity actions?

 

as well as i had an idea, would it be better if items where swapped between inventory if an entity was present adjasent to a container item/tile

Link to comment
Share on other sites

You can interact with inventories using the IItemHandler capability on a Block's TileEntity. You can read more about capabilities here.

 

And no, you don't need a fake player or other entity next to the inventories for them to work.

  • Like 1

Don't PM me with questions. They will be ignored! Make a thread on the appropriate board for support.

 

1.12 -> 1.13 primer by williewillus.

 

1.7.10 and older versions of Minecraft are no longer supported due to it's age! Update to the latest version for support.

 

http://www.howoldisminecraft1710.today/

Link to comment
Share on other sites

Well, you'd still call TileEntity#hasCapability/TileEntity#getCapability the same way, you'd just have to get the TileEntity to interact in a different way, which is probably just the Block in front of the Entity.

  • Like 1

Don't PM me with questions. They will be ignored! Make a thread on the appropriate board for support.

 

1.12 -> 1.13 primer by williewillus.

 

1.7.10 and older versions of Minecraft are no longer supported due to it's age! Update to the latest version for support.

 

http://www.howoldisminecraft1710.today/

Link to comment
Share on other sites

53 minutes ago, clowcadia said:

Ok I just realized, how would all this be applied with Entity AI, adding tasks and all?

You would just do all of the functionality in the Entities AI.

 

I would like to clarify something, when I said you will need a FakePlayer I meant for if you want to break a block and have it's affects like that of a EntityPlayer doing it.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Link to comment
Share on other sites

Oh, slightly more confused.

I am simply trying to find a way to have mobEntity to be able to interact with an inventory object, whether is directly like a player with a chest to insert or withdraw items, or by special code maybe through an event that will alter the mobEntety inventory and object inventory.

As I am looking through mobEntity ai, tasks are limited to a point direct interaction is not possible, unless Capabilities can alter the behaviour that allows that.

Link to comment
Share on other sites

Entity AI tasks have access to the Entity they're acting on.

Entities have a World object and a Position.

World object + Position -> Get block, tile entity, and capabilities.

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.

Link to comment
Share on other sites

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.