Class SimpleEntityLookup<T extends EntityLike>

java.lang.Object
net.minecraft.world.entity.SimpleEntityLookup<T>
Type Parameters:
T - the type of indexed entity
All Implemented Interfaces:
EntityLookup<T>

public class SimpleEntityLookup<T extends EntityLike> extends Object implements EntityLookup<T>
An implementation of entity lookup backed by two separate EntityIndex and SectionedEntityCache.

It's up to the user to ensure that the index and the cache are consistent with each other.

Mappings:
Namespace Name
named net/minecraft/world/entity/SimpleEntityLookup
intermediary net/minecraft/class_5578
official ech
  • Field Details

    • index

      private final EntityIndex<T extends EntityLike> index
      Mappings:
      Namespace Name Mixin selector
      named index Lnet/minecraft/world/entity/SimpleEntityLookup;index:Lnet/minecraft/world/entity/EntityIndex;
      intermediary field_27258 Lnet/minecraft/class_5578;field_27258:Lnet/minecraft/class_5570;
      official a Lech;a:Lebz;
    • cache

      private final SectionedEntityCache<T extends EntityLike> cache
      Mappings:
      Namespace Name Mixin selector
      named cache Lnet/minecraft/world/entity/SimpleEntityLookup;cache:Lnet/minecraft/world/entity/SectionedEntityCache;
      intermediary field_27259 Lnet/minecraft/class_5578;field_27259:Lnet/minecraft/class_5573;
      official b Lech;b:Lecc;
  • Constructor Details

    • SimpleEntityLookup

      public SimpleEntityLookup(EntityIndex<T> index, SectionedEntityCache<T> cache)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/world/entity/SimpleEntityLookup;<init>(Lnet/minecraft/world/entity/EntityIndex;Lnet/minecraft/world/entity/SectionedEntityCache;)V
      intermediary <init> Lnet/minecraft/class_5578;<init>(Lnet/minecraft/class_5570;Lnet/minecraft/class_5573;)V
      official <init> Lech;<init>(Lebz;Lecc;)V
  • Method Details

    • get

      @Nullable public T get(int id)
      Returns an entity by its network ID, or null if none is found.
      Specified by:
      get in interface EntityLookup<T extends EntityLike>
      Mappings:
      Namespace Name Mixin selector
      named get Lnet/minecraft/world/entity/EntityLookup;get(I)Lnet/minecraft/world/entity/EntityLike;
      intermediary method_31804 Lnet/minecraft/class_5577;method_31804(I)Lnet/minecraft/class_5568;
      official a Lecg;a(I)Lebx;
    • get

      @Nullable public T get(UUID uuid)
      Returns an entity by its UUID, or null if none is found.
      Specified by:
      get in interface EntityLookup<T extends EntityLike>
      Mappings:
      Namespace Name Mixin selector
      named get Lnet/minecraft/world/entity/EntityLookup;get(Ljava/util/UUID;)Lnet/minecraft/world/entity/EntityLike;
      intermediary method_31808 Lnet/minecraft/class_5577;method_31808(Ljava/util/UUID;)Lnet/minecraft/class_5568;
      official a Lecg;a(Ljava/util/UUID;)Lebx;
    • iterate

      public Iterable<T> iterate()
      Returns an unmodifiable iterable over all entities in this lookup.
      Specified by:
      iterate in interface EntityLookup<T extends EntityLike>
      Mappings:
      Namespace Name Mixin selector
      named iterate Lnet/minecraft/world/entity/EntityLookup;iterate()Ljava/lang/Iterable;
      intermediary method_31803 Lnet/minecraft/class_5577;method_31803()Ljava/lang/Iterable;
      official a Lecg;a()Ljava/lang/Iterable;
    • forEach

      public <U extends T> void forEach(TypeFilter<T,U> filter, LazyIterationConsumer<U> consumer)
      Performs an action on each entity of type U within this lookup.
      Specified by:
      forEach in interface EntityLookup<T extends EntityLike>
      Type Parameters:
      U - the type of entity to perform action on
      Parameters:
      filter - specifies the desired type of entity
      consumer - the consumer, additionally checking whether to perform the next iteration or to stop early
      Mappings:
      Namespace Name Mixin selector
      named forEach Lnet/minecraft/world/entity/EntityLookup;forEach(Lnet/minecraft/util/TypeFilter;Lnet/minecraft/util/function/LazyIterationConsumer;)V
      intermediary method_31806 Lnet/minecraft/class_5577;method_31806(Lnet/minecraft/class_5575;Lnet/minecraft/class_7927;)V
      official a Lecg;a(Lece;Layq;)V
    • forEachIntersects

      public void forEachIntersects(Box box, Consumer<T> action)
      Specified by:
      forEachIntersects in interface EntityLookup<T extends EntityLike>
      Mappings:
      Namespace Name Mixin selector
      named forEachIntersects Lnet/minecraft/world/entity/EntityLookup;forEachIntersects(Lnet/minecraft/util/math/Box;Ljava/util/function/Consumer;)V
      intermediary method_31807 Lnet/minecraft/class_5577;method_31807(Lnet/minecraft/class_238;Ljava/util/function/Consumer;)V
      official a Lecg;a(Lfbs;Ljava/util/function/Consumer;)V
    • forEachIntersects

      public <U extends T> void forEachIntersects(TypeFilter<T,U> filter, Box box, LazyIterationConsumer<U> consumer)
      Specified by:
      forEachIntersects in interface EntityLookup<T extends EntityLike>
      Mappings:
      Namespace Name Mixin selector
      named forEachIntersects Lnet/minecraft/world/entity/EntityLookup;forEachIntersects(Lnet/minecraft/util/TypeFilter;Lnet/minecraft/util/math/Box;Lnet/minecraft/util/function/LazyIterationConsumer;)V
      intermediary method_31805 Lnet/minecraft/class_5577;method_31805(Lnet/minecraft/class_5575;Lnet/minecraft/class_238;Lnet/minecraft/class_7927;)V
      official a Lecg;a(Lece;Lfbs;Layq;)V