ShopPlugin class
Пакет: com.hypixel.hytale.builtin.adventure.shop
Файл: com/hypixel/hytale/builtin/adventure/shop/ShopPlugin.java
extends: JavaPlugin
Поля (3)
| Модификаторы | Тип | Имя |
|---|---|---|
static |
ShopPlugin |
instance |
|
|
instance |
|
AssetRegistry |
var1 |
Методы (2)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
static |
ShopPlugin |
getShopPlugin get() |
abstract |
|
super super(var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.adventure.shop;
class="kw">import com.hypixel.hytale.assetstore.map.DefaultAssetMap;
class="kw">import com.hypixel.hytale.builtin.adventure.shop.barter.BarterShopAsset;
class="kw">import com.hypixel.hytale.builtin.adventure.shop.barter.BarterShopState;
class="kw">import com.hypixel.hytale.server.core.asset.HytaleAssetStore;
class="kw">import com.hypixel.hytale.server.core.asset.type.item.config.Item;
class="kw">import com.hypixel.hytale.server.core.entity.entities.player.pages.choices.ChoiceElement;
class="kw">import com.hypixel.hytale.server.core.entity.entities.player.pages.choices.ChoiceInteraction;
class="kw">import com.hypixel.hytale.server.core.modules.interaction.interaction.config.server.OpenCustomUIInteraction;
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 java.util.logging.Level;
class="kw">import javax.annotation.Nonnull;
class="kw">public class ShopPlugin class="kw">extends JavaPlugin {
class="kw">protected class="kw">static ShopPlugin instance;
class="kw">public class="kw">static ShopPlugin get() {
class="kw">return instance;
}
class="kw">public ShopPlugin(@Nonnull JavaPluginInit var1) {
super(var1);
}
@Override
class="kw">protected void setup() {
instance = this;
AssetRegistry var1 = this.getAssetRegistry();
var1.register(
((HytaleAssetStore.Builder)((HytaleAssetStore.Builder)((HytaleAssetStore.Builder)((HytaleAssetStore.Builder)HytaleAssetStore.builder(
ShopAsset.class, new DefaultAssetMap()
)
.setPath("Shops"))
.setCodec(ShopAsset.CODEC))
.setKeyFunction(ShopAsset::getId))
.loadsAfter(Item.class))
.build()
);
var1.register(
((HytaleAssetStore.Builder)((HytaleAssetStore.Builder)((HytaleAssetStore.Builder)((HytaleAssetStore.Builder)HytaleAssetStore.builder(
BarterShopAsset.class, new DefaultAssetMap()
)
.setPath("BarterShops"))
.setCodec(BarterShopAsset.CODEC))
.setKeyFunction(BarterShopAsset::getId))
.loadsAfter(Item.class))
.build()
);
this.getCodecRegistry(ChoiceElement.CODEC).register("ShopElement", ShopElement.class, ShopElement.CODEC);
this.getCodecRegistry(ChoiceInteraction.CODEC).register("GiveItem", GiveItemInteraction.class, GiveItemInteraction.CODEC);
this.getCodecRegistry(OpenCustomUIInteraction.PAGE_CODEC).register("Shop", ShopPageSupplier.class, ShopPageSupplier.CODEC);
}
@Override
class="kw">protected void start() {
BarterShopState.initialize(this.getDataDirectory());
this.getLogger().at(Level.INFO).log("Barter shop state initialized");
}
@Override
class="kw">protected void shutdown() {
BarterShopState.shutdown();
this.getLogger().at(Level.INFO).log("Barter shop state saved");
}
}