Skip to content

Block Entities API - #85

Merged
SpaceWalkerRS merged 2 commits into
gen2from
blockentities
Oct 2, 2026
Merged

SpaceWalkerRS merged 2 commits into
gen2from
blockentities

Conversation

@SpaceWalkerRS

Copy link
Copy Markdown
Member

Basic APIs for registering block entity types and block entity renderers.

Registering Block Entity Types

package com.example;

import net.ornithemc.osl.blockentities.api.BlockEntityEvents;
import net.ornithemc.osl.entrypoints.api.ModInitializer;

public class ExampleInitializer implements ModInitializer {

	@Override
	public void init() {
		BlockEntityEvents.REGISTER_BLOCK_ENTITY_TYPES.register(ExampleBlockEntityTypes::init);
	}
}
package com.example;

import net.minecraft.block.entity.BlockEntityType;

import net.ornithemc.osl.blockentities.api.BlockEntityTypeRegistry;
import net.ornithemc.osl.blockentities.api.BlockEntityTypes;
import net.ornithemc.osl.core.util.NamespacedIdentifiers;

public final class ExampleBlockEntityTypes {

	public static final BlockEntityType<CookieBlockEntity> COOKIE = BlockEntityTypeRegistry.register(NamespacedIdentifiers.from("example", "cookie"), BlockEntityTypes.builder(CookieBlockEntity::new, ExampleBlocks.COOKIE));

	public static void init() {
	}
}

Registering Block Entity Renderers

package com.example;

import net.ornithemc.osl.blockentities.api.client.BlockEntityRenderingEvents;
import net.ornithemc.osl.entrypoints.api.client.ClientModInitializer;

public class ExampleInitializer implements ClientModInitializer {

	@Override
	public void initClient() {
		BlockEntityRenderingEvents.REGISTER_BLOCK_ENTITY_RENDERERS.register(registry -> {
			registry.register(CookieBlockEntity.class, CookieBlockRenderer::new);
		});
	}
}

@SpaceWalkerRS SpaceWalkerRS added the enhancement New feature or request label Sep 9, 2026
@SpaceWalkerRS
SpaceWalkerRS merged commit 19ba899 into gen2 Oct 2, 2026
2 checks passed
@SpaceWalkerRS
SpaceWalkerRS deleted the blockentities branch October 2, 2026 13:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant