Files
UltimateFishing/Assets/Scripts/Assembly-CSharp/InteractableLamp.cs
2026-02-21 16:45:37 +08:00

45 lines
810 B
C#

using UnityEngine;
public class InteractableLamp : MonoBehaviour
{
[SerializeField]
private GameObject _light;
[SerializeField]
private MeshRenderer _lightMesh;
[SerializeField]
private int _materialIndex;
[SerializeField]
private Material _glowingMaterial;
[SerializeField]
private Material _turnedOffMaterial;
private Material[] _materials;
[SerializeField]
private bool _turnOn = true;
private bool _isTurnedOn;
private void Awake()
{
_materials = _lightMesh.materials;
_isTurnedOn = !_turnOn;
TurnOn(_turnOn);
}
public void TurnOn(bool value)
{
if (_isTurnedOn != value)
{
_light.gameObject.SetActive(value);
_materials[_materialIndex] = ((!value) ? _turnedOffMaterial : _glowingMaterial);
_lightMesh.materials = _materials;
_isTurnedOn = value;
}
}
}