BarterShopAsset.java
package com.hypixel.hytale.builtin.adventure.shop.barter;
import com.hypixel.hytale.assetstore.AssetExtraInfo;
import com.hypixel.hytale.assetstore.AssetKeyValidator;
import com.hypixel.hytale.assetstore.AssetRegistry;
import com.hypixel.hytale.assetstore.AssetStore;
import com.hypixel.hytale.assetstore.codec.AssetBuilderCodec;
import com.hypixel.hytale.assetstore.map.DefaultAssetMap;
import com.hypixel.hytale.assetstore.map.JsonAssetWithMap;
import com.hypixel.hytale.codec.Codec;
import com.hypixel.hytale.codec.KeyedCodec;
import com.hypixel.hytale.codec.codecs.array.ArrayCodec;
import com.hypixel.hytale.codec.validation.ValidatorCache;
import java.util.Arrays;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
public class BarterShopAsset implements JsonAssetWithMap<String, DefaultAssetMap<String, BarterShopAsset>> {
public static final AssetBuilderCodec<String, BarterShopAsset> CODEC;
public static final ValidatorCache<String> VALIDATOR_CACHE;
private static AssetStore<String, BarterShopAsset, DefaultAssetMap<String, BarterShopAsset>> ASSET_STORE;
protected AssetExtraInfo.Data extraData;
public static ;
String id;
String displayNameKey;
RefreshInterval refreshInterval;
BarterTrade[] trades;
TradeSlot[] tradeSlots;
Integer restockHour;
AssetStore<String, BarterShopAsset, DefaultAssetMap<String, BarterShopAsset>> {
(ASSET_STORE == ) {
ASSET_STORE = AssetRegistry.<String, BarterShopAsset, DefaultAssetMap<String, BarterShopAsset>>getAssetStore(BarterShopAsset.class);
}
ASSET_STORE;
}
DefaultAssetMap<String, BarterShopAsset> {
(DefaultAssetMap)getAssetStore().getAssetMap();
}
{
.id = id;
.displayNameKey = displayNameKey;
.refreshInterval = refreshInterval;
.trades = trades;
.tradeSlots = tradeSlots;
.restockHour = restockHour;
}
{
}
String {
.id;
}
String {
.displayNameKey;
}
RefreshInterval {
.refreshInterval;
}
BarterTrade[] getTrades() {
.trades;
}
TradeSlot[] getTradeSlots() {
.tradeSlots;
}
{
.tradeSlots != && .tradeSlots.length > ;
}
{
.restockHour != ? .restockHour : ;
}
String {
.id;
+ var10000 + + .displayNameKey + + String.valueOf(.refreshInterval) + + .getRestockHour() + + Arrays.toString(.trades) + + Arrays.toString(.tradeSlots) + ;
}
{
CODEC = ((AssetBuilderCodec.Builder)((AssetBuilderCodec.Builder)((AssetBuilderCodec.Builder)((AssetBuilderCodec.Builder)((AssetBuilderCodec.Builder)AssetBuilderCodec.builder(BarterShopAsset.class, BarterShopAsset::, Codec.STRING, (asset, s) -> asset.id = s, (asset) -> asset.id, (asset, data) -> asset.extraData = data, (asset) -> asset.extraData).addField( (, Codec.STRING), (asset, s) -> asset.displayNameKey = s, (asset) -> asset.displayNameKey)).addField( (, RefreshInterval.CODEC), (asset, interval) -> asset.refreshInterval = interval, (asset) -> asset.refreshInterval)).addField( (, (BarterTrade.CODEC, (x$) -> [x$])), (asset, trades) -> asset.trades = trades, (asset) -> asset.trades)).addField( (, (TradeSlot.CODEC, (x$) -> [x$])), (asset, slots) -> asset.tradeSlots = slots, (asset) -> asset.tradeSlots)).addField( (, Codec.INTEGER, ), (asset, hour) -> asset.restockHour = hour, (asset) -> asset.restockHour)).build();
VALIDATOR_CACHE = <String>( (BarterShopAsset::getAssetStore));
}
}