Class LootManager

java.lang.Object
net.minecraft.loot.LootManager
All Implemented Interfaces:
class_8489, ResourceReloader

public class LootManager extends Object implements ResourceReloader, class_8489
Mappings:
Namespace Name
official dyz
intermediary net/minecraft/class_60
named net/minecraft/loot/LootManager
  • Field Details

    • LOGGER

      private static final Logger LOGGER
      Mappings:
      Namespace Name Mixin selector
      official b Ldyz;b:Lorg/slf4j/Logger;
      intermediary field_975 Lnet/minecraft/class_60;field_975:Lorg/slf4j/Logger;
      named LOGGER Lnet/minecraft/loot/LootManager;LOGGER:Lorg/slf4j/Logger;
    • field_44491

      public static final class_8488<LootTable> field_44491
      Mappings:
      Namespace Name Mixin selector
      official a Ldyz;a:Ldyy;
      intermediary field_44491 Lnet/minecraft/class_60;field_44491:Lnet/minecraft/class_8488;
      named field_44491 Lnet/minecraft/loot/LootManager;field_44491:Lnet/minecraft/class_8488;
    • field_44492

      private Map<class_8488<?>,?> field_44492
      Mappings:
      Namespace Name Mixin selector
      official c Ldyz;c:Ljava/util/Map;
      intermediary field_44492 Lnet/minecraft/class_60;field_44492:Ljava/util/Map;
      named field_44492 Lnet/minecraft/loot/LootManager;field_44492:Ljava/util/Map;
    • field_44493

      private Multimap<class_8490<?>,Identifier> field_44493
      Mappings:
      Namespace Name Mixin selector
      official d Ldyz;d:Lcom/google/common/collect/Multimap;
      intermediary field_44493 Lnet/minecraft/class_60;field_44493:Lcom/google/common/collect/Multimap;
      named field_44493 Lnet/minecraft/loot/LootManager;field_44493:Lcom/google/common/collect/Multimap;
  • Constructor Details

    • LootManager

      public LootManager()
  • Method Details

    • reload

      public final CompletableFuture<Void> reload(ResourceReloader.Synchronizer synchronizer, ResourceManager manager, Profiler prepareProfiler, Profiler applyProfiler, Executor prepareExecutor, Executor applyExecutor)
      Performs a reload. Returns a future that is completed when the reload is completed.

      In a reload, there is a prepare stage and an apply stage. For the prepare stage, you should create completable futures with CompletableFuture.supplyAsync(..., prepareExecutor) to ensure the prepare actions are done with the prepare executor. Then, you should have a completable future for all the prepared actions, and call combinedPrepare.thenCompose(synchronizer::waitFor) to notify the synchronizer. Finally, you should run CompletableFuture.thenAcceptAsync(..., applyExecutor) for apply actions. In the end, returns the result of thenAcceptAsync.

      Specified by:
      reload in interface ResourceReloader
      Parameters:
      synchronizer - the synchronizer
      manager - the resource manager
      prepareProfiler - the profiler for prepare stage
      applyProfiler - the profiler for apply stage
      prepareExecutor - the executor for prepare stage
      applyExecutor - the executor for apply stage
      Returns:
      a future for the reload
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Lakn;a(Lakn$a;Lakt;Lbae;Lbae;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture;
      intermediary method_25931 Lnet/minecraft/class_3302;method_25931(Lnet/minecraft/class_3302$class_4045;Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;Lnet/minecraft/class_3695;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture;
      named reload Lnet/minecraft/resource/ResourceReloader;reload(Lnet/minecraft/resource/ResourceReloader$Synchronizer;Lnet/minecraft/resource/ResourceManager;Lnet/minecraft/util/profiler/Profiler;Lnet/minecraft/util/profiler/Profiler;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture;
    • method_51194

      private static <T> CompletableFuture<?> method_51194(class_8490<T> class_8490, ResourceManager resourceManager, Executor executor, Map<class_8490<?>,Map<Identifier,?>> map)
      Mappings:
      Namespace Name Mixin selector
      official a Ldyz;a(Ldzb;Lakt;Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletableFuture;
      intermediary method_51194 Lnet/minecraft/class_60;method_51194(Lnet/minecraft/class_8490;Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletableFuture;
      named method_51194 Lnet/minecraft/loot/LootManager;method_51194(Lnet/minecraft/class_8490;Lnet/minecraft/resource/ResourceManager;Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletableFuture;
    • method_20712

      private void method_20712(Map<class_8490<?>,Map<Identifier,?>> map)
      Mappings:
      Namespace Name Mixin selector
      official a Ldyz;a(Ljava/util/Map;)V
      intermediary method_20712 Lnet/minecraft/class_60;method_20712(Ljava/util/Map;)V
      named method_20712 Lnet/minecraft/loot/LootManager;method_20712(Ljava/util/Map;)V
    • method_51196

      private static <T> void method_51196(LootTableReporter lootTableReporter, class_8488<T> class_8488, Object object)
      Mappings:
      Namespace Name Mixin selector
      official a Ldyz;a(Ldzg;Ldyy;Ljava/lang/Object;)V
      intermediary method_51196 Lnet/minecraft/class_60;method_51196(Lnet/minecraft/class_58;Lnet/minecraft/class_8488;Ljava/lang/Object;)V
      named method_51196 Lnet/minecraft/loot/LootManager;method_51196(Lnet/minecraft/loot/LootTableReporter;Lnet/minecraft/class_8488;Ljava/lang/Object;)V
    • getElement

      @Nullable public <T> T getElement(class_8488<T> class_8488)
      Specified by:
      getElement in interface class_8489
    • method_51193

      public Collection<Identifier> method_51193(class_8490<?> class_8490)
      Mappings:
      Namespace Name Mixin selector
      official a Ldyz;a(Ldzb;)Ljava/util/Collection;
      intermediary method_51193 Lnet/minecraft/class_60;method_51193(Lnet/minecraft/class_8490;)Ljava/util/Collection;
      named method_51193 Lnet/minecraft/loot/LootManager;method_51193(Lnet/minecraft/class_8490;)Ljava/util/Collection;
    • method_51201

      public static LootCondition method_51201(LootCondition[] lootCondition)
      Mappings:
      Namespace Name Mixin selector
      official a Ldyz;a([Lebt;)Lebt;
      intermediary method_51201 Lnet/minecraft/class_60;method_51201([Lnet/minecraft/class_5341;)Lnet/minecraft/class_5341;
      named method_51201 Lnet/minecraft/loot/LootManager;method_51201([Lnet/minecraft/loot/condition/LootCondition;)Lnet/minecraft/loot/condition/LootCondition;
    • method_51200

      public static LootFunction method_51200(LootFunction[] lootFunction)
      Mappings:
      Namespace Name Mixin selector
      official a Ldyz;a([Leak;)Leak;
      intermediary method_51200 Lnet/minecraft/class_60;method_51200([Lnet/minecraft/class_117;)Lnet/minecraft/class_117;
      named method_51200 Lnet/minecraft/loot/LootManager;method_51200([Lnet/minecraft/loot/function/LootFunction;)Lnet/minecraft/loot/function/LootFunction;