Ejemplo n.º 1
0
    public void AddWaveFish(WaveFish waveFish)
    {
        List <WaveFish> fishlist = new List <WaveFish>(fishes);

        fishlist.Add(waveFish);
        fishes = fishlist.ToArray();
    }
Ejemplo n.º 2
0
    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();
        }
    }