diff --git a/Content.Server/Atmos/Serialization/TileAtmosCollectionSerializer.cs b/Content.Server/Atmos/Serialization/TileAtmosCollectionSerializer.cs index 5b30d65e48..900c3cb60c 100644 --- a/Content.Server/Atmos/Serialization/TileAtmosCollectionSerializer.cs +++ b/Content.Server/Atmos/Serialization/TileAtmosCollectionSerializer.cs @@ -25,7 +25,7 @@ public sealed partial class TileAtmosCollectionSerializer : ITypeSerializer>? instanceProvider = null) { - node.TryGetValue(new ValueDataNode("version"), out var versionNode); + node.TryGetValue("version", out var versionNode); var version = ((ValueDataNode?) versionNode)?.AsInt() ?? 1; Dictionary tiles = new(); @@ -59,7 +59,7 @@ public sealed partial class TileAtmosCollectionSerializer : ITypeSerializer(dataNode["chunkSize"], hookCtx, context); - dataNode.TryGetValue(new ValueDataNode("uniqueMixes"), out var mixNode); + dataNode.TryGet("uniqueMixes", out var mixNode); var unique = mixNode == null ? null : serializationManager.Read?>(mixNode, hookCtx, context); if (unique != null) @@ -67,7 +67,7 @@ public sealed partial class TileAtmosCollectionSerializer : ITypeSerializer(chunkNode, hookCtx, context); + var chunkOrigin = serializationManager.Read(tileNode.GetKeyNode(chunkNode), hookCtx, context); var chunk = serializationManager.Read(valueNode, hookCtx, context); foreach (var (mix, data) in chunk.Data) diff --git a/Content.Server/Maps/MapMigrationSystem.cs b/Content.Server/Maps/MapMigrationSystem.cs index 3341034a35..e04cfa1793 100644 --- a/Content.Server/Maps/MapMigrationSystem.cs +++ b/Content.Server/Maps/MapMigrationSystem.cs @@ -33,7 +33,7 @@ public sealed class MapMigrationSystem : EntitySystem return; // Verify that all of the entries map to valid entity prototypes. - foreach (var node in mappings.Values) + foreach (var node in mappings.Children.Values) { var newId = ((ValueDataNode) node).Value; if (!string.IsNullOrEmpty(newId) && newId != "null") @@ -66,13 +66,13 @@ public sealed class MapMigrationSystem : EntitySystem foreach (var (key, value) in mappings) { - if (key is not ValueDataNode keyNode || value is not ValueDataNode valueNode) + if (value is not ValueDataNode valueNode) continue; if (string.IsNullOrWhiteSpace(valueNode.Value) || valueNode.Value == "null") - ev.DeletedPrototypes.Add(keyNode.Value); + ev.DeletedPrototypes.Add(key); else - ev.RenamedPrototypes.Add(keyNode.Value, valueNode.Value); + ev.RenamedPrototypes.Add(key, valueNode.Value); } } } diff --git a/Content.Server/NPC/NPCBlackboardSerializer.cs b/Content.Server/NPC/NPCBlackboardSerializer.cs index 56db17a0a7..a7c36dc6a5 100644 --- a/Content.Server/NPC/NPCBlackboardSerializer.cs +++ b/Content.Server/NPC/NPCBlackboardSerializer.cs @@ -23,11 +23,11 @@ public sealed class NPCBlackboardSerializer : ITypeReader("slots"); var allConnections = new Dictionary? Connections, Dictionary? Organs)>(); - foreach (var (keyNode, valueNode) in slotNodes) + foreach (var (slotId, valueNode) in slotNodes) { - var slotId = ((ValueDataNode) keyNode).Value; - var slot = ((MappingDataNode) valueNode); + var slot = (MappingDataNode) valueNode; string? part = null; if (slot.TryGet("part", out var value)) @@ -155,9 +142,9 @@ public sealed class BodyPrototypeSerializer : ITypeReader(); - foreach (var (organKeyNode, organValueNode) in slotOrgansNode) + foreach (var (organKey, organValueNode) in slotOrgansNode) { - organs.Add(((ValueDataNode) organKeyNode).Value, ((ValueDataNode) organValueNode).Value); + organs.Add(organKey, ((ValueDataNode) organValueNode).Value); } } diff --git a/Content.Shared/Containers/ContainerFillComponent.cs b/Content.Shared/Containers/ContainerFillComponent.cs index 7ce5fa8850..aa8c98fd1f 100644 --- a/Content.Shared/Containers/ContainerFillComponent.cs +++ b/Content.Shared/Containers/ContainerFillComponent.cs @@ -49,13 +49,11 @@ public sealed class ContainerFillSerializer : ITypeValidator(key, context); - var listVal = (val is SequenceDataNode seq) ? ListSerializer.Validate(serializationManager, seq, dependencies, context) : new ErrorNode(val, "ContainerFillComponent prototypes must be a sequence/list"); - mapping.Add(keyVal, listVal); + mapping.Add(new ValidatedValueNode(node.GetKeyNode(key)), listVal); } return new ValidatedMappingNode(mapping); diff --git a/Content.Shared/Decals/DecalGridChunkCollectionTypeSerializer.cs b/Content.Shared/Decals/DecalGridChunkCollectionTypeSerializer.cs index ae4c89c970..f2f9e89603 100644 --- a/Content.Shared/Decals/DecalGridChunkCollectionTypeSerializer.cs +++ b/Content.Shared/Decals/DecalGridChunkCollectionTypeSerializer.cs @@ -29,7 +29,7 @@ namespace Content.Shared.Decals IDependencyCollection dependencies, SerializationHookContext hookCtx, ISerializationContext? context = null, ISerializationManager.InstantiationDelegate? _ = default) { - node.TryGetValue(new ValueDataNode("version"), out var versionNode); + node.TryGetValue("version", out var versionNode); var version = ((ValueDataNode?) versionNode)?.AsInt() ?? 1; Dictionary dictionary; uint nextIndex = 0; @@ -49,7 +49,7 @@ namespace Content.Shared.Decals foreach (var (decalUidNode, decalData) in deckNodes) { - var dUid = serializationManager.Read(decalUidNode, hookCtx, context); + var dUid = uint.Parse(decalUidNode, CultureInfo.InvariantCulture); var coords = serializationManager.Read(decalData, hookCtx, context); var chunkOrigin = SharedMapSystem.GetChunkIndices(coords, SharedDecalSystem.ChunkSize); @@ -132,7 +132,7 @@ namespace Content.Shared.Decals { var decal = decalLookup[uid]; // Inline coordinates - decks.Add(serializationManager.WriteValue(uid, alwaysWrite, context), serializationManager.WriteValue(decal.Coordinates, alwaysWrite, context)); + decks.Add(uid.ToString(), serializationManager.WriteValue(decal.Coordinates, alwaysWrite, context)); } lookupNode.Add("decals", decks);