public void AddWaveFish(WaveFish waveFish) { List <WaveFish> fishlist = new List <WaveFish>(fishes); fishlist.Add(waveFish); fishes = fishlist.ToArray(); }
static void ExportSeason() { GameObject fishSeasonObj = Selection.activeGameObject; if (fishSeasonObj == null) { Debug.LogError("no seasonobj selected!"); return; } FishSeason fishseason = new FishSeason(); OneWave oneWave = new OneWave(); fishseason.AddWave(oneWave); oneWave.speed = 20; oneWave.pathid = 5; oneWave.rootea = fishSeasonObj.transform.localEulerAngles; int fishcellscnt = fishSeasonObj.transform.childCount; for (int i = 0; i < fishcellscnt; i++) { Transform child = fishSeasonObj.transform.GetChild(i); if (child.name == "HeadModel") { oneWave.ea = child.eulerAngles; oneWave.o = fishSeasonObj.transform.position; continue; } WaveFish wavefish = new WaveFish(); wavefish.fkid = child.GetComponent <FishId>().fishKindId; wavefish.p = child.position; wavefish.s = child.localScale; oneWave.AddWaveFish(wavefish); } string destpath = EditorUtility.SaveFilePanel("", "Assets/Resources/SeasonConfigs/", "untitled", "bytes"); if (destpath.Length > 0) { string json = JsonUtility.ToJson(fishseason); FileStream fs = new FileStream(destpath, FileMode.Create); StreamWriter sw = new StreamWriter(fs); sw.Write(json); sw.Flush(); fs.Close(); AssetDatabase.Refresh(); } }