Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как сделать чтобы скрипт понимал когда объект включен и когда выключон C#

Имя Фамилия Ученик (92), закрыт 1 неделю назад
Как сделать чтобы скрипт понимал когда объект включен и когда выключон C#
Я делаю умный дом и делаю свет и как сделать чтобы скрипт понимал когда объект включен и когда выключон свет
Тоесть нужно ели свет выключен то по нажатию кнопки он включался и наоборот

Я пытался сделать код но у меня не работает выключение
 using System.Collections; 
using System.Collections.Generic;
using UnityEngine;

public class OnOrOffLight : MonoBehaviour
{
public GameObject light;
private bool isLightOn = true;

public void ToggleLight()
{
if (isLightOn)
{
light.SetActive(false);
}
else
{
light.SetActive(true);
}
}
}
Лучший ответ
ewe 2e¶ CoЛнЫшКоcBeTиТоЧеНЬяРкО* Высший разум (310810) 1 месяц назад
Хоть я по си не спец, но переменная isLightOn является локальной для функции ToggleLight() и это не то же самое, что так же названная переменная из класса.
Даже более того, эта переменная в функции вообще не описывается до использования, возможно компилятор у вас допускает такие вольности.
Вам надо в условии точно указать, что вы хотите проверять не локальную переменную, в из класса, в php для этого надо писать нечто вроде if (self.isLightOn) {делаем что-то} else {делаем еще что-то}.
Имя ФамилияУченик (92) 1 месяц назад
Спасибо!
Остальные ответы
Xttx Мыслитель (8516) 1 месяц назад
if (light.activeSelf)
{
light.SetActive(false);
}
else
{
light.SetActive(true);
}
Андрей Панарин Искусственный Интеллект (226222) 1 месяц назад
Значение переменной isLightOn тоже меняйте, а то она у вас всегда true.
Имя ФамилияУченик (92) 1 месяц назад
Спасибо!
Похожие вопросы