void Save() { var chara = GetDamnChara().charInfo.chaFile; GetDamnChara().charInfo.customInfo.name = (charaNewName != String.Empty) ? charaNewName : GetDamnChara().charInfo.customInfo.name; string path2 = chara.ConvertCharaFilePath(String.Empty, true); string directoryName = System.IO.Path.GetDirectoryName(path2); using (var fileStream = new System.IO.FileStream(path2, System.IO.FileMode.Create, System.IO.FileAccess.Write)) chara.Save(fileStream); var rt = new RenderTexture(Screen.width, Screen.height, 24); studio.cameraCtrl.mainCmaera.targetTexture = rt; var screenShot = new Texture2D((int)(Screen.width / 2.485F), Screen.height, TextureFormat.RGB24, false); studio.cameraCtrl.mainCmaera.Render(); RenderTexture.active = rt; screenShot.ReadPixels(new Rect((int)(Screen.width / 3.35F), 0, (int)(Screen.width / 2.485F), Screen.height), 0, 0); studio.cameraCtrl.mainCmaera.targetTexture = null; RenderTexture.active = null; Destroy(rt); byte[] bytes = screenShot.EncodeToPNG(); chara.ChangeSavePng(path2, bytes); charaNewName = String.Empty; mainCanvas.gameObject.SetActive(false); listFemale.InitCharaList(true); listMale.InitCharaList(true); mainCanvas.gameObject.SetActive(true); }
void Delete() { CharaList operatingList = mainCanvas.Find("01_Add/00_Female").gameObject.activeInHierarchy ? listFemale : mainCanvas.Find("01_Add/01_Male").gameObject.activeInHierarchy ? listMale : null; if (operatingList != null) { CharaFileSort charaFiles = (CharaFileSort)operatingList.GetType() .GetField("charaFileSort", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(operatingList); if (System.IO.File.Exists(charaFiles.selectPath) && charaFiles.selectPath != null) { var sortType = charaFiles.sortKind; mainCanvas.gameObject.SetActive(false); System.IO.File.Delete(charaFiles.selectPath); operatingList.InitCharaList(true); operatingList.OnSort(sortType); mainCanvas.gameObject.SetActive(true); } } }
public void InitCharaList(bool force) { _charaList.InitCharaList(force); }