package com.bergerkiller.bukkit.common.reflection.classes; import java.util.List; import com.bergerkiller.bukkit.common.reflection.ClassTemplate; import com.bergerkiller.bukkit.common.reflection.MethodAccessor; import com.bergerkiller.bukkit.common.reflection.NMSClassTemplate; import com.bergerkiller.bukkit.common.reflection.SafeConstructor; public class DataWatcherRef { public static final ClassTemplate<Object> TEMPLATE = new NMSClassTemplate("DataWatcher"); public static final MethodAccessor<Void> write = TEMPLATE.getMethod("a", int.class, Object.class); public static final MethodAccessor<Void> watch = TEMPLATE.getMethod("watch", int.class, Object.class); public static final MethodAccessor<List<Object>> returnAllWatched = TEMPLATE.getMethod("c"); public static final MethodAccessor<List<Object>> unwatchAndReturnAllWatched = TEMPLATE.getMethod("b"); public static final MethodAccessor<Object> read = TEMPLATE.getMethod("i", int.class); public static final MethodAccessor<Boolean> isChanged = TEMPLATE.getMethod("a"); public static final MethodAccessor<Boolean> isEmpty = TEMPLATE.getMethod("d"); public static final SafeConstructor<Object> constructor1 = TEMPLATE.getConstructor(EntityRef.TEMPLATE.getType()); /** * @deprecated Use com.bergerkiller.bukkit.common.wrappers.DataWatcher instead */ @Deprecated public static void write(Object datawatcher, int index, Object value) { write.invoke(datawatcher, index, value); } /** * @deprecated Use com.bergerkiller.bukkit.common.wrappers.DataWatcher instead */ @Deprecated public static void watch(Object datawatcher, int index, Object value) { watch.invoke(index, value); } /** * @deprecated Use com.bergerkiller.bukkit.common.wrappers.DataWatcher instead */ @Deprecated public static List<Object> getAllWatched(Object datawatcher) { return returnAllWatched.invoke(datawatcher); } /** * @deprecated Use com.bergerkiller.bukkit.common.wrappers.DataWatcher instead */ @Deprecated public static List<Object> unwatchAndGetAllWatched(Object datawatcher) { return unwatchAndReturnAllWatched.invoke(datawatcher); } /** * @deprecated Use com.bergerkiller.bukkit.common.wrappers.DataWatcher instead */ @Deprecated public static Object create() { return TEMPLATE.newInstance(); } }