public override void OnLoad(PluginAssemblyPointer ptr) { base.OnLoad(ptr); WFCFLBufferSerializer wfcbuf = new WFCFLBufferSerializer(); PluginHost.BufferSerializer.AddSerializer(typeof(SerializableWaveFunctionCollapseFLBuffer), wfcbuf); }
private static Byt3Serializer CreateLoader(FLInstructionSet iset) { SerializableBufferArgumentSerializer bbuf = new SerializableBufferArgumentSerializer(); SerializableDecimalArgumentSerializer debuf = new SerializableDecimalArgumentSerializer(); SerializableFunctionArgumentSerializer fabuf = new SerializableFunctionArgumentSerializer(); SerializableExternalFunctionArgumentSerializer exbuf = new SerializableExternalFunctionArgumentSerializer(); Dictionary <Type, FLBaseSerializer> argumentParser = new Dictionary <Type, FLBaseSerializer> { { typeof(SerializeBufferArgument), bbuf }, { typeof(SerializeDecimalArgument), debuf }, { typeof(SerializeFunctionArgument), fabuf }, { typeof(SerializeExternalFunctionArgument), exbuf } }; SerializableFLFunctionSerializer efunc = new SerializableFLFunctionSerializer(argumentParser); SerializableExternalFLFunctionSerializer exfunc = new SerializableExternalFLFunctionSerializer(iset); EmptyFLBufferSerializer ebuf = new EmptyFLBufferSerializer(); RandomFLBufferSerializer rbuf = new RandomFLBufferSerializer(); UnifiedRandomFLBufferSerializer urbuf = new UnifiedRandomFLBufferSerializer(); FromImageFLBufferSerializer fibuf = new FromImageFLBufferSerializer(true); WFCFLBufferSerializer wfcbuf = new WFCFLBufferSerializer(); Dictionary <Type, Serializers.Internal.FLBaseSerializer> bufferParser = new Dictionary <Type, Serializers.Internal.FLBaseSerializer> { { typeof(SerializableExternalFLFunction), exfunc }, { typeof(SerializableFLFunction), efunc }, { typeof(SerializableEmptyFLBuffer), ebuf }, { typeof(SerializableRandomFLBuffer), rbuf }, { typeof(SerializableUnifiedRandomFLBuffer), urbuf }, { typeof(SerializableFromFileFLBuffer), fibuf }, { typeof(SerializableWaveFunctionCollapseFLBuffer), wfcbuf }, }; SerializableFLProgramSerializer prog = new SerializableFLProgramSerializer(bufferParser, iset); Byt3Serializer main = Byt3Serializer.GetDefaultSerializer(); main.AddSerializer(typeof(SerializableFLProgram), prog); main.AddSerializer(typeof(FLFileFormat), new FLFileFormatSerializer()); return(main); }