32 lines
903 B
Java
32 lines
903 B
Java
package com.pretzel.dev.villagertradelimiter.nms;
|
|
|
|
import java.util.Map;
|
|
|
|
import org.bukkit.persistence.PersistentDataContainer;
|
|
|
|
import com.pretzel.dev.villagertradelimiter.nms.utils.nmsmappings.ReflectionMethod;
|
|
|
|
public class NBTPersistentDataContainer extends NBTCompound {
|
|
|
|
private final PersistentDataContainer container;
|
|
|
|
public NBTPersistentDataContainer(PersistentDataContainer container) {
|
|
super(null, null);
|
|
this.container = container;
|
|
}
|
|
|
|
@Override
|
|
public Object getCompound() {
|
|
return ReflectionMethod.CRAFT_PERSISTENT_DATA_CONTAINER_TO_TAG.run(container);
|
|
}
|
|
|
|
@Override
|
|
protected void setCompound(Object compound) {
|
|
@SuppressWarnings("unchecked")
|
|
Map<Object, Object> map = (Map<Object, Object>) ReflectionMethod.CRAFT_PERSISTENT_DATA_CONTAINER_GET_MAP.run(container);
|
|
map.clear();
|
|
ReflectionMethod.CRAFT_PERSISTENT_DATA_CONTAINER_PUT_ALL.run(container, compound);
|
|
}
|
|
|
|
}
|