internal OgmoObject(ContentReader reader) { this.Name = reader.ReadString(); this.Origin = reader.ReadVector2(); this.Position = reader.ReadVector2(); this.Rotation = reader.ReadSingle(); this.Width = reader.ReadInt32(); this.Height = reader.ReadInt32(); Rectangle source = Rectangle.Empty; source.X = reader.ReadInt32(); source.Y = reader.ReadInt32(); source.Width = reader.ReadInt32(); source.Height = reader.ReadInt32(); this.Source = source; this.IsTiled = reader.ReadBoolean(); this.Texture = reader.ReadExternalReference <Texture2D>(); int valueCount = reader.ReadInt32(); if (valueCount > 0) { for (int i = 0; i < valueCount; i++) { OgmoValue value = OgmoValueReader.Read(reader); if (value != null) { values.Add(value.Name, value); } } } int nodeCount = reader.ReadInt32(); if (nodeCount > 0) { for (int i = 0; i < nodeCount; i++) { nodes.Add(new OgmoNode(reader)); } } }
internal OgmoLevel(ContentReader reader) { // Project this.Project = reader.ReadExternalReference <OgmoProject>(); // Values int valueCount = reader.ReadInt32(); if (valueCount > 0) { for (int i = 0; i < valueCount; i++) { OgmoValue value = OgmoValueReader.Read(reader); if (value != null) { values.Add(value.Name, value); } } } // Height this.Height = reader.ReadInt32(); // Width this.Width = reader.ReadInt32(); // Layers int layerCount = reader.ReadInt32(); if (layerCount > 0) { for (int i = 0; i < layerCount; i++) { OgmoLayer layer = OgmoLayerReader.Read(reader, this); if (layer != null) { this.layers.Add(layer.Name, layer); } } } }