fix: half of the universe objects not getting deserialized because of for loop
This commit is contained in:
@@ -53,7 +53,7 @@ public class UniverseConverter : EngineTypeYamlSerializerBase<IUniverse>
|
|||||||
universe.Assign(stateEnable);
|
universe.Assign(stateEnable);
|
||||||
|
|
||||||
ProgressionTracker.Set(isTrackingController ? .9f : ProgressionTracker.Progression, "Registering root universe object");
|
ProgressionTracker.Set(isTrackingController ? .9f : ProgressionTracker.Progression, "Registering root universe object");
|
||||||
for (int i = 0; i < rootUniverseObject.Children.Count; i++)
|
for (int i = rootUniverseObject.Children.Count - 1; i >= 0; i--)
|
||||||
{
|
{
|
||||||
IUniverseObject uo = rootUniverseObject.Children[i];
|
IUniverseObject uo = rootUniverseObject.Children[i];
|
||||||
ProgressionTracker.Set(isTrackingController ? .9f + .1f * ((float)i / rootUniverseObject.Children.Count) : ProgressionTracker.Progression, $"Registering {uo.Name}");
|
ProgressionTracker.Set(isTrackingController ? .9f + .1f * ((float)i / rootUniverseObject.Children.Count) : ProgressionTracker.Progression, $"Registering {uo.Name}");
|
||||||
|
|||||||
@@ -97,7 +97,7 @@ public class UniverseObjectSerializer : EngineTypeYamlSerializerBase<IUniverseOb
|
|||||||
serializer(universeObject.BehaviourController);
|
serializer(universeObject.BehaviourController);
|
||||||
|
|
||||||
emitter.Emit(new Scalar(nameof(IUniverseObject.Children)));
|
emitter.Emit(new Scalar(nameof(IUniverseObject.Children)));
|
||||||
serializer(universeObject.Children.Where(c => !c.GetType().HasAttribute<IgnoreSerializationAttribute>()).Reverse());
|
serializer(universeObject.Children.Where(c => !c.GetType().HasAttribute<IgnoreSerializationAttribute>()));
|
||||||
|
|
||||||
ProgressionTracker.Set(isTrackingController ? 1f : ProgressionTracker.Progression, $"Serializing universe object");
|
ProgressionTracker.Set(isTrackingController ? 1f : ProgressionTracker.Progression, $"Serializing universe object");
|
||||||
emitter.Emit(new MappingEnd());
|
emitter.Emit(new MappingEnd());
|
||||||
|
|||||||
Reference in New Issue
Block a user