diff --git a/Projects/Server/Serialization/GenericPersistence.cs b/Projects/Server/Serialization/GenericPersistence.cs index b5f399541..cd013b1a9 100644 --- a/Projects/Server/Serialization/GenericPersistence.cs +++ b/Projects/Server/Serialization/GenericPersistence.cs @@ -23,7 +23,8 @@ namespace Server public static void Register( string name, Action serializer, - Action deserializer + Action deserializer, + int priority = Persistence.DefaultPriority ) { BufferWriter saveBuffer = null; @@ -77,7 +78,7 @@ namespace Server } } - Persistence.Register(Serialize, WriterSnapshot, Deserialize); + Persistence.Register(Serialize, WriterSnapshot, Deserialize, priority); } } } diff --git a/Projects/Server/Serialization/Persistence.cs b/Projects/Server/Serialization/Persistence.cs index 2d1b05674..c2b91309a 100644 --- a/Projects/Server/Serialization/Persistence.cs +++ b/Projects/Server/Serialization/Persistence.cs @@ -23,13 +23,15 @@ namespace Server { public static class Persistence { + public const int DefaultPriority = 100; + public static readonly SortedSet _registry = new(new RegistryEntryComparer()); public static void Register( Action serializer, Action snapshotWriter, Action deserializer, - int priority = 100 + int priority = DefaultPriority ) { _registry.Add(