BlockMarkerIdArgumentType class
Пакет: com.hypixel.hytale.server.core.command.commands.utility.worldmap.marker
Файл: com/hypixel/hytale/server/core/command/commands/utility/worldmap/marker/BlockMarkerIdArgumentType.java
extends: SingleArgumentType<String>
Поля (3)
| Модификаторы | Тип | Имя |
|---|---|---|
|
Ref |
var2 |
|
World |
var5 |
|
List |
var6 |
Методы (4)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
if if(var5 != null) |
|
|
if if(var6 != null) |
|
|
if if(var0 instanceof PlayerRef var1) |
abstract |
|
super super("server.commands.worldmap.markers.argtype.markerId.name",
"server.commands.worldmap.markers.argtype.markerId.usage",
"550e8400-e29b-41d4-a716-446655440000") |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.command.commands.utility.worldmap.marker;
class="kw">import com.hypixel.hytale.common.util.StringUtil;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandSender;
class="kw">import com.hypixel.hytale.server.core.command.system.ParseResult;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.types.SingleArgumentType;
class="kw">import com.hypixel.hytale.server.core.command.system.suggestion.SuggestionResult;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import java.util.List;
class="kw">import java.util.concurrent.CompletableFuture;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class BlockMarkerIdArgumentType class="kw">extends SingleArgumentType<String> {
@Nonnull
class="kw">public class="kw">static class="kw">final BlockMarkerIdArgumentType INSTANCE = new BlockMarkerIdArgumentType();
class="kw">private class="kw">static class="kw">final int MAX_SUGGESTIONS = 20;
class="kw">private BlockMarkerIdArgumentType() {
super(
"server.commands.worldmap.markers.argtype.markerId.name",
"server.commands.worldmap.markers.argtype.markerId.usage",
"550e8400-e29b-41d4-a716-446655440000"
);
}
@Nonnull
class="kw">public String parse(String var1, ParseResult var2) {
class="kw">return var1;
}
@Override
class="kw">public void suggest(@Nonnull CommandSender var1, @Nonnull String var2, int var3, @Nonnull SuggestionResult var4) {
World var5 = getWorld(var1);
if (var5 != null) {
List var6 = findAllDiscoverableAsync(var5).join();
if (var6 != null) {
for (String var9 : StringUtil.sortByFuzzyDistance(var2, var6, 20)) {
var4.suggest(var9);
}
}
}
}
@Nullable
class="kw">private class="kw">static World getWorld(@Nonnull CommandSender var0) {
if (var0 class="kw">instanceof PlayerRef var1) {
Ref var2 = var1.getReference();
class="kw">return var2 != null && var2.isValid() ? var2.getStore().getExternalData().getWorld() : null;
} else {
class="kw">return null;
}
}
@Nonnull
class="kw">private class="kw">static CompletableFuture<List<String>> findAllDiscoverableAsync(@Nonnull World var0) {
class="kw">return var0.isInThread()
? CompletableFuture.completedFuture(BlockMarkerLookup.findAllDiscoverable(var0))
: CompletableFuture.supplyAsync(() -> BlockMarkerLookup.findAllDiscoverable(var0), var0);
}
}