diff --git a/api/src/main/java/com/viaversion/viaversion/api/data/entity/EntityTracker.java b/api/src/main/java/com/viaversion/viaversion/api/data/entity/EntityTracker.java index c24da722c..986f3ded2 100644 --- a/api/src/main/java/com/viaversion/viaversion/api/data/entity/EntityTracker.java +++ b/api/src/main/java/com/viaversion/viaversion/api/data/entity/EntityTracker.java @@ -73,6 +73,7 @@ public interface EntityTracker { * * @param id entity id * @return stored entity data if an entity with the id is tracked, else null + * @throws IllegalArgumentException if entitiy data storage has not been enabled via the implementation */ @Nullable StoredEntityData entityData(int id); @@ -81,6 +82,7 @@ public interface EntityTracker { * * @param id entity id * @return stored entity data if it has previously been initialized by {@link #entityData(int)} + * @throws IllegalArgumentException if entitiy data storage has not been enabled via the implementation */ @Nullable StoredEntityData entityDataIfPresent(int id); diff --git a/api/src/main/java/com/viaversion/viaversion/api/legacy/bossbar/BossFlag.java b/api/src/main/java/com/viaversion/viaversion/api/legacy/bossbar/BossFlag.java index 7b958f6eb..bfaecf800 100644 --- a/api/src/main/java/com/viaversion/viaversion/api/legacy/bossbar/BossFlag.java +++ b/api/src/main/java/com/viaversion/viaversion/api/legacy/bossbar/BossFlag.java @@ -25,7 +25,8 @@ package com.viaversion.viaversion.api.legacy.bossbar; public enum BossFlag { DARKEN_SKY(1), - PLAY_BOSS_MUSIC(2); + PLAY_BOSS_MUSIC(2), + CREATE_FOG(4); private final int id; diff --git a/common/src/main/java/com/viaversion/viaversion/data/entity/EntityTrackerBase.java b/common/src/main/java/com/viaversion/viaversion/data/entity/EntityTrackerBase.java index a3e72184f..8f6841c56 100644 --- a/common/src/main/java/com/viaversion/viaversion/data/entity/EntityTrackerBase.java +++ b/common/src/main/java/com/viaversion/viaversion/data/entity/EntityTrackerBase.java @@ -70,12 +70,14 @@ public class EntityTrackerBase implements EntityTracker, ClientEntityIdChangeLis @Override public @Nullable StoredEntityData entityData(int id) { + Preconditions.checkArgument(entityData != null, "Entity data storage has to be explicitly enabled via the constructor"); EntityType type = entityType(id); return type != null ? entityData.computeIfAbsent(id, s -> new StoredEntityImpl(type)) : null; } @Override public @Nullable StoredEntityData entityDataIfPresent(int id) { + Preconditions.checkArgument(entityData != null, "Entity data storage has to be explicitly enabled via the constructor"); return entityData.get(id); }