StreetLight.cs 613 B

1234567891011121314151617181920212223242526
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. public class StreetLight : MonoBehaviour {
  5. public Light[] lights;
  6. public bool isOn;
  7. private void Start() {
  8. SetLight(isOn);
  9. }
  10. public void SetLight(bool isOn) {
  11. this.isOn = isOn;
  12. MeshRenderer mr = GetComponent<MeshRenderer>();
  13. Shader shader = Shader.Find(isOn ? "Unlit/Color" : "Standard");
  14. mr.materials[1].color = lights[0].color;
  15. mr.materials[1].shader = shader;
  16. foreach(Light l in lights) {
  17. l.gameObject.SetActive(isOn);
  18. }
  19. }
  20. }