Closed Cervator closed 6 years ago
For Rails I need to check diagnol block but the : https://github.com/MovingBlocks/Terasology/blob/develop/engine/src/main/java/org/terasology/world/block/entity/neighbourUpdate/NeighbourBlockFamilyUpdateSystem.java
only checks in the 4 cardinal directions. What could be done to extend this. I was thinking of either adding more to: https://github.com/MovingBlocks/Terasology/blob/develop/engine/src/main/java/org/terasology/world/block/family/UpdatesWithNeighboursFamily.java or just having the NeighbourBlockFamilyUpdateSystem check all directions in the 3x3 area around a given block.
Changing current functionality could both cause unforeseen bugs and performance issues, I think its most appropriate to create a custom extended system.
what do you suggest. Do you want me to remove the implementation of UpdatesWithNeighboursFamily from multi-connect and let people implement it from there.
A more general or abstracted implementation could be appropriate, but I was just thinking a separate implementation for rails with the expanded checking.
I'm not sure what you mean specifically. I see a couple options I could go from here. I could add an additional getter function that denotes which blocks to update or just remove the implementation from multi-connect. The implementation could also be denoted in block.java. Something that also occurred to me is implement this as a component.
The main problem is that block updates don't at the moment work diagonally. I can't really see a problem with having them work that way. Might just be better update all the blocks in a 3x3 area around a given block in NeighbourBlockFamilyUpdateSystem.
Removing Blocker from this issue as a pile of fixes have been done. special thanks to @pollend and @Josharias for most of them! :-)
The short-term fix for Rails is in place, then we can start another iteration on block family overhaul after Alpha 10 is merged to master shortly
Closing this as mostly done, splitting out / moving the remaining issues
Follow-up to #3343 to cover just the remaining problems to resolve before we can release v2.0.0, making this issue a Blocker, yay!
super
.tree
files in AWP still have the very verbose connection info in them, along with a block family reference. When I tried to delete all that the branches went to full trunk mode again. Huh?The more we can get fixed the better! Will roll what we can into an Alpha 10 / v2 Release Candidate for the play test in a week.
Maybe we can get some more help from @pollend @PS-Soundwave @Steampunkery @anuar2k @NicholasBatesNZ ... who else? :-)
Oh! And all that didn't cover what was actually fixed, but could use more testing! The following modules were affected (in addition to the above):