Minecolonies Structurize extraction

in utopian-io •  3 months ago

A while ago I had presented Structurize which is an extraction + some additional features of the structure handling of Minecolonies.

But, I actually never removed the code of Minecolonies itself and use Structurize as a dependency.

This is important because this way we have less code in Minecolonies and only very Minecolonies specific code there and when we want to fix something we don't have to fix it in both repositories.

Now, the code for that won't tell you very much about what I actually did and it is also difficult to explain

We removed over 24k lines of structure handling and had to add over 320 lines only on the side of minecolonies for the compatibility.

In the Gradle dependencies, we added structurize.

And added a configuration to include it in the jar.

In the jar code, we would not include the structure source-set anymore (doesn't exist anymore) and would now include the configuration details we included.

One of the compatibility changes I had to make was overriding the right click event of the build tool (which is now a structurize item) to still open the minecolonies build tool window (which extends the structure window) which is necessary since we don't have building handling of minecolonies building in structurize.

On the side of Structurize, I added the IAnchorBlock interface.

Which minecolonies blocks can implement so that structures are centered around them.

This is important because minecolonies structures rotate around the hut chest, the hut chest is considered the center of the building and it will be placed where the player clicked.

Finally, I also added a way to port the minecolonies blocks to structurize blocks.

This way minecolonies decorative blocks which would else disappear from the world (since excluded from minecolonies) will be remapped to the structurize blocks.

Repository:

https://github.com/ldtteam

Pull Requests on Minecolonies:

https://github.com/MinecraftForge/MinecraftForge/issues/5268

Structurize commits:

https://github.com/ldtteam/Structurize/commit/4f3d1a7126ff6830f73f730e0658df8fcafe988f
https://github.com/ldtteam/Structurize/commit/4c39f5296a0038f36610ec9ac12fe48e3301c858
https://github.com/ldtteam/Structurize/commit/5fea5437258ef74751d6e8a3bef6571c0263e772
https://github.com/ldtteam/Structurize/commit/8d40dd1dcc71572a722cf80d88bdd58531c74387
https://github.com/ldtteam/Structurize/commit/0d1b4e81859b394c1489f979430dc2ff0b6972c8

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  
  • Impressive, 24 thousand lines removed! That must feel good.
  • Post could have used a nice picture on top. Who does not love Minecraft screenshots?
  • Is this a bug fix or did you want to achieve more clarity?

Your contribution has been evaluated according to Utopian policies and guidelines, as well as a predefined set of questions pertaining to the category.

To view those questions and the relevant answers related to your post, click here.


Need help? Write a ticket on https://support.utopian.io/.
Chat with us on Discord.
[utopian-moderator]

·

It was for consistency since that's how we use it as well. Yeah, I was totally too lazy to turn on minecraft for a screenshot this time. The next posts will have an image, I promise!

·

Thank you for your review, @helo! Keep up the good work!

Hi, @raycoms!

You just got a 12.27% upvote from SteemPlus!
To get higher upvotes, earn more SteemPlus Points (SPP). On your Steemit wallet, check your SPP balance and click on "How to earn SPP?" to find out all the ways to earn.
If you're not using SteemPlus yet, please check our last posts in here to see the many ways in which SteemPlus can improve your Steem experience on Steemit and Busy.

Hi @raycoms!

Your post was upvoted by @steem-ua, new Steem dApp, using UserAuthority for algorithmic post curation!
Your post is eligible for our upvote, thanks to our collaboration with @utopian-io!
Feel free to join our @steem-ua Discord server

Hey, @raycoms!

Thanks for contributing on Utopian.
We’re already looking forward to your next contribution!

Get higher incentives and support Utopian.io!
Simply set @utopian.pay as a 5% (or higher) payout beneficiary on your contribution post (via SteemPlus or Steeditor).

Want to chat? Join us on Discord https://discord.gg/h52nFrV.

Vote for Utopian Witness!

Calling @originalworks :)
img credz: pixabay.com
Nice, you got a 100.0% @minnowbooster upgoat, thanks to @raycoms
BuildTeam wishes everyone a great Christmas and bullish Holidays
Want a boost? Minnowbooster's got your back!