Beispiel #1
0
    // Use this for initialization
    void Start()
    {
        if (HardPointsSources.Length > 0)
        {
            Directory.CreateDirectory(Application.dataPath + "/ShipHardPoints");
            foreach (GameObject source in HardPointsSources)
            {
                HardPoints hardPoints = source.GetComponent <HardPoints>();
                if (hardPoints != null)
                {
                    HardPointsStored hardPointsStored = new HardPointsStored(hardPoints);

                    string        path   = Application.dataPath + "/ShipHardPoints/" + source.name + ".xml";
                    XmlSerializer Writer = new XmlSerializer(typeof(HardPointsStored));
                    FileStream    file   = File.Create(path);
                    Writer.Serialize(file, hardPointsStored);
                    file.Close();
                }
            }
        }
    }
    public HardPointsStored(HardPoints hardPoints)
    {
        ForeHardPointSets = new HardPointSetStored[hardPoints.foreWeaponHardPoints.Count];

        for (int i = 0; i < ForeHardPointSets.Length; i++)
        {
            ForeHardPointSets[i] = new HardPointSetStored(hardPoints.foreWeaponHardPoints[i]);
        }

        AftHardPointSets = new HardPointSetStored[hardPoints.aftWeaponHardPoints.Count];

        for (int i = 0; i < AftHardPointSets.Length; i++)
        {
            AftHardPointSets[i] = new HardPointSetStored(hardPoints.aftWeaponHardPoints[i]);
        }

        PortHardPointSets = new HardPointSetStored[hardPoints.portWeaponHardPoints.Count];

        for (int i = 0; i < PortHardPointSets.Length; i++)
        {
            PortHardPointSets[i] = new HardPointSetStored(hardPoints.portWeaponHardPoints[i]);
        }

        StarboardHardPointSets = new HardPointSetStored[hardPoints.starboardWeaponHardPoints.Count];

        for (int i = 0; i < StarboardHardPointSets.Length; i++)
        {
            StarboardHardPointSets[i] = new HardPointSetStored(hardPoints.starboardWeaponHardPoints[i]);
        }

        DamagePoints = new Vector3[hardPoints.damageHardPoints.Count];

        for (int i = 0; i < DamagePoints.Length; i++)
        {
            DamagePoints[i] = hardPoints.damageHardPoints[i].transform.localPosition;
        }
    }