CameraEffectCommand class
Пакет: com.hypixel.hytale.builtin.adventure.camera.command
Файл: com/hypixel/hytale/builtin/adventure/camera/command/CameraEffectCommand.java
extends: AbstractCommandCollection
Поля (16)
| Модификаторы | Тип | Имя |
|---|---|---|
|
protected static final ArgumentType<DamageCause> |
DAMAGE_CAUSE_ARGUMENT_TYPE |
|
protected final RequiredArg<DamageCause> |
causeArg |
|
protected final RequiredArg<Float> |
damageArg |
|
protected final OptionalArg<CameraEffect> |
effectArg |
|
protected final RequiredArg<CameraEffect> |
effectArg |
|
protected final RequiredArg<Float> |
intensityArg |
|
Damage |
var10 |
|
String |
var11 |
|
|
var11 |
|
Damage.CameraEffect |
var12 |
|
DamageCause |
var7 |
|
CameraEffect |
var7 |
|
float |
var8 |
|
float |
var8 |
|
Damage.CommandSource |
var9 |
|
PlayerRef |
var9 |
Методы (7)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
public |
DamageCommandpublic DamageCommand() |
|
public |
DebugCommandpublic DebugCommand() |
|
protected void |
executeprotected void execute(@Nonnull CommandContext var1,
@Nullable Ref<EntityStore> var2,
@Nonnull Ref<EntityStore> var3,
@Nonnull PlayerRef var4,
@Nonnull World var5,
@Nonnull Store<EntityStore> var6) |
|
protected void |
executeprotected void execute(@Nonnull CommandContext var1,
@Nullable Ref<EntityStore> var2,
@Nonnull Ref<EntityStore> var3,
@Nonnull PlayerRef var4,
@Nonnull World var5,
@Nonnull Store<EntityStore> var6) |
abstract |
|
super super("camshake", "server.commands.camshake.desc") |
abstract |
|
super super("damage", "server.commands.camshake.damage.desc") |
abstract |
|
super super("debug", "server.commands.camshake.debug.desc") |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.adventure.camera.command;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.asset.type.camera.CameraEffect;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandContext;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.system.OptionalArg;
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.arguments.types.ArgumentType;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.types.AssetArgumentType;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.AbstractCommandCollection;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.AbstractTargetPlayerCommand;
class="kw">import com.hypixel.hytale.server.core.modules.entity.damage.Damage;
class="kw">import com.hypixel.hytale.server.core.modules.entity.damage.DamageCause;
class="kw">import com.hypixel.hytale.server.core.modules.entity.damage.DamageSystems;
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 javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class CameraEffectCommand class="kw">extends AbstractCommandCollection {
@Nonnull
class="kw">protected class="kw">static class="kw">final ArgumentType<CameraEffect> CAMERA_EFFECT_ARGUMENT_TYPE = new AssetArgumentType("CameraEffect", CameraEffect.class, "");
class="kw">public CameraEffectCommand() {
super("camshake", "server.commands.camshake.desc");
this.setPermissionGroups("hytale:WorldEditor");
this.addSubCommand(new CameraEffectCommand.DamageCommand());
this.addSubCommand(new CameraEffectCommand.DebugCommand());
}
class="kw">protected class="kw">static class DamageCommand class="kw">extends AbstractTargetPlayerCommand {
@Nonnull
class="kw">protected class="kw">static class="kw">final ArgumentType<DamageCause> DAMAGE_CAUSE_ARGUMENT_TYPE = new AssetArgumentType("DamageCause", DamageCause.class, "");
@Nonnull
class="kw">protected class="kw">final OptionalArg<CameraEffect> effectArg = this.withOptionalArg(
"effect", "server.commands.camshake.effect.desc", CameraEffectCommand.CAMERA_EFFECT_ARGUMENT_TYPE
);
@Nonnull
class="kw">protected class="kw">final RequiredArg<DamageCause> causeArg = this.withRequiredArg(
"cause", "server.commands.camshake.damage.cause.desc", DAMAGE_CAUSE_ARGUMENT_TYPE
);
@Nonnull
class="kw">protected class="kw">final RequiredArg<Float> damageArg = this.withRequiredArg("amount", "server.commands.camshake.damage.amount.desc", ArgTypes.FLOAT);
class="kw">public DamageCommand() {
super("damage", "server.commands.camshake.damage.desc");
}
@Override
class="kw">protected void execute(
@Nonnull CommandContext var1,
@Nullable Ref<EntityStore> var2,
@Nonnull Ref<EntityStore> var3,
@Nonnull PlayerRef var4,
@Nonnull World var5,
@Nonnull Store<EntityStore> var6
) {
DamageCause var7 = var1.get(this.causeArg);
float var8 = var1.get(this.damageArg);
Damage.CommandSource var9 = new Damage.CommandSource(var1.sender(), this.getName());
Damage var10 = new Damage(var9, var7, var8);
String var11 = "Default";
if (this.effectArg.provided(var1)) {
var11 = var1.get(this.effectArg).getId();
Damage.CameraEffect var12 = new Damage.CameraEffect(CameraEffect.getAssetMap().getIndex(var11));
var10.getMetaStore().putMetaObject(Damage.CAMERA_EFFECT, var12);
}
DamageSystems.executeDamage(var3, var6, var10);
var1.sendMessage(
Message.translation("server.commands.camshake.damage.success").param("effect", var11).param("cause", var7.getId()).param("amount", var8)
);
}
}
class="kw">protected class="kw">static class DebugCommand class="kw">extends AbstractTargetPlayerCommand {
@Nonnull
class="kw">protected class="kw">final RequiredArg<CameraEffect> effectArg = this.withRequiredArg(
"effect", "server.commands.camshake.effect.desc", CameraEffectCommand.CAMERA_EFFECT_ARGUMENT_TYPE
);
@Nonnull
class="kw">protected class="kw">final RequiredArg<Float> intensityArg = this.withRequiredArg("intensity", "server.commands.camshake.debug.intensity.desc", ArgTypes.FLOAT);
class="kw">public DebugCommand() {
super("debug", "server.commands.camshake.debug.desc");
}
@Override
class="kw">protected void execute(
@Nonnull CommandContext var1,
@Nullable Ref<EntityStore> var2,
@Nonnull Ref<EntityStore> var3,
@Nonnull PlayerRef var4,
@Nonnull World var5,
@Nonnull Store<EntityStore> var6
) {
CameraEffect var7 = var1.get(this.effectArg);
float var8 = var1.get(this.intensityArg);
PlayerRef var9 = var6.getComponent(var3, PlayerRef.getComponentType());
assert var9 != null;
var9.getPacketHandler().writeNoCache(var7.createCameraShakePacket(var8));
var1.sendMessage(Message.translation("server.commands.camshake.debug.success").param("effect", var7.getId()).param("intensity", var8));
}
}
}