public class Syncer
extends java.lang.Object
Syncable
annotation on their classes with a value matching a registered ISyncHandler.Sync annotation.sync(Object, String...) with the Sync values for those fields.| Modifier and Type | Method and Description |
|---|---|
static void |
autoSync(java.lang.Object caller) |
void |
discover(net.minecraftforge.fml.common.discovery.ASMDataTable asmDataTable)
|
static Syncer |
get()
Gets the
Syncer instance. |
<T> ISyncHandler<? super T,? extends ISyncableData> |
getHandler(T caller)
Gets the
ISyncHandler for the specified object. |
ISyncHandler<?,? extends ISyncableData> |
getHandlerFromId(int id)
Gets a
ISyncHandler from it's ID |
int |
getHandlerId(ISyncHandler<?,? extends ISyncableData> handler)
Gets the handler id for the specified
ISyncHandler. |
static void |
registerHandler(ISyncHandler<?,? extends ISyncableData> handler)
Registers a
ISyncHandler to the Syncer. |
static void |
sync(java.lang.Object caller,
java.lang.String... syncNames)
Synchronizes the specified fields names and sends the corresponding packet.
|
void |
updateValues(java.lang.Object receiver,
ISyncHandler<?,? extends ISyncableData> handler,
java.util.Map<java.lang.String,java.lang.Object> values)
Update the fields values for the receiver object.
|
public int getHandlerId(ISyncHandler<?,? extends ISyncableData> handler)
ISyncHandler.handler - the handlerpublic ISyncHandler<?,? extends ISyncableData> getHandlerFromId(int id)
ISyncHandler from it's IDid - the idpublic <T> ISyncHandler<? super T,? extends ISyncableData> getHandler(T caller)
ISyncHandler for the specified object.T - the generic typecaller - the callerpublic void discover(net.minecraftforge.fml.common.discovery.ASMDataTable asmDataTable)
Syncable annotation and fields with Sync annotation.ISyncHandler.asmDataTable - the asm data tablepublic void updateValues(java.lang.Object receiver,
ISyncHandler<?,? extends ISyncableData> handler,
java.util.Map<java.lang.String,java.lang.Object> values)
receiver - the callerhandler - the handlervalues - the valuespublic static void registerHandler(ISyncHandler<?,? extends ISyncableData> handler)
ISyncHandler to the Syncer.handler - the handlerpublic static void sync(java.lang.Object caller,
java.lang.String... syncNames)
caller - the callersyncNames - the sync namespublic static void autoSync(java.lang.Object caller)