Exemple #1
0
 private void maxWidthTextBox_TextChanged(object sender, EventArgs e)
 {
     OgmoParse.Parse(ref project.LevelMaximumSize, maxWidthTextBox, maxHeightTextBox);
 }
Exemple #2
0
 private void cameraWidthTextBox_Validated(object sender, EventArgs e)
 {
     OgmoParse.Parse(ref project.CameraSize, cameraWidthTextBox, cameraHeightTextBox);
 }
Exemple #3
0
 private void defaultWidthTextBox_Validated(object sender, EventArgs e)
 {
     OgmoParse.Parse(ref project.LevelDefaultSize, defaultWidthTextBox, defaultHeightTextBox);
 }
Exemple #4
0
 private void minWidthTextBox_Validated(object sender, EventArgs e)
 {
     OgmoParse.Parse(ref project.LevelMinimumSize, minWidthTextBox, minHeightTextBox);
 }
Exemple #5
0
        private void LoadFromJSON(JObject json)
        {
            bool cleanJSON = true;

            Size size = new Size();

            //Import the size
            if (json.Property("width") != null)
            {
                size.Width = Convert.ToInt32(json.GetValue("width"));
            }
            else
            {
                size.Width = Ogmo.Project.LevelDefaultSize.Width;
            }

            if (json.Property("height") != null)
            {
                size.Height = Convert.ToInt32(json.GetValue("height"));
            }
            else
            {
                size.Height = Ogmo.Project.LevelDefaultSize.Height;
            }

            //Error check the width
            if (size.Width < Ogmo.Project.LevelMinimumSize.Width)
            {
                size.Width = Ogmo.Project.LevelMinimumSize.Width;
                cleanJSON  = false;
            }
            else if (size.Width > Ogmo.Project.LevelMaximumSize.Width)
            {
                size.Width = Ogmo.Project.LevelMaximumSize.Width;
                cleanJSON  = false;
            }

            Size = size;

            //Import the camera position
            if (json.Property("camera") != null)
            {
                JObject cam = (JObject)json.GetValue("camera");
                CameraPosition.X = Convert.ToInt32(cam.GetValue("x"));
                CameraPosition.Y = Convert.ToInt32(cam.GetValue("y"));
            }

            //Import the level values
            //Initialize values
            if (Project.LevelValueDefinitions.Count > 0)
            {
                Values = new List <Value>();
                foreach (var def in Project.LevelValueDefinitions)
                {
                    Values.Add(new Value(def));
                }
                OgmoParse.ImportValues(Values, json);
            }

            //Import layers
            Layers = new List <Layer>();
            List <JToken> jsonLayers = ((JArray)json.GetValue("layers")).ToList();

            for (int i = 0; i < Project.LayerDefinitions.Count; i++)
            {
                Layer layer = Project.LayerDefinitions[i].GetInstance(this);
                Layers.Add(layer);

                // Find the json object with the name of this layer
                JObject jLayer = (JObject)jsonLayers.Find(o => o.Value <string>("name") == Project.LayerDefinitions[i].Name);

                if (jLayer != null)
                {
                    cleanJSON = (layer.SetJSON(jLayer) && cleanJSON);
                }
            }

            Salvaged = !cleanJSON;
        }
Exemple #6
0
 private void maxCharsTextBox_Validated(object sender, EventArgs e)
 {
     OgmoParse.Parse(ref def.MaxChars, maxCharsTextBox);
     enforceMaxChars();
 }
Exemple #7
0
 private void maxTextBox_TextChanged(object sender, EventArgs e)
 {
     OgmoParse.Parse(ref def.Max, maxTextBox);
 }
Exemple #8
0
        private void LoadFromXML(XmlDocument xml)
        {
            bool       cleanXML = true;
            XmlElement level    = (XmlElement)xml.GetElementsByTagName("level")[0];

            {
                Size size = new Size();

                //Import the size
                if (level.Attributes["width"] != null)
                {
                    size.Width = Convert.ToInt32(level.Attributes["width"].InnerText);
                }
                else
                {
                    size.Width = Ogmo.Project.LevelDefaultSize.Width;
                }
                if (level.Attributes["height"] != null)
                {
                    size.Height = Convert.ToInt32(level.Attributes["height"].InnerText);
                }
                else
                {
                    size.Height = Ogmo.Project.LevelDefaultSize.Height;
                }

                //Error check the width
                if (size.Width < Ogmo.Project.LevelMinimumSize.Width)
                {
                    size.Width = Ogmo.Project.LevelMinimumSize.Width;
                    cleanXML   = false;
                }
                else if (size.Width > Ogmo.Project.LevelMaximumSize.Width)
                {
                    size.Width = Ogmo.Project.LevelMaximumSize.Width;
                    cleanXML   = false;
                }

                //Error check the height
                if (size.Height < Ogmo.Project.LevelMinimumSize.Height)
                {
                    size.Height = Ogmo.Project.LevelMinimumSize.Height;
                    cleanXML    = false;
                }
                else if (size.Height > Ogmo.Project.LevelMaximumSize.Height)
                {
                    size.Height = Ogmo.Project.LevelMaximumSize.Height;
                    cleanXML    = false;
                }

                Size = size;
            }

            //Import the camera position
            if (level.GetElementsByTagName("camera").Count > 0)
            {
                XmlElement cam = (XmlElement)level.GetElementsByTagName("camera")[0];
                CameraPosition.X = Convert.ToInt32(cam.Attributes["x"].InnerText);
                CameraPosition.Y = Convert.ToInt32(cam.Attributes["y"].InnerText);
            }

            //Import the level values
            //Initialize values
            if (Project.LevelValueDefinitions.Count > 0)
            {
                Values = new List <Value>();
                foreach (var def in Project.LevelValueDefinitions)
                {
                    Values.Add(new Value(def));
                }
                OgmoParse.ImportValues(Values, level);
            }

            //Import layers
            Layers = new List <Layer>();
            for (int i = 0; i < Project.LayerDefinitions.Count; i++)
            {
                Layer layer = Project.LayerDefinitions[i].GetInstance(this);
                Layers.Add(layer);
                if (level[Project.LayerDefinitions[i].Name] != null)
                {
                    cleanXML = (layer.SetXML(level[Project.LayerDefinitions[i].Name]) && cleanXML);
                }
            }

            Salvaged = !cleanXML;
        }
Exemple #9
0
 private void minTextBox_Validated(object sender, EventArgs e)
 {
     OgmoParse.Parse(ref def.Min, minTextBox);
 }
Exemple #10
0
 private void defaultTextBox_Validated(object sender, EventArgs e)
 {
     OgmoParse.Parse(ref def.Default, defaultTextBox);
 }
 private void roundTextBox_Validated(object sender, EventArgs e)
 {
     OgmoParse.Parse(ref def.Round, roundTextBox);
 }
Exemple #12
0
        public Entity(EntityLayer layer, XmlElement xml)
        {
            Layer      = layer;
            Definition = Ogmo.Project.EntityDefinitions.Find(d => d.Name == xml.Name);

            //ID
            if (xml.Attributes["id"] != null)
            {
                ID = Convert.ToUInt32(xml.Attributes["id"].InnerText);
            }
            else
            {
                ID = layer.GetNewEntityID();
            }

            //Position
            Position = new Point(Convert.ToInt32(xml.Attributes["x"].InnerText), Convert.ToInt32(xml.Attributes["y"].InnerText));

            //Size
            if (Definition.ResizableX && xml.Attributes["width"] != null)
            {
                Size.Width = Convert.ToInt32(xml.Attributes["width"].InnerText);
            }
            else
            {
                Size.Width = Definition.Size.Width;
            }
            if (Definition.ResizableY && xml.Attributes["height"] != null)
            {
                Size.Height = Convert.ToInt32(xml.Attributes["height"].InnerText);
            }
            else
            {
                Size.Height = Definition.Size.Height;
            }

            //Rotation
            if (Definition.Rotatable && xml.Attributes["angle"] != null)
            {
                Angle = Ogmo.Project.ImportAngle(xml.Attributes["angle"].InnerText);
            }

            //Nodes
            if (Definition.NodesDefinition.Enabled)
            {
                Nodes = new List <Point>();
                foreach (XmlElement node in xml.GetElementsByTagName("node"))
                {
                    Nodes.Add(new Point(Convert.ToInt32(node.Attributes["x"].InnerText), Convert.ToInt32(node.Attributes["y"].InnerText)));
                }
            }

            //Values
            if (Definition.ValueDefinitions.Count > 0)
            {
                Values = new List <Value>(Definition.ValueDefinitions.Count);
                foreach (var d in Definition.ValueDefinitions)
                {
                    Values.Add(new Value(d));
                }
                OgmoParse.ImportValues(Values, xml);
            }
        }
Exemple #13
0
        public Entity(EntityLayer layer, JObject json)
        {
            Layer      = layer;
            Definition = Ogmo.Project.EntityDefinitions.Find(d => d.Name == (string)json.GetValue("name"));

            //ID
            if (json.Property("id") != null)
            {
                ID = Convert.ToUInt32(json.GetValue("id"));
            }
            else
            {
                ID = layer.GetNewEntityID();
            }

            //Position
            Position = new Point(Convert.ToInt32(json.GetValue("x")), Convert.ToInt32(json.GetValue("y")));

            //Size
            if (Definition.ResizableX && json.Property("width") != null)
            {
                Size.Width = Convert.ToInt32(json.GetValue("width"));
            }
            else
            {
                Size.Width = Definition.Size.Width;
            }

            if (Definition.ResizableY && json.Property("height") != null)
            {
                Size.Height = Convert.ToInt32(json.GetValue("height"));
            }
            else
            {
                Size.Height = Definition.Size.Height;
            }

            //Rotation
            if (Definition.Rotatable && json.Property("angle") != null)
            {
                Angle = Ogmo.Project.ImportAngle((string)json.GetValue("angle"));
            }

            //Nodes
            if (Definition.NodesDefinition.Enabled)
            {
                Nodes = new List <Point>();
                if (json.Property("nodes") != null)
                {
                    foreach (JObject node in json.GetValue("nodes"))
                    {
                        Nodes.Add(new Point(Convert.ToInt32(node.GetValue("x")), Convert.ToInt32(node.GetValue("y"))));
                    }
                }
            }

            //Values
            if (Definition.ValueDefinitions.Count > 0)
            {
                Values = new List <Value>(Definition.ValueDefinitions.Count);
                foreach (var d in Definition.ValueDefinitions)
                {
                    Values.Add(new Value(d));
                }
                OgmoParse.ImportValues(Values, json);
            }
        }