ClassData.SaveData C# (CSharp) Méthode

SaveData() public méthode

public SaveData ( ) : void
Résultat void
    public void SaveData()
    {
        if(name.Length == 0) return;
        ArrayList data = new ArrayList();
        ArrayList subs = new ArrayList();
        Hashtable sv = new Hashtable();

        sv.Add(XMLHandler.NODE_NAME, ClassData.CLASSES);

        for(int i=0; i<name[0].Count(); i++)
        {
            Hashtable ht = new Hashtable();
            ArrayList s = new ArrayList();

            ht.Add(XMLHandler.NODE_NAME, ClassData.CLASS);
            ht.Add("id", i.ToString());
            ht.Add("equipparts", classes[i].equipPart.Length.ToString());
            ht.Add("weapons", classes[i].weapon.Length.ToString());
            ht.Add("armors", classes[i].armor.Length.ToString());

            s = this.SaveLanguages(s, i);

            for(int j=0; j<classes[i].equipPart.Length; j++)
            {
                if(classes[i].equipPart[j])
                {
                    Hashtable ep = new Hashtable();
                    ep.Add(XMLHandler.NODE_NAME, ClassData.EQUIPPART);
                    ep.Add("id", j.ToString());
                    s.Add(ep);
                }
            }

            for(int j=0; j<classes[i].weapon.Length; j++)
            {
                if(classes[i].weapon[j])
                {
                    Hashtable ep = new Hashtable();
                    ep.Add(XMLHandler.NODE_NAME, ClassData.WEAPON);
                    ep.Add("id", j.ToString());
                    s.Add(ep);
                }
            }

            for(int j=0; j<classes[i].armor.Length; j++)
            {
                if(classes[i].armor[j])
                {
                    Hashtable ep = new Hashtable();
                    ep.Add(XMLHandler.NODE_NAME, ClassData.ARMOR);
                    ep.Add("id", j.ToString());
                    s.Add(ep);
                }
            }

            ht.Add("elements", classes[i].elementValue.Length.ToString());
            for(int j=0; j<classes[i].elementValue.Length; j++)
            {
                if(classes[i].elementValue[j] != 100)
                {
                    Hashtable ep = new Hashtable();
                    ep.Add(XMLHandler.NODE_NAME, ClassData.ELEMENT);
                    ep.Add("id", j.ToString());
                    ep.Add("value", classes[i].elementValue[j].ToString());
                    s.Add(ep);
                }
            }

            ht.Add("races", classes[i].raceValue.Length.ToString());
            for(int j=0; j<classes[i].raceValue.Length; j++)
            {
                if(classes[i].raceValue[j] != 100)
                {
                    Hashtable ep = HashtableHelper.GetTitleHashtable(ClassData.RACE, j);
                    ep.Add("value", classes[i].raceValue[j].ToString());
                    s.Add(ep);
                }
            }

            ht.Add("sizes", classes[i].sizeValue.Length.ToString());
            for(int j=0; j<classes[i].sizeValue.Length; j++)
            {
                if(classes[i].sizeValue[j] != 100)
                {
                    Hashtable ep = HashtableHelper.GetTitleHashtable(ClassData.SIZE, j);
                    ep.Add("value", classes[i].sizeValue[j].ToString());
                    s.Add(ep);
                }
            }

            if(classes[i].useClassLevel) ht.Add("useclasslevel", "true");
            s.Add(classes[i].development.GetData(
                    HashtableHelper.GetTitleHashtable(ClassData.DEVELOPMENT), classes[i].useClassLevel));

            s.Add(classes[i].bonus.GetData(HashtableHelper.GetTitleHashtable(ClassData.BONUS)));

            ht.Add(XMLHandler.NODES, s);
            subs.Add(ht);
        }
        sv.Add(XMLHandler.NODES, subs);
        data.Add(sv);
        XMLHandler.SaveXML(dir, filename, data);
    }