BlockSetLookupTable class
Пакет: com.hypixel.hytale.server.core.modules.blockset
Файл: com/hypixel/hytale/server/core/modules/blockset/BlockSetLookupTable.java
Поля (16)
| Модификаторы | Тип | Имя |
|---|---|---|
|
String[] |
var10 |
|
int |
var15 |
|
String |
var16 |
|
|
var16 |
|
String |
var17 |
|
Item |
var18 |
|
Object2ObjectMap |
var2 |
|
Object2ObjectMap |
var3 |
|
int |
var3 |
|
Object2ObjectMap |
var4 |
|
Object2ObjectMap |
var5 |
|
BlockTypeAssetMap |
var6 |
|
String |
var6 |
|
int |
var7 |
|
int |
var8 |
|
int |
var9 |
Методы (13)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract |
throw new |
IllegalArgumentExceptionthrow new IllegalArgumentException("Unknown key! " + var2x) |
abstract |
throw new |
IllegalArgumentExceptionthrow new IllegalArgumentException("Unknown key! " + var4x) |
public |
void |
addAllvoid addAll(@Nonnull IntSet var1) |
|
|
for for(String var14 : var10) |
|
|
if if(var3 == Integer.MIN_VALUE) |
|
|
if if(var7 == Integer.MIN_VALUE) |
|
|
if if(var8 != 0) |
|
|
if if(var8 > 0) |
|
|
if if(var9 == Integer.MIN_VALUE) |
|
|
if if(var18 != null) |
|
|
if if(var10 != null) |
|
|
if if(var15 == Integer.MIN_VALUE) |
public |
boolean |
isEmptyboolean isEmpty() |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.modules.blockset;
class="kw">import com.hypixel.hytale.assetstore.map.BlockTypeAssetMap;
class="kw">import com.hypixel.hytale.server.core.asset.type.blocktype.config.BlockType;
class="kw">import com.hypixel.hytale.server.core.asset.type.item.config.Item;
class="kw">import it.unimi.dsi.fastutil.ints.IntOpenHashSet;
class="kw">import it.unimi.dsi.fastutil.ints.IntSet;
class="kw">import it.unimi.dsi.fastutil.ints.IntSets;
class="kw">import it.unimi.dsi.fastutil.objects.Object2ObjectMap;
class="kw">import it.unimi.dsi.fastutil.objects.Object2ObjectMaps;
class="kw">import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap;
class="kw">import java.util.Map;
class="kw">import javax.annotation.Nonnull;
class="kw">public class BlockSetLookupTable {
@Nonnull
class="kw">private class="kw">final Object2ObjectMap<String, IntSet> blockNameIdMap;
@Nonnull
class="kw">private class="kw">final Object2ObjectMap<String, IntSet> groupNameIdMap;
@Nonnull
class="kw">private class="kw">final Object2ObjectMap<String, IntSet> hitboxNameIdMap;
@Nonnull
class="kw">private class="kw">final Object2ObjectMap<String, IntSet> categoryIdMap;
class="kw">public BlockSetLookupTable(@Nonnull Map<String, BlockType> var1) {
Object2ObjectMap var2 = new Object2ObjectOpenHashMap();
Object2ObjectMap var3 = new Object2ObjectOpenHashMap();
Object2ObjectMap var4 = new Object2ObjectOpenHashMap();
Object2ObjectMap var5 = new Object2ObjectOpenHashMap();
BlockTypeAssetMap var6 = BlockType.getAssetMap();
var1.keySet().forEach(var2x -> {
int var3 = var6.getIndex(var2x);
if (var3 == Integer.MIN_VALUE) {
throw new IllegalArgumentException("Unknown key! " + var2x);
}
((IntSet)var2.computeIfAbsent(var2x, var0x -> new IntOpenHashSet())).add(var3);
});
var1.forEach((var4x, var5x) -> {
String var6 = var5x.getGroup();
if (var6 != null && !var6.isEmpty()) {
int var7 = var6.getIndex(var4x);
if (var7 == Integer.MIN_VALUE) {
throw new IllegalArgumentException("Unknown key! " + var4x);
}
((IntSet)var3.computeIfAbsent(var6, var0x -> new IntOpenHashSet())).add(var7);
}
String var16 = var5x.getHitboxType();
if (var16 != null && !var16.isEmpty()) {
int var8 = var16.indexOf(124);
if (var8 != 0) {
if (var8 > 0) {
var16 = var16.substring(0, var8);
}
int var9 = var6.getIndex(var4x);
if (var9 == Integer.MIN_VALUE) {
throw new IllegalArgumentException("Unknown key! " + var4x);
}
((IntSet)var4.computeIfAbsent(var16, var0x -> new IntOpenHashSet())).add(var9);
}
}
String var17 = var5x.getId();
Item var18 = Item.getAssetMap().getAsset(var17);
if (var18 != null) {
String[] var10 = var18.getCategories();
if (var10 != null) {
for (String var14 : var10) {
int var15 = var6.getIndex(var4x);
if (var15 == Integer.MIN_VALUE) {
throw new IllegalArgumentException("Unknown key! " + var4x);
}
((IntSet)var5.computeIfAbsent(var14, var0x -> new IntOpenHashSet())).add(var15);
}
}
}
});
var2.replaceAll((var0, var1x) -> {
((IntOpenHashSet)var1x).trim();
class="kw">return IntSets.unmodifiable(var1x);
});
var3.replaceAll((var0, var1x) -> {
((IntOpenHashSet)var1x).trim();
class="kw">return IntSets.unmodifiable(var1x);
});
var4.replaceAll((var0, var1x) -> {
((IntOpenHashSet)var1x).trim();
class="kw">return IntSets.unmodifiable(var1x);
});
var5.replaceAll((var0, var1x) -> {
((IntOpenHashSet)var1x).trim();
class="kw">return IntSets.unmodifiable(var1x);
});
this.blockNameIdMap = Object2ObjectMaps.unmodifiable(var2);
this.groupNameIdMap = Object2ObjectMaps.unmodifiable(var3);
this.hitboxNameIdMap = Object2ObjectMaps.unmodifiable(var4);
this.categoryIdMap = Object2ObjectMaps.unmodifiable(var5);
}
class="kw">public void addAll(@Nonnull IntSet var1) {
this.blockNameIdMap.values().forEach(var1::addAll);
}
@Nonnull
class="kw">public Object2ObjectMap<String, IntSet> getBlockNameIdMap() {
class="kw">return this.blockNameIdMap;
}
@Nonnull
class="kw">public Object2ObjectMap<String, IntSet> getGroupNameIdMap() {
class="kw">return this.groupNameIdMap;
}
@Nonnull
class="kw">public Object2ObjectMap<String, IntSet> getHitboxNameIdMap() {
class="kw">return this.hitboxNameIdMap;
}
@Nonnull
class="kw">public Object2ObjectMap<String, IntSet> getCategoryIdMap() {
class="kw">return this.categoryIdMap;
}
class="kw">public boolean isEmpty() {
class="kw">return this.blockNameIdMap.isEmpty() && this.groupNameIdMap.isEmpty() && this.hitboxNameIdMap.isEmpty() && this.categoryIdMap.isEmpty();
}
}