Example #1
0
    public void UpdatePlayerInfo()
    {
        string filePath = Application.persistentDataPath + "/Player.xml";

        if (File.Exists(filePath))
        {
            XmlDocument xmlDoc = new XmlDocument();

            xmlDoc.Load(filePath);

            XmlNodeList playerNodeList = xmlDoc.SelectSingleNode("Player").ChildNodes;
            //遍历Player结点下所有子节点
            foreach (XmlElement xe in playerNodeList)
            {
                switch (xe.Name)
                {
                case "LevelLayer":
                    xe.InnerText = LayerCount.ToString();
                    break;

                case "Hp":
                    xe.InnerText = Hp.ToString();
                    break;

                case "ShootLevel":
                    xe.InnerText = ShootLevel.ToString();
                    break;

                case "SpeedLevel":
                    xe.InnerText = SpeedLevel.ToString();
                    break;

                case "BulletLevel":
                    xe.InnerText = BulletLevel.ToString();
                    break;

                case "LightLevel":
                    xe.InnerText = BulletLevel.ToString();
                    break;

                case "Speed":
                    xe.InnerText = Speed.ToString();
                    break;

                case "ShootTimer":
                    xe.InnerText = ShootTimer.ToString();
                    break;

                case "Money":
                    xe.InnerText = Money.ToString();
                    break;

                case "SkillIcon":
                    xe.InnerText = skillIcon.ToString();
                    break;
                }
            }
            xmlDoc.Save(filePath);
        }
    }
        public string[] ToList()
        {
            string[] properties = new string[4];

            properties[0] = $"Name: {Name}";
            properties[1] = $"Layer Count: {LayerCount.ToString()}";
            properties[2] = $"Object Count: {ObjectCount.ToString()}";
            properties[3] = $"Blockdefinition Count: {BlockDefinitionCount.ToString()}";

            return(properties);
        }
Example #3
0
    public void SavePlayerInfo()
    {
        string filePath = Application.persistentDataPath + "/Player.xml";

        if (!File.Exists(filePath))
        {
            XmlDocument xmlDoc = new XmlDocument();
            //头结点
            XmlElement root = xmlDoc.CreateElement("Player");

            XmlElement locallayer = xmlDoc.CreateElement("LevelLayer");
            locallayer.InnerText = LayerCount.ToString();
            XmlElement localHp = xmlDoc.CreateElement("Hp");
            localHp.InnerText = Hp.ToString();
            XmlElement localShootLevel = xmlDoc.CreateElement("ShootLevel");
            localShootLevel.InnerText = ShootLevel.ToString();
            XmlElement localSpeedLevel = xmlDoc.CreateElement("SpeedLevel");
            localSpeedLevel.InnerText = SpeedLevel.ToString();
            XmlElement localBulletLevel = xmlDoc.CreateElement("BulletLevel");
            localBulletLevel.InnerText = BulletLevel.ToString();
            XmlElement localLightlevel = xmlDoc.CreateElement("LightLevel");
            localLightlevel.InnerText = LightLevel.ToString();
            XmlElement localSpeed = xmlDoc.CreateElement("Speed");
            localSpeed.InnerText = Speed.ToString();
            XmlElement localShootTimer = xmlDoc.CreateElement("ShootTimer");
            localShootTimer.InnerText = ShootTimer.ToString();
            XmlElement localMoney = xmlDoc.CreateElement("Money");
            localMoney.InnerText = Money.ToString();
            XmlElement localSkillIcon = xmlDoc.CreateElement("SkillICon");
            localSkillIcon.InnerText = skillIcon.ToString();

            root.AppendChild(locallayer);
            root.AppendChild(localHp);
            root.AppendChild(localShootLevel);
            root.AppendChild(localSpeedLevel);
            root.AppendChild(localBulletLevel);
            root.AppendChild(localLightlevel);
            root.AppendChild(localSpeed);
            root.AppendChild(localShootTimer);
            root.AppendChild(localMoney);
            root.AppendChild(localSkillIcon);
            xmlDoc.AppendChild(root);
            xmlDoc.Save(filePath);
        }
    }
        public void Save(string FilePath)
        {
            if (string.IsNullOrEmpty(FilePath))
            {
                throw new ArgumentNullException("FilePath");
            }

            var writer = XmlWriter.Create(FilePath);

            writer.WriteStartElement("NeuralNetwork");
            writer.WriteAttributeString("Type", "BackPropagation");

            // Parameters element
            writer.WriteStartElement("Parameters");

            writer.WriteElementString("Name", Name);
            writer.WriteElementString("InputSize", InputSize.ToString());
            writer.WriteElementString("LayerCount", LayerCount.ToString());

            // Layer sizes
            writer.WriteStartElement("Layers");

            for (int l = 0; l < LayerCount; l++)
            {
                writer.WriteStartElement("Layer");

                writer.WriteAttributeString("Index", l.ToString());
                writer.WriteAttributeString("Size", LayerSize[l].ToString());
                writer.WriteAttributeString("Type", TransferFunctions[l].ToString());

                writer.WriteEndElement(); // Layer
            }

            writer.WriteEndElement(); // Layers

            writer.WriteEndElement(); // Parameters

            writer.WriteStartElement("Weights");

            for (int l = 0; l < LayerCount; l++)
            {
                writer.WriteStartElement("Layer");

                writer.WriteAttributeString("Index", l.ToString());
                for (int j = 0; j < LayerSize[l]; j++)
                {
                    writer.WriteStartElement("Node");

                    writer.WriteAttributeString("Index", j.ToString());
                    writer.WriteAttributeString("Bias", Bias[l][j].ToString());

                    for (int i = 0; i < (l == 0 ? InputSize : LayerSize[l - 1]); i++)
                    {
                        writer.WriteStartElement("Axon");

                        writer.WriteAttributeString("Index", i.ToString());
                        writer.WriteString(Weight[l][i][j].ToString());

                        writer.WriteEndElement(); // Axon
                    }

                    writer.WriteEndElement(); // Node
                }

                writer.WriteEndElement(); // Layer
            }

            writer.WriteEndElement(); // Weights

            writer.WriteEndElement(); // NeuralNetwork

            writer.Flush();
            writer.Close();
        }