CheckpointAddCommand class
Пакет: com.hypixel.hytale.builtin.parkour.commands
Файл: com/hypixel/hytale/builtin/parkour/commands/CheckpointAddCommand.java
extends: AbstractPlayerCommand
Поля (8)
| Модификаторы | Тип | Имя |
|---|---|---|
|
Rotation3f |
var10 |
|
Holder |
var11 |
|
Model |
var12 |
|
TransformComponent |
var13 |
|
Integer |
var6 |
|
Int2ObjectMap |
var7 |
|
TransformComponent |
var8 |
|
Vector3d |
var9 |
Методы (1)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract |
|
super super("add", "server.commands.checkpoint.add.desc") |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.parkour.commands;
class="kw">import com.hypixel.hytale.builtin.parkour.ParkourCheckpoint;
class="kw">import com.hypixel.hytale.builtin.parkour.ParkourPlugin;
class="kw">import com.hypixel.hytale.component.AddReason;
class="kw">import com.hypixel.hytale.component.Holder;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.math.vector.Rotation3f;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.asset.type.model.config.Model;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandContext;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.system.RequiredArg;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.types.ArgTypes;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.AbstractPlayerCommand;
class="kw">import com.hypixel.hytale.server.core.entity.UUIDComponent;
class="kw">import com.hypixel.hytale.server.core.entity.nameplate.Nameplate;
class="kw">import com.hypixel.hytale.server.core.modules.entity.component.HiddenFromAdventurePlayers;
class="kw">import com.hypixel.hytale.server.core.modules.entity.component.Intangible;
class="kw">import com.hypixel.hytale.server.core.modules.entity.component.ModelComponent;
class="kw">import com.hypixel.hytale.server.core.modules.entity.component.PersistentModel;
class="kw">import com.hypixel.hytale.server.core.modules.entity.component.TransformComponent;
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 it.unimi.dsi.fastutil.ints.Int2ObjectMap;
class="kw">import java.util.UUID;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.joml.Vector3d;
class="kw">public class CheckpointAddCommand class="kw">extends AbstractPlayerCommand {
@Nonnull
class="kw">private class="kw">static class="kw">final Message MESSAGE_COMMANDS_CHECKPOINT_ADD_FAILED = Message.translation("server.commands.checkpoint.add.failed");
@Nonnull
class="kw">private class="kw">static class="kw">final Message MESSAGE_COMMANDS_CHECKPOINT_ADD_SUCCESS = Message.translation("server.commands.checkpoint.add.success");
@Nonnull
class="kw">private class="kw">final RequiredArg<Integer> indexArg = this.withRequiredArg("index", "server.commands.checkpoint.add.index.desc", ArgTypes.INTEGER);
class="kw">public CheckpointAddCommand() {
super("add", "server.commands.checkpoint.add.desc");
}
@Override
class="kw">protected void execute(
@Nonnull CommandContext var1, @Nonnull Store<EntityStore> var2, @Nonnull Ref<EntityStore> var3, @Nonnull PlayerRef var4, @Nonnull World var5
) {
Integer var6 = this.indexArg.get(var1);
Int2ObjectMap var7 = ParkourPlugin.get().getCheckpointUUIDMap();
if (var7.containsKey(var6)) {
var1.sendMessage(MESSAGE_COMMANDS_CHECKPOINT_ADD_FAILED);
} else {
TransformComponent var8 = var2.getComponent(var3, TransformComponent.getComponentType());
assert var8 != null;
Vector3d var9 = var8.getPosition();
Rotation3f var10 = var8.getRotation();
Holder var11 = EntityStore.REGISTRY.newHolder();
var11.addComponent(ParkourCheckpoint.getComponentType(), new ParkourCheckpoint(var6));
Model var12 = ParkourPlugin.get().getParkourCheckpointModel();
var11.addComponent(ModelComponent.getComponentType(), new ModelComponent(var12));
var11.addComponent(PersistentModel.getComponentType(), new PersistentModel(var12.toReference()));
var11.addComponent(Nameplate.getComponentType(), new Nameplate(Integer.toString(var6)));
TransformComponent var13 = new TransformComponent(var9, var10);
var11.addComponent(TransformComponent.getComponentType(), var13);
var11.ensureComponent(UUIDComponent.getComponentType());
var11.ensureComponent(Intangible.getComponentType());
var11.ensureComponent(HiddenFromAdventurePlayers.getComponentType());
var2.addEntity(var11, AddReason.SPAWN);
var1.sendMessage(MESSAGE_COMMANDS_CHECKPOINT_ADD_SUCCESS);
}
}
}