
A Tiny Lib for simple creation of Multiblocks
Meant as blocks that that contain multiple blocks of itself, but still act like 1 block (for example a bed, door etc...) not to be confused with multiblock structures!!
(Since it's a lib, there's no point to download it by itself)
Features
Super simple
creating a multiblock of any size can be done just by overriding a single method and adding a block entity. All breaking and placing logic is done for you.
Jar-in-Jar -able
Because I hate dowloading thousands of dependencies for each mod, the whole lib is intended as a jar-in-jar, meaning it gets included in your mod jar and players won't have to download any extra dependencies
Multiblock Previews
Allows devs to enable placement previews for specific multiblocks. When a player holds that multiblock in hand, it renders a transparent client-side preview of the multiblock (see the picture in gallery)
Synced Blockstates
Allows registering blockstates that automatically sync across the whole multiblock when updated, great for mod compatibility
Quick support
If you're a developer and have some issues / suggestions, just dm me on discord or github and I pinky promise to get back to you as soon as I can (unless you live in the USA and it's like 3AM for me😬)
Installation instructions
(Everything is in your build.gradle file)
first get the modrinth maven repository url and put into your repository block. Next add the mod as a jar-in-jar into your dependencies block based on your modloader:
(note that the lib version here might be outdated, just replace it with the newest one)
Neoforge MDG or NG
    jarJar(implementation(group: "maven.modrinth", name:"tiny-multiblock-lib", version:"neo-1.21.1-2.0"){
        version {
            strictly('[neo-1.21.1-2.0,)')
        }
    })
    
Forge FG
- enable jarjar by adding jarJar.enable()anywhere before your minecraft block
- add this line into dependencies:
implementation(fg.deobf(jarJar(group: 'maven.modrinth', name: 'tiny-multiblock-lib', version: 'forge-1.20.1-2.0')))
Forge MDGL
    jarJar(modImplementation(group: "maven.modrinth", name:"tiny-multiblock-lib", version:"forge-1.20.1-2.0"){
        version {
            strictly('[forge-1.20.1-2.0,)')
        }
    })
Fabric
modImplementation(include(maven.modrinth:tiny-multiblock-lib:fabric-1.20.1-2.0))
Multiloader
The whole lib is coded in multiloader and anything you'd want to reference is common, meaning you can just add any version as a common dependency, then add the jar in jar into each loader separately
Planned Features
- Movable multiblocks with piston support and moving animation
- General stability improvements
- Simple Multiblock structures: have each blocks BE hold a regular block, then place it when the multiblock is destoroyed
- Multiblocks with optional blocks in its shape