Jump to content

[1.11] Multi-block checking process


AnZaNaMa

Recommended Posts

Hello, I'm attempting to make a multiblock structure so that the player can form it into whatever size of rectangular prism they want. I'm having difficulties in figuring out how I can check whether or not the multiblock is complete without it being a huge monster of a method that takes forever to run, since I would need to check it pretty often. Does anyone know how I may be able to do this? The real issue here is that I don't already know what the shape is going to be or where the controller for the multiblock will be placed.

- Just because things are the way they are doesn't mean they can't be the way you want them to be. Unless they're aspen trees. You can tell they're aspens 'cause the way they are.

Link to comment
Share on other sites

Are you planning to use a custom block?
If so, you only need to check if the multiblock is formed, when the block is placed, and check if the multiblock is no longer formed, when the block is broken.(thus, block placed = check if formed, block broken = check if malformed)
 

As you state rectangular prism, I'm gonna guess and say that this is a solid body we are talking about?
Have your custom blocks check for this one thing: How many neighbours (same blocktype) do I have? (you can put this in under random tick update)

 

If a block finds that it has 3 neighbours, it can either mean that it is a corner block, or is placed in a yet-fully-finished body.
Have the blocks with 3 neighbours (from now called corner blocks) convey their location to the "controller" you state you will use.

If there are 8 corner blocks, and they all connect to 3 others along each axis, you have a rectangular cuboid.
Now, either manually check if each block on the inside is there, or have the blocks on the inside convey their neighbour count to the "controller" (inside blocks should always have 6 neighbours, whilst edge blocks have 5)

Edited by Matryoshika
  • Like 1

Also previously known as eAndPi.

"Pi, is there a station coming up where we can board your train of thought?" -Kronnn

Published Mods: Underworld

Handy links: Vic_'s Forge events Own WIP Tutorials.

Link to comment
Share on other sites

There was another multiblock thread just last week, hunt it down and read it.

 

You may also reduce call frequency by creating a special item to activate your structure (the way a flint-steel lights a nether-portal).

  • Like 1

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.

Link to comment
Share on other sites

Thanks for your help. The whole corner block thing helps out. Also, I want the inside to be hollow anyway, so that makes it a bit simpler (it's a tank).

- Just because things are the way they are doesn't mean they can't be the way you want them to be. Unless they're aspen trees. You can tell they're aspens 'cause the way they are.

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.