Ejemplo n.º 1
0
 public void Deserialize(JSONVehicle _json)
 {
     Clear();
     m_currentPartID = _json.parts.Count;
     vehicleName     = _json.name;
     selectedParts.Clear();
     foreach (JSONPart jsonPart in _json.parts)
     {
         Part prefab = DataManager.instance.GetPrefabFromName(jsonPart.prefabName);
         if (prefab != null)
         {
             Part part = Instantiate(prefab.gameObject, transform).GetComponent <Part>();
             part.Deserialize(jsonPart);
             part.AttachTo(GetPartByID(jsonPart.partTargetId).GetJointFromID(jsonPart.constraintJoint));
         }
     }
     ComputeCenterOfMass();
 }
Ejemplo n.º 2
0
    public JSONVehicle Serialize()
    {
        JSONVehicle vehicleJson = new JSONVehicle();

        vehicleJson.version = "0.0.1";
        vehicleJson.name    = vehicleName;
        vehicleJson.parts   = new List <JSONPart>();
        for (int i = 1; i < transform.childCount; i++)
        {
            Part part = transform.GetChild(i).GetComponent <Part>();
            if (part != null)
            {
                vehicleJson.parts.Add(part.Serialize());
            }
        }

        return(vehicleJson);
    }