SuppressionSpan class
Пакет: com.hypixel.hytale.server.spawning.suppression.component
Файл: com/hypixel/hytale/server/spawning/suppression/component/ChunkSuppressionEntry.java
Поля (4)
| Модификаторы | Тип | Имя |
|---|---|---|
|
private final int |
maxY |
|
private final int |
minY |
|
private final IntSet |
suppressedRoles |
|
private final UUID |
suppressorId |
Методы (5)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
public int |
getMaxYpublic int getMaxY() |
|
public int |
getMinYpublic int getMinY() |
|
public IntSet |
getSuppressedRolespublic IntSet getSuppressedRoles() |
|
public UUID |
getSuppressorIdpublic UUID getSuppressorId() |
|
public boolean |
includesRolepublic boolean includesRole(int var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.spawning.suppression.component;
class="kw">import com.hypixel.hytale.component.Component;
class="kw">import com.hypixel.hytale.component.ComponentType;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.ChunkStore;
class="kw">import com.hypixel.hytale.server.spawning.SpawningPlugin;
class="kw">import it.unimi.dsi.fastutil.ints.IntSet;
class="kw">import it.unimi.dsi.fastutil.ints.IntSets;
class="kw">import java.util.Collections;
class="kw">import java.util.List;
class="kw">import java.util.UUID;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class ChunkSuppressionEntry class="kw">implements Component<ChunkStore> {
@Nonnull
class="kw">private class="kw">final List<ChunkSuppressionEntry.SuppressionSpan> suppressionSpans;
class="kw">public class="kw">static ComponentType<ChunkStore, ChunkSuppressionEntry> getComponentType() {
class="kw">return SpawningPlugin.get().getChunkSuppressionEntryComponentType();
}
class="kw">public ChunkSuppressionEntry(@Nonnull List<ChunkSuppressionEntry.SuppressionSpan> var1) {
this.suppressionSpans = Collections.unmodifiableList(var1);
}
@Nonnull
class="kw">public List<ChunkSuppressionEntry.SuppressionSpan> getSuppressionSpans() {
class="kw">return this.suppressionSpans;
}
class="kw">public boolean containsOnly(UUID var1) {
class="kw">return this.suppressionSpans.size() == 1 && this.suppressionSpans.getFirst().getSuppressorId().equals(var1);
}
class="kw">public boolean isSuppressingRoleAt(int var1, int var2) {
for (int var3 = 0; var3 < this.suppressionSpans.size(); var3++) {
ChunkSuppressionEntry.SuppressionSpan var4 = this.suppressionSpans.get(var3);
if (var4.minY > var2) {
class="kw">return false;
}
if (var4.maxY >= var2 && var4.includesRole(var1)) {
class="kw">return true;
}
}
class="kw">return false;
}
@Nonnull
@Override
class="kw">public Component<ChunkStore> clone() {
class="kw">return new ChunkSuppressionEntry(this.suppressionSpans);
}
class="kw">public class="kw">static class SuppressionSpan {
class="kw">private class="kw">final UUID suppressorId;
class="kw">private class="kw">final int minY;
class="kw">private class="kw">final int maxY;
@Nullable
class="kw">private class="kw">final IntSet suppressedRoles;
class="kw">public SuppressionSpan(UUID var1, int var2, int var3, @Nullable IntSet var4) {
this.suppressorId = var1;
this.minY = var2;
this.maxY = var3;
this.suppressedRoles = var4 != null ? IntSets.unmodifiable(var4) : null;
}
class="kw">public UUID getSuppressorId() {
class="kw">return this.suppressorId;
}
@Nullable
class="kw">public IntSet getSuppressedRoles() {
class="kw">return this.suppressedRoles;
}
class="kw">public int getMinY() {
class="kw">return this.minY;
}
class="kw">public int getMaxY() {
class="kw">return this.maxY;
}
class="kw">public boolean includesRole(int var1) {
class="kw">return this.suppressedRoles == null || this.suppressedRoles.contains(var1);
}
}
}