package ar.com.companeros; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.MobCategory; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.entity.EntityAttributeCreationEvent; import net.minecraftforge.eventbus.api.IEventBus; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.ForgeRegistries; import net.minecraftforge.registries.RegistryObject; @Mod(Companeros.ID) public final class Companeros { public static final String ID = "companeros"; private static final DeferredRegister> ENTITIES = DeferredRegister.create(ForgeRegistries.ENTITY_TYPES, ID); public static final RegistryObject> COMPANION = ENTITIES.register("companero", () -> EntityType.Builder.of(Companion::new, MobCategory.CREATURE) .sized(0.6F, 1.8F).clientTrackingRange(10).build(ID + ":companero")); // Registro del mod: el cerebro y las modificaciones del mundo viven en el servidor. public Companeros() { IEventBus bus = FMLJavaModLoadingContext.get().getModEventBus(); ENTITIES.register(bus); ar.com.companeros.flags.BannerLootModifier.register(bus); ar.com.companeros.horror.HorrorModule.register(bus); bus.addListener(this::attributes); bus.addListener(this::loaded); MinecraftForge.EVENT_BUS.addListener(Commands::register); MinecraftForge.EVENT_BUS.addListener(WorkArea::recordPlacement); ar.com.companeros.body.PlayerSessions.install(); ar.com.companeros.identity.SkinProfiles.install(); ar.com.companeros.horror.HorrorModule.install(); ar.com.companeros.horror.HorrorSpeech.install(); ar.com.companeros.runtime.AgentRuntime.install(); ar.com.companeros.social.AgentCommunication.install(); MinecraftForge.EVENT_BUS.addListener(ar.com.companeros.social.AdminChannel::register); MinecraftForge.EVENT_BUS.addListener(net.minecraftforge.eventbus.api.EventPriority.HIGHEST, ar.com.companeros.social.AdminChannel::chat); } private void attributes(EntityAttributeCreationEvent event) { event.put(COMPANION.get(), Companion.attributes().build()); } private void loaded(net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent event) { com.mojang.logging.LogUtils.getLogger().info("Raps cargado."); } }