BlockPlacementMaskRegistry class

Пакет: com.hypixel.hytale.server.worldgen.loader.prefab

Файл: com/hypixel/hytale/server/worldgen/loader/prefab/BlockPlacementMaskRegistry.java

extends: FileMaskCache<BlockMaskCondition>

Поля (4)

МодификаторыТипИмя
BlockMaskCondition var3
BlockMaskCondition.MaskEntry var3
BlockMaskCondition var4
BlockMaskCondition.MaskEntry var4

Методы (2)

МодификаторыВозвратСигнатура
if if(var4 != null)
if if(var4 != null)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.worldgen.loader.prefab;

class="kw">import com.hypixel.hytale.server.worldgen.loader.util.FileMaskCache;
class="kw">import com.hypixel.hytale.server.worldgen.util.ResolvedBlockArray;
class="kw">import com.hypixel.hytale.server.worldgen.util.condition.BlockMaskCondition;
class="kw">import it.unimi.dsi.fastutil.longs.Long2ObjectMap;
class="kw">import java.util.HashMap;
class="kw">import java.util.Map;
class="kw">import javax.annotation.Nonnull;

class="kw">public class BlockPlacementMaskRegistry class="kw">extends FileMaskCache<BlockMaskCondition> {
   @Nonnull
   class="kw">private class="kw">final Map<BlockMaskCondition, BlockMaskCondition> masks = new HashMap<>();
   @Nonnull
   class="kw">private class="kw">final Map<BlockMaskCondition.MaskEntry, BlockMaskCondition.MaskEntry> entries = new HashMap<>();
   class="kw">private BlockMaskCondition tempMask = new BlockMaskCondition();
   class="kw">private BlockMaskCondition.MaskEntry tempEntry = new BlockMaskCondition.MaskEntry();

   class="kw">public BlockPlacementMaskRegistry() {
   }

   @Nonnull
   class="kw">public BlockMaskCondition retainOrAllocateMask(@Nonnull BlockMaskCondition.Mask var1, @Nonnull Long2ObjectMap<BlockMaskCondition.Mask> var2) {
      BlockMaskCondition var3 = this.tempMask;
      var3.set(var1, var2);
      BlockMaskCondition var4 = this.masks.putIfAbsent(var3, var3);
      if (var4 != null) {
         class="kw">return var4;
      }

      this.tempMask = new BlockMaskCondition();
      class="kw">return var3;
   }

   @Nonnull
   class="kw">public BlockMaskCondition.MaskEntry retainOrAllocateEntry(@Nonnull ResolvedBlockArray var1, boolean var2) {
      BlockMaskCondition.MaskEntry var3 = this.tempEntry;
      var3.set(var1, var2);
      BlockMaskCondition.MaskEntry var4 = this.entries.putIfAbsent(var3, var3);
      if (var4 != null) {
         class="kw">return var4;
      }

      this.tempEntry = new BlockMaskCondition.MaskEntry();
      class="kw">return var3;
   }
}