public MovingPlatform(OgmoObject obj, Level level) : base(obj, level) { nodes.AddRange(obj.Nodes); if (nodes.Count > 0) { direction = Vector2.Normalize(nodes[currentNode].Position - this.Position); nodes.Add(new OgmoNode(this.Position)); } OgmoNumberValue speedValue = obj.GetValue <OgmoNumberValue>("speed"); if (speedValue != null) { speed = speedValue.Value; } }
internal static OgmoValue Read(ContentReader reader) { OgmoValue value = null; string valueType = reader.ReadString(); switch (valueType) { case "b": value = new OgmoBooleanValue(reader); break; case "i": value = new OgmoIntegerValue(reader); break; case "n": value = new OgmoNumberValue(reader); break; case "s": value = new OgmoStringValue(reader); break; } return value; }