BedsPlugin class
Пакет: com.hypixel.hytale.builtin.beds
Файл: com/hypixel/hytale/builtin/beds/BedsPlugin.java
extends: JavaPlugin
Поля (6)
| Модификаторы | Тип | Имя |
|---|---|---|
static |
BedsPlugin |
instance |
|
|
instance |
|
ComponentRegistryProxy |
var1 |
|
ComponentType |
var2 |
|
ComponentType |
var3 |
|
ResourceType |
var4 |
Методы (5)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
static |
BedsPlugin |
getBedsPlugin get() |
public |
ComponentType<EntityStore, PlayerSomnolence> |
getPlayerSomnolenceComponentTypeComponentType<EntityStore, PlayerSomnolence> getPlayerSomnolenceComponentType() |
public |
ComponentType<EntityStore, SleepTracker> |
getSleepTrackerComponentTypeComponentType<EntityStore, SleepTracker> getSleepTrackerComponentType() |
public |
ResourceType<EntityStore, WorldSomnolence> |
getWorldSomnolenceResourceTypeResourceType<EntityStore, WorldSomnolence> getWorldSomnolenceResourceType() |
abstract |
|
super super(var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.beds;
class="kw">import com.hypixel.hytale.builtin.beds.interactions.BedInteraction;
class="kw">import com.hypixel.hytale.builtin.beds.sleep.components.PlayerSomnolence;
class="kw">import com.hypixel.hytale.builtin.beds.sleep.components.SleepTracker;
class="kw">import com.hypixel.hytale.builtin.beds.sleep.resources.WorldSomnolence;
class="kw">import com.hypixel.hytale.builtin.beds.sleep.systems.player.EnterBedSystem;
class="kw">import com.hypixel.hytale.builtin.beds.sleep.systems.player.RegisterTrackerSystem;
class="kw">import com.hypixel.hytale.builtin.beds.sleep.systems.player.SleepNotificationSystem;
class="kw">import com.hypixel.hytale.builtin.beds.sleep.systems.player.UpdateSleepPacketSystem;
class="kw">import com.hypixel.hytale.builtin.beds.sleep.systems.player.WakeUpOnDismountSystem;
class="kw">import com.hypixel.hytale.builtin.beds.sleep.systems.world.StartSlumberSystem;
class="kw">import com.hypixel.hytale.builtin.beds.sleep.systems.world.UpdateWorldSlumberSystem;
class="kw">import com.hypixel.hytale.builtin.mounts.MountedComponent;
class="kw">import com.hypixel.hytale.component.ComponentRegistryProxy;
class="kw">import com.hypixel.hytale.component.ComponentType;
class="kw">import com.hypixel.hytale.component.ResourceType;
class="kw">import com.hypixel.hytale.server.core.modules.interaction.interaction.config.Interaction;
class="kw">import com.hypixel.hytale.server.core.modules.time.WorldTimeResource;
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.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import javax.annotation.Nonnull;
class="kw">public class BedsPlugin class="kw">extends JavaPlugin {
class="kw">private class="kw">static BedsPlugin instance;
class="kw">private ComponentType<EntityStore, PlayerSomnolence> playerSomnolenceComponentType;
class="kw">private ComponentType<EntityStore, SleepTracker> sleepTrackerComponentType;
class="kw">private ResourceType<EntityStore, WorldSomnolence> worldSomnolenceResourceType;
class="kw">public class="kw">static BedsPlugin get() {
class="kw">return instance;
}
class="kw">public BedsPlugin(@Nonnull JavaPluginInit var1) {
super(var1);
}
@Override
class="kw">protected void setup() {
instance = this;
ComponentRegistryProxy var1 = this.getEntityStoreRegistry();
this.playerSomnolenceComponentType = var1.registerComponent(PlayerSomnolence.class, PlayerSomnolence::new);
this.sleepTrackerComponentType = var1.registerComponent(SleepTracker.class, SleepTracker::new);
this.worldSomnolenceResourceType = var1.registerResource(WorldSomnolence.class, WorldSomnolence::new);
ComponentType var2 = PlayerRef.getComponentType();
ComponentType var3 = MountedComponent.getComponentType();
ResourceType var4 = WorldTimeResource.getResourceType();
var1.registerSystem(new RegisterTrackerSystem(var2, this.sleepTrackerComponentType));
var1.registerSystem(new WakeUpOnDismountSystem(var3, this.playerSomnolenceComponentType));
var1.registerSystem(new EnterBedSystem(var3, var2));
var1.registerSystem(
new UpdateSleepPacketSystem(var2, this.playerSomnolenceComponentType, this.sleepTrackerComponentType, this.worldSomnolenceResourceType, var4)
);
var1.registerSystem(new StartSlumberSystem(this.playerSomnolenceComponentType, this.worldSomnolenceResourceType, var4));
var1.registerSystem(new UpdateWorldSlumberSystem(this.playerSomnolenceComponentType, this.worldSomnolenceResourceType, var4, var3));
var1.registerSystem(new SleepNotificationSystem());
Interaction.CODEC.register("Bed", BedInteraction.class, BedInteraction.CODEC);
}
class="kw">public ComponentType<EntityStore, PlayerSomnolence> getPlayerSomnolenceComponentType() {
class="kw">return this.playerSomnolenceComponentType;
}
class="kw">public ComponentType<EntityStore, SleepTracker> getSleepTrackerComponentType() {
class="kw">return this.sleepTrackerComponentType;
}
class="kw">public ResourceType<EntityStore, WorldSomnolence> getWorldSomnolenceResourceType() {
class="kw">return this.worldSomnolenceResourceType;
}
}