Skip to content

Entities API - #86

Open
SpaceWalkerRS wants to merge 3 commits into
gen2from
entities
Open

Entities API#86
SpaceWalkerRS wants to merge 3 commits into
gen2from
entities

Conversation

@SpaceWalkerRS

Copy link
Copy Markdown
Member

Basic APIs for registering entity types and entity renderers.

Registering Entity Types

package com.example;

import net.ornithemc.osl.entities.api.EntityEvents;
import net.ornithemc.osl.entrypoints.api.ModInitializer;

public class ExampleInitializer implements ModInitializer {

	@Override
	public void init() {
		EntityEvents.REGISTER_ENTITY_TYPES.register(ExampleEntityTypes::init);
	}
}
package com.example;

import net.minecraft.entity.EntityType;
import net.minecraft.entity.living.MobCategory;

import net.ornithemc.osl.entities.api.EntityTypeRegistry;
import net.ornithemc.osl.entities.api.EntityTypes;
import net.ornithemc.osl.core.util.NamespacedIdentifiers;

public final class ExampleEntityTypes {

	public static final EntityType<CookieMonsterEntity> COOKIE_MONSTER = EntityTypeRegistry.register(NamespacedIdentifiers.from("example", "cookie_monster"), EntityTypes.builder(CookieMonsterEntity::new, MobCategory.MISC));

	public static void init() {
	}
}

Registering Entity Renderers

package com.example;

import net.ornithemc.osl.entities.api.client.EntityRenderingEvents;
import net.ornithemc.osl.entrypoints.api.client.ClientModInitializer;

public class ExampleInitializer implements ClientModInitializer {

	@Override
	public void initClient() {
		EntityRenderingEvents.REGISTER_ENTITY_RENDERERS.register(registry -> {
			registry.register(CookieMonsterEntity.class, CookieMonsterRenderer::new);
		});
	}
}

@SpaceWalkerRS SpaceWalkerRS added the enhancement New feature or request label Sep 9, 2026
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