mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2025-04-04 10:46:23 +02:00
72 lines
3.3 KiB
Java
72 lines
3.3 KiB
Java
package com.gmail.nossr50.metadata;
|
|
|
|
import com.gmail.nossr50.mcMMO;
|
|
import com.gmail.nossr50.util.MetadataConstants;
|
|
import org.bukkit.NamespacedKey;
|
|
import org.jetbrains.annotations.NotNull;
|
|
|
|
public class MetadataService {
|
|
private final @NotNull mcMMO pluginRef;
|
|
|
|
protected static final @NotNull NamespacedKey NSK_SUPER_ABILITY_BOOSTED_ITEM;
|
|
protected static final @NotNull NamespacedKey NSK_MOB_SPAWNER_MOB;
|
|
protected static final @NotNull NamespacedKey NSK_EGG_MOB;
|
|
protected static final @NotNull NamespacedKey NSK_NETHER_GATE_MOB;
|
|
protected static final @NotNull NamespacedKey NSK_COTW_SUMMONED_MOB;
|
|
protected static final @NotNull NamespacedKey NSK_PLAYER_BRED_MOB;
|
|
protected static final @NotNull NamespacedKey NSK_PLAYER_TAMED_MOB;
|
|
protected static final @NotNull NamespacedKey NSK_VILLAGER_TRADE_ORIGIN_ITEM;
|
|
protected static final @NotNull NamespacedKey NSK_EXPLOITED_ENDERMEN;
|
|
protected static final @NotNull NamespacedKey NSK_FURNACE_UUID_MOST_SIG;
|
|
protected static final @NotNull NamespacedKey NSK_FURNACE_UUID_LEAST_SIG;
|
|
|
|
static {
|
|
NSK_SUPER_ABILITY_BOOSTED_ITEM = getNamespacedKey(MetadataConstants.METADATA_KEY_SUPER_ABILITY_BOOSTED_ITEM);
|
|
NSK_MOB_SPAWNER_MOB = getNamespacedKey(MetadataConstants.METADATA_KEY_MOB_SPAWNER_MOB);
|
|
NSK_EGG_MOB = getNamespacedKey(MetadataConstants.METADATA_KEY_EGG_MOB);
|
|
NSK_NETHER_GATE_MOB = getNamespacedKey(MetadataConstants.METADATA_KEY_NETHER_PORTAL_MOB);
|
|
NSK_COTW_SUMMONED_MOB = getNamespacedKey(MetadataConstants.METADATA_KEY_COTW_SUMMONED_MOB);
|
|
NSK_PLAYER_BRED_MOB = getNamespacedKey(MetadataConstants.METADATA_KEY_PLAYER_BRED_MOB);
|
|
NSK_PLAYER_TAMED_MOB = getNamespacedKey(MetadataConstants.METADATA_KEY_PLAYER_TAMED_MOB);
|
|
NSK_VILLAGER_TRADE_ORIGIN_ITEM = getNamespacedKey(MetadataConstants.METADATA_KEY_VILLAGER_TRADE_ORIGIN_ITEM);
|
|
NSK_EXPLOITED_ENDERMEN = getNamespacedKey(MetadataConstants.METADATA_KEY_EXPLOITED_ENDERMEN);
|
|
NSK_FURNACE_UUID_MOST_SIG = getNamespacedKey(MetadataConstants.METADATA_KEY_FURNACE_UUID_MOST_SIG);
|
|
NSK_FURNACE_UUID_LEAST_SIG = getNamespacedKey(MetadataConstants.METADATA_KEY_FURNACE_UUID_LEAST_SIG);
|
|
}
|
|
|
|
private final @NotNull ItemMetadataService itemMetadataService;
|
|
private final @NotNull MobMetadataService mobMetadataService;
|
|
private final @NotNull BlockMetadataService blockMetadataService;
|
|
|
|
public MetadataService(@NotNull mcMMO pluginRef) {
|
|
this.pluginRef = pluginRef;
|
|
|
|
blockMetadataService = new BlockMetadataService(pluginRef);
|
|
mobMetadataService = new MobMetadataService(pluginRef);
|
|
itemMetadataService = new ItemMetadataService(pluginRef);
|
|
}
|
|
|
|
/**
|
|
* Helper method to simplify generating namespaced keys
|
|
*
|
|
* @param key the {@link String} value of the key
|
|
*
|
|
* @return the generated {@link NamespacedKey}
|
|
*/
|
|
public static @NotNull NamespacedKey getNamespacedKey(@NotNull String key) {
|
|
return new NamespacedKey(mcMMO.p, key);
|
|
}
|
|
|
|
public @NotNull ItemMetadataService getItemMetadataService() {
|
|
return itemMetadataService;
|
|
}
|
|
|
|
public @NotNull MobMetadataService getMobMetadataService() {
|
|
return mobMetadataService;
|
|
}
|
|
|
|
public @NotNull BlockMetadataService getBlockMetadataService() {
|
|
return blockMetadataService;
|
|
}
|
|
}
|