CameraPlugin class
Пакет: com.hypixel.hytale.builtin.adventure.camera
Файл: com/hypixel/hytale/builtin/adventure/camera/CameraPlugin.java
extends: JavaPlugin
Поля (3)
| Модификаторы | Тип | Имя |
|---|---|---|
|
AssetRegistry |
var1 |
|
ComponentType |
var2 |
|
ComponentType |
var3 |
Методы (1)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract |
|
super super(var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.adventure.camera;
class="kw">import com.hypixel.hytale.assetstore.map.DefaultAssetMap;
class="kw">import com.hypixel.hytale.assetstore.map.IndexedAssetMap;
class="kw">import com.hypixel.hytale.builtin.adventure.camera.asset.cameraeffect.CameraShakeEffect;
class="kw">import com.hypixel.hytale.builtin.adventure.camera.asset.camerashake.CameraShake;
class="kw">import com.hypixel.hytale.builtin.adventure.camera.asset.camerashake.CameraShakePacketGenerator;
class="kw">import com.hypixel.hytale.builtin.adventure.camera.asset.viewbobbing.ViewBobbing;
class="kw">import com.hypixel.hytale.builtin.adventure.camera.asset.viewbobbing.ViewBobbingPacketGenerator;
class="kw">import com.hypixel.hytale.builtin.adventure.camera.command.CameraEffectCommand;
class="kw">import com.hypixel.hytale.builtin.adventure.camera.command.TpCinematicCommand;
class="kw">import com.hypixel.hytale.builtin.adventure.camera.interaction.CameraShakeInteraction;
class="kw">import com.hypixel.hytale.builtin.adventure.camera.system.CameraEffectSystem;
class="kw">import com.hypixel.hytale.component.ComponentType;
class="kw">import com.hypixel.hytale.protocol.MovementType;
class="kw">import com.hypixel.hytale.server.core.asset.HytaleAssetStore;
class="kw">import com.hypixel.hytale.server.core.asset.type.camera.CameraEffect;
class="kw">import com.hypixel.hytale.server.core.modules.entitystats.EntityStatMap;
class="kw">import com.hypixel.hytale.server.core.modules.interaction.interaction.config.Interaction;
class="kw">import com.hypixel.hytale.server.core.plugin.JavaPlugin;
class="kw">import com.hypixel.hytale.server.core.plugin.JavaPluginInit;
class="kw">import com.hypixel.hytale.server.core.plugin.registry.AssetRegistry;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import javax.annotation.Nonnull;
class="kw">public class CameraPlugin class="kw">extends JavaPlugin {
@Nonnull
class="kw">private class="kw">static class="kw">final String CODEC_CAMERA_SHAKE = "CameraShake";
class="kw">public CameraPlugin(@Nonnull JavaPluginInit var1) {
super(var1);
}
@Override
class="kw">protected void setup() {
AssetRegistry var1 = this.getAssetRegistry();
this.getCodecRegistry(CameraEffect.CODEC).register("CameraShake", CameraShakeEffect.class, CameraShakeEffect.CODEC);
this.getCodecRegistry(Interaction.CODEC).register("CameraShake", CameraShakeInteraction.class, CameraShakeInteraction.CODEC);
var1.register(
((HytaleAssetStore.Builder)((HytaleAssetStore.Builder)((HytaleAssetStore.Builder)((HytaleAssetStore.Builder)((HytaleAssetStore.Builder)HytaleAssetStore.builder(
String.class, CameraShake.class, new IndexedAssetMap()
)
.loadsBefore(CameraEffect.class))
.setCodec(CameraShake.CODEC))
.setPath("Camera/CameraShake"))
.setKeyFunction(CameraShake::getId))
.setReplaceOnRemove(CameraShake::new))
.setPacketGenerator(new CameraShakePacketGenerator())
.build()
);
var1.register(
((HytaleAssetStore.Builder)((HytaleAssetStore.Builder)((HytaleAssetStore.Builder)HytaleAssetStore.builder(
MovementType.class, ViewBobbing.class, new DefaultAssetMap()
)
.setCodec(ViewBobbing.CODEC))
.setPath("Camera/ViewBobbing"))
.setKeyFunction(ViewBobbing::getId))
.setPacketGenerator(new ViewBobbingPacketGenerator())
.build()
);
this.getCommandRegistry().registerCommand(new CameraEffectCommand());
this.getCommandRegistry().registerCommand(new TpCinematicCommand());
ComponentType var2 = PlayerRef.getComponentType();
ComponentType var3 = EntityStatMap.getComponentType();
this.getEntityStoreRegistry().registerSystem(new CameraEffectSystem(var2, var3));
}
}