Volver al índice
src/main/java/ar/com/companeros/Companeros.java
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<EntityType<?>> ENTITIES =
DeferredRegister.create(ForgeRegistries.ENTITY_TYPES, ID);
public static final RegistryObject<EntityType<Companion>> 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.");
}
}