diff --git a/api/src/main/java/me/tofaa/entitylib/APIConfig.java b/api/src/main/java/me/tofaa/entitylib/APIConfig.java index 3cba7e7..fe8bb25 100644 --- a/api/src/main/java/me/tofaa/entitylib/APIConfig.java +++ b/api/src/main/java/me/tofaa/entitylib/APIConfig.java @@ -2,7 +2,9 @@ import com.github.retrooper.packetevents.PacketEventsAPI; import com.github.retrooper.packetevents.manager.server.ServerVersion; +import me.tofaa.entitylib.container.EntityContainer; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; public final class APIConfig { @@ -13,6 +15,7 @@ public final class APIConfig { private boolean platformLogger = false; private boolean bstats = true; private boolean forceBundle = false; + private EntityContainer entityContainer; public APIConfig(PacketEventsAPI> packetEvents) { this.packetEvents = packetEvents; @@ -53,6 +56,11 @@ public APIConfig(PacketEventsAPI> packetEvents) { return this; } + public @NotNull APIConfig entityContainer(EntityContainer container) { + this.entityContainer = container; + return this; + } + public boolean isDebugMode() { return debugMode; } @@ -83,4 +91,9 @@ public boolean shouldForceBundles() { && EntityLib.getOptionalApi().get().getPacketEvents().getServerManager().getVersion().isNewerThanOrEquals(ServerVersion.V_1_19_4); } + @Nullable + public EntityContainer getEntityContainer() { + return this.entityContainer; + } + } diff --git a/common/src/main/java/me/tofaa/entitylib/common/AbstractEntityLibAPI.java b/common/src/main/java/me/tofaa/entitylib/common/AbstractEntityLibAPI.java index dd2922b..74efde8 100644 --- a/common/src/main/java/me/tofaa/entitylib/common/AbstractEntityLibAPI.java +++ b/common/src/main/java/me/tofaa/entitylib/common/AbstractEntityLibAPI.java @@ -21,13 +21,16 @@ public abstract class AbstractEntityLibAPI
implements EntityLibAPI platform, APIConfig settings) {
this.platform = platform;
this.packetEvents = settings.getPacketEvents();
this.settings = settings;
this.tickContainers = settings.shouldTickTickables() ? new HashSet<>() : Collections.emptyList();
+
+ EntityContainer container = settings.getEntityContainer();
+ this.defaultEntityContainer = container == null ? EntityContainer.basic() : container;
}
@Override