public static bool LoadShip(Transform theShipTrans, string shipName) { string path = Application.persistentDataPath + "/" + shipName + ".json"; Debug.Log(path); if (!File.Exists(path)) { return(false); } foreach (Transform cube in theShipTrans) { MonoBehaviour.Destroy(cube.gameObject); } string json = File.ReadAllText(path); ShipData loadedShipData = JsonUtility.FromJson <ShipData>(json); foreach (CubeData c in loadedShipData.cubeDatas) { GameObject o = (GameObject)MonoBehaviour.Instantiate(Resources.Load(c.cubeName), c.transformDatas.position, c.transformDatas.rotation, theShipTrans); o.transform.localScale = c.transformDatas.scale; //Debug.Log(c.materialName + "<<<<<"); //Debug.Log("Mass>>>>>"+o.GetComponent<PhysicalProperty>().mass); if (Resources.Load(c.materialName)) { //Debug.Log(c.materialName); HelperFuns.SetCubeMaterial(o, (Material)Resources.Load(c.materialName)); } } return(true); }
public static void LoadShipFromJson(Transform theShipTrans, string json) { ShipData loadedShipData = JsonUtility.FromJson <ShipData>(json); foreach (CubeData c in loadedShipData.cubeDatas) { GameObject o = (GameObject)MonoBehaviour.Instantiate(Resources.Load(c.cubeName), c.transformDatas.position, c.transformDatas.rotation, theShipTrans); o.transform.localScale = c.transformDatas.scale; if (Resources.Load(c.materialName)) { //Debug.Log(c.materialName); HelperFuns.SetCubeMaterial(o, (Material)Resources.Load(c.materialName)); } } }