From d2b8e68b0862c2ab013d02ad7e4c81e7dbad6cb6 Mon Sep 17 00:00:00 2001 From: cosmonaut Date: Wed, 20 Dec 2023 14:51:19 -0800 Subject: [PATCH] fix snapshot edge cases + fix debug component list --- src/Snapshot.cs | 7 +++---- src/TypeId.cs | 1 + 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Snapshot.cs b/src/Snapshot.cs index 9090852..4537e14 100644 --- a/src/Snapshot.cs +++ b/src/Snapshot.cs @@ -60,7 +60,7 @@ public class Snapshot : IDisposable relationStorage.Clear(); } - for (var i = 0; i < world.ComponentIndex.Count; i += 1) + for (var i = 0; i < ComponentSnapshots.Count; i += 1) { var componentStorage = world.ComponentIndex[i]; ComponentSnapshots[i].Restore(componentStorage); @@ -106,10 +106,9 @@ public class Snapshot : IDisposable } // restore entity tags - world.EntityTags.Clear(); - foreach (var s in EntityTags) + for (var i = 0; i < EntityTags.Count; i += 1) { - world.EntityTags.Add(s); + world.EntityTags[i] = EntityTags[i]; } } diff --git a/src/TypeId.cs b/src/TypeId.cs index 92f3598..53c785f 100644 --- a/src/TypeId.cs +++ b/src/TypeId.cs @@ -36,6 +36,7 @@ public class ComponentTypeIdAssigner : ComponentTypeIdAssigner #if DEBUG World.ComponentTypeToId[typeof(T)] = new TypeId(Id); + World.ComponentTypeIdToType.Add(typeof(T)); #endif } }