예제 #1
0
    void CreateTree()
    {
        EnvTree et = Instantiate(tree_prefab);

        EnvManager.EnvPreset ep = SC.env.current_level_env_preset;
        et.GetComponent <SpriteRenderer>().color = Color.Lerp(ep.tree_bark[0], ep.tree_bark[1], Random.Range(0f, 1f));
        ParticleSystem.MainModule mm = et.GetComponentInChildren <ParticleSystem>().main;
        mm.startColor = new ParticleSystem.MinMaxGradient(ep.tree_crown[0], ep.tree_crown[1]);
        Vector3 pos = Vector3.zero;

        pos.x = cam_x + (EnvTree.destroy_distance - 10f) * (cam_x > last_x_generated ? 1 : -1);

        et.transform.position = pos;

        et.transform.SetParent(transform);

        pos   = et.transform.localPosition;
        pos.y = Random.Range(-1f, 1f);

        et.transform.localPosition = pos;

        et.transform.localScale    = Vector3.one * Random.Range(.6f, .8f) * cam_multiplier;
        et.transform.localRotation = Quaternion.Euler(Vector3.back * Random.Range(-15f, 15f));
        last_x_generated           = cam_x;

        et.Initialize();
    }
예제 #2
0
    public void InitEnv()
    {
        List <EnvParalax> pars = new List <EnvParalax>(GetComponentsInChildren <EnvParalax>());

        EnvManager.EnvPreset ep = SC.env.current_level_env_preset;

        foreach (EnvParalax p in pars)
        {
            if (p.name.Contains("grass"))
            {
                SetPSColors(p, ep.grass);
            }
            if (p.name.Contains("clouds"))
            {
                SetPSColors(p, ep.clouds);
            }
            if (p.name.Contains("bushes"))
            {
                SetPSColors(p, ep.bush);
            }
            if (p.name.Contains("ground"))
            {
                SetSRColor(p, ep.ground);
            }
            if (p.name.Contains("mountains"))
            {
                SetSRColorMulti(p, ep.mountain);
            }
        }
        pars.ForEach(p => p.Initialize());
    }
예제 #3
0
    public void Initialize()
    {
        EnvManager.EnvPreset ep = SC.env.current_level_env_preset;

        light_intensity = ep.light_intensity;
        light_color     = ep.light;
        sky_color       = ep.sky;
    }