void Start()
 {
     ContentManager = GetComponent <ContentManager>();
     SeasonalChange = GetComponent <SeasonalChange>();
     RoadGenerator  = GetComponent <RoadGenerator>();
     TerrainInfo    = new TerrainInfo(GetComponent <Terrain>());
     SplineScript   = GetComponentInChildren <Spline>();
     if (UseCustomTerrainSizeDefinitions)
     {
         TerrainInfo.TerrainWidth  = TerrainWidth;
         TerrainInfo.TerrainHeight = TerrainHeight;
         TerrainInfo.TerrainDepth  = TerrainDepth;
     }
     // Figure out how to do this better, for now info has "manager" info (so we can use it elsewhere)
     TerrainInfo.ContentManager   = ContentManager;
     ContentGenerator             = GetComponent <ContentGenerator>();
     TerrainInfo.ContentGenerator = ContentGenerator;
     TerrainInfo.RoadGenerator    = RoadGenerator;
     // Initialize manager, need to handle path for different platforms (OSX, Windows)
     SerializationManager.InitializeManager();
     // You can deserialize here and take the first NoiseParameter from the list if you dont want the default values
     InitializeTerrainWithPresetGeneration();
 }
示例#2
0
    public void nextSeason()
    {
        currentSeason += 1;
        if ((int)currentSeason > 3)
        {
            currentSeason = Season.AUTUMN;
        }
        switch (currentSeason)
        {
        case Season.AUTUMN:

            autumn.GetComponent <Renderer>().material = autumn_mat;
            spring.GetComponent <Renderer>().material = neutral_mat;
            winter.GetComponent <Renderer>().material = neutral_mat;
            summer.GetComponent <Renderer>().material = neutral_mat;
            break;

        case Season.SUMMER:
            autumn.GetComponent <Renderer>().material = neutral_mat;
            spring.GetComponent <Renderer>().material = neutral_mat;
            winter.GetComponent <Renderer>().material = neutral_mat;
            summer.GetComponent <Renderer>().material = summer_mat;
            break;

        case Season.WINTER:
            autumn.GetComponent <Renderer>().material = neutral_mat;
            spring.GetComponent <Renderer>().material = neutral_mat;
            winter.GetComponent <Renderer>().material = winter_mat;
            summer.GetComponent <Renderer>().material = neutral_mat;
            break;

        case Season.SPRING:
            autumn.GetComponent <Renderer>().material = neutral_mat;
            spring.GetComponent <Renderer>().material = spring_mat;
            winter.GetComponent <Renderer>().material = neutral_mat;
            summer.GetComponent <Renderer>().material = neutral_mat;
            break;
        }

        for (int i = 0; i < toChangeSingle.Length; i++)
        {
            SeasonalChange sc = toChangeSingle[i].GetComponent <SeasonalChange>();
            if (toChangeSingle[i].activeSelf == true)
            {
                sc.ChangeSeason((int)currentSeason);
            }
            else
            {
                sc.currentSeason = (int)currentSeason;
            }
        }

        for (int i = 0; i < toChangeChildren.Length; i++)
        {
            foreach (Transform child in toChangeChildren[i].transform)
            {
                SeasonalChange sc = child.GetComponent <SeasonalChange>();

                if (toChangeChildren[i].activeSelf)
                {
                    sc.ChangeSeason((int)currentSeason);
                }
                else
                {
                    sc.currentSeason = (int)currentSeason;
                }
            }
        }
    }