BlockMarkerLookup class
Пакет: com.hypixel.hytale.server.core.command.commands.utility.worldmap.marker
Файл: com/hypixel/hytale/server/core/command/commands/utility/worldmap/marker/BlockMarkerLookup.java
Поля (8)
| Модификаторы | Тип | Имя |
|---|---|---|
|
ArrayList |
var1 |
|
ArrayList |
var1 |
|
Store |
var1 |
|
ArrayList |
var2 |
|
BlockMapMarkersResource |
var2 |
|
ArrayList |
var3 |
|
ArrayList |
var4 |
|
String |
var7 |
Методы (2)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
record |
Matchrecord Match(int x, int y, int z, @Nonnull BlockMapMarkersResource.BlockMapMarkerData data) |
|
|
if if(var7 != null) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.command.commands.utility.worldmap.marker;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.math.data.Int3ObjectOpenHashMap;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.meta.state.BlockMapMarkersResource;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.ChunkStore;
class="kw">import java.util.ArrayList;
class="kw">import java.util.Comparator;
class="kw">import java.util.List;
class="kw">import javax.annotation.Nonnull;
class="kw">final class BlockMarkerLookup {
@Nonnull
class="kw">private class="kw">static class="kw">final Comparator<BlockMarkerLookup.Match> POSITION_ORDER = Comparator.comparingInt(BlockMarkerLookup.Match::x)
.thenComparingInt(BlockMarkerLookup.Match::z)
.thenComparingInt(BlockMarkerLookup.Match::y);
class="kw">private BlockMarkerLookup() {
}
@Nonnull
class="kw">static List<BlockMarkerLookup.Match> findAll(@Nonnull World var0) {
ArrayList var1 = new ArrayList<>();
getMarkers(var0).forEach((var1x, var2, var3, var4) -> {
if (var4.getMarkerId() != null) {
var1.add(new BlockMarkerLookup.Match(var1x, var2, var3, var4));
}
});
class="kw">return var1;
}
@Nonnull
class="kw">static List<String> findAllDiscoverable(@Nonnull World var0) {
ArrayList var1 = new ArrayList<>();
getMarkers(var0).forEach((var1x, var2, var3, var4) -> {
if (var4.getMarkerId() != null) {
if (var4.isDiscoverable()) {
var1.add(var4.getMarkerId());
}
}
});
class="kw">return var1;
}
@Nonnull
class="kw">static List<BlockMarkerLookup.Match> findByIdPrefix(@Nonnull World var0, @Nonnull String var1) {
ArrayList var2 = new ArrayList<>();
ArrayList var3 = new ArrayList<>();
getMarkers(var0).forEach((var3x, var4x, var5, var6) -> {
String var7 = var6.getMarkerId();
if (var7 != null) {
if (var7.equalsIgnoreCase(var1)) {
var2.add(new BlockMarkerLookup.Match(var3x, var4x, var5, var6));
} else if (var7.regionMatches(true, 0, var1, 0, var1.length())) {
var3.add(new BlockMarkerLookup.Match(var3x, var4x, var5, var6));
}
}
});
ArrayList var4 = var2.isEmpty() ? var3 : var2;
var4.sort(POSITION_ORDER);
class="kw">return var4;
}
@Nonnull
class="kw">private class="kw">static Int3ObjectOpenHashMap<BlockMapMarkersResource.BlockMapMarkerData> getMarkers(@Nonnull World var0) {
Store var1 = var0.getChunkStore().getStore();
BlockMapMarkersResource var2 = var1.getResource(BlockMapMarkersResource.getResourceType());
class="kw">return var2.getMarkers();
}
record Match(int x, int y, int z, @Nonnull BlockMapMarkersResource.BlockMapMarkerData data) {
Match {
}
}
}