MaterialSet class
Пакет: com.hypixel.hytale.builtin.hytalegenerator
Файл: com/hypixel/hytale/builtin/hytalegenerator/MaterialSet.java
implements: Predicate<Material>
Поля (7)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
boolean |
isInclusive |
|
boolean |
var2 |
|
boolean |
var2 |
|
int |
var3 |
|
IntSet |
var4 |
|
Material |
var6 |
|
Material |
var7 |
Методы (9)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract |
throw new |
IllegalArgumentExceptionthrow new IllegalArgumentException("element array contains null at index 0") |
abstract |
throw new |
IllegalArgumentExceptionthrow new IllegalArgumentException("element array contains null at index " + var5) |
|
|
for for(int var5 = 0; var5 < var3; var5++) |
|
|
if if(var3 == 0) |
|
|
if if(var7 == null) |
|
|
if if(var6 == null) |
|
|
if if(var1 == null) |
public |
boolean |
testboolean test(@Nullable Material var1) |
public |
boolean |
testboolean test(int var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.hytalegenerator;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.material.Material;
class="kw">import it.unimi.dsi.fastutil.ints.IntArraySet;
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 java.util.List;
class="kw">import java.util.function.Predicate;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class MaterialSet class="kw">implements Predicate<Material> {
class="kw">private class="kw">final boolean isInclusive;
class="kw">private class="kw">final IntSet mask;
class="kw">public MaterialSet() {
this.isInclusive = true;
this.mask = IntSet.of();
}
class="kw">public MaterialSet(boolean var1, @Nonnull List<Material> var2) {
this.isInclusive = var1;
int var3 = var2.size();
if (var3 == 0) {
this.mask = IntSet.of();
} else if (var3 == 1) {
Material var7 = var2.getFirst();
if (var7 == null) {
throw new IllegalArgumentException("element array contains null at index 0");
}
this.mask = IntSet.of(var7.hashMaterialIds());
} else {
IntSet var4 = (IntSet)(var3 <= 4 ? new IntArraySet(var3) : new IntOpenHashSet(var3, 0.99F));
for (int var5 = 0; var5 < var3; var5++) {
Material var6 = var2.get(var5);
if (var6 == null) {
throw new IllegalArgumentException("element array contains null at index " + var5);
}
var4.add(var6.hashMaterialIds());
}
this.mask = IntSets.unmodifiable(var4);
}
}
class="kw">public boolean test(@Nullable Material var1) {
if (var1 == null) {
class="kw">return false;
}
boolean var2 = this.mask.contains(var1.hashMaterialIds());
class="kw">return var2 && this.isInclusive || !var2 && !this.isInclusive;
}
class="kw">public boolean test(int var1) {
boolean var2 = this.mask.contains(var1);
class="kw">return var2 && this.isInclusive || !var2 && !this.isInclusive;
}
}