Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.09.2018, 18:43   #211
_Михаил_
Форумчанин
 
Аватар для _Михаил_
 
Регистрация: 11.04.2015
Сообщений: 221
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
= и == - это разные операторы
непонял, у меня же нет оператора == негде, только оператор = использован
_Михаил_ вне форума Ответить с цитированием
Старый 12.09.2018, 19:05   #212
_Михаил_
Форумчанин
 
Аватар для _Михаил_
 
Регистрация: 11.04.2015
Сообщений: 221
По умолчанию

Подправил, но все равно ошибка есть в 19 строке я ее выделил

Код:
using UnityEngine;
using System.Collections;
using UnityEngine.SceneManagement;

public class Score1 : MonoBehaviour
{
	public ScreenFader screenFader;
	[Header("Колличество блоков на старте")]
	public float num;
	[Header("Колличество кликов на уровень")]
	public float click;
	[Header("Загружаемая сцена")]
	public int SceneID;
	[Header("Переиграть уровень")]
	public int SceneRESET;

	void Update ()
	{
		if(gameObject.SetActive)
		{
			num = num + 1;
		}
		if(!gameObject.activeSelf)
		{
			num = num - 1;
		}
		if (num == 0)
		{
			SceneManager.LoadSceneAsync (SceneID);
		}
		if (click == 0)
		{
			SceneManager.LoadSceneAsync (SceneRESET);
		}
	}
}
_Михаил_ вне форума Ответить с цитированием
Старый 12.09.2018, 19:12   #213
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

https://docs.unity3d.com/ScriptRefer...ameObject.html
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 12.09.2018, 20:07   #214
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Цитата:
Сообщение от _Михаил_ Посмотреть сообщение
Подправил, но все равно ошибка есть в 19 строке я ее выделил
А что вы хотели от имени функции? Не вызвали ее, сравниваете - хотя она воид возвращает... Может вы про activeSelf не слышали?
p51x на форуме Ответить с цитированием
Старый 12.09.2018, 21:22   #215
_Михаил_
Форумчанин
 
Аватар для _Михаил_
 
Регистрация: 11.04.2015
Сообщений: 221
По умолчанию

Да короче хочу сделать чтобы при активации объекте срабатывало +1 в значение num, а при неактивном -1 num а что не так не пойму
_Михаил_ вне форума Ответить с цитированием
Старый 12.09.2018, 23:20   #216
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Еще раз:
вы указываете имя функции
функции, которая УСТАНАВЛИВАЕТ значение и которая НИЧЕГО не возвращает
вы пытаетесь ее использовать в условии

Еще раз:
вы не знаете, как вызываются функции
вы не удосужились даже доку по используемому классу глянуть

Может вам все-таки нужно свойство activeSelf ?
p51x на форуме Ответить с цитированием
Старый 12.09.2018, 23:55   #217
_Михаил_
Форумчанин
 
Аватар для _Михаил_
 
Регистрация: 11.04.2015
Сообщений: 221
По умолчанию

Я смотрел документацию, но английский не знаю и мне все там не понятно, были бы примеры может и разобрался бы. Из-за этого не могу понять что конкретно мне нужно. А если объяснять словами то мне нужно чтобы значение num увеличивалось на 1 если объект активируется функцией activeSelf и наоборот уменьшается при деактивации этой же функции.

я не профи , я больше новичок и для меня все ново, а нормальной документации на русском мне не попадалось.
Активировать и деактивировать объект я могу, но как сделать само действие того чтобы был +1 или -1 не понимаю

Последний раз редактировалось _Михаил_; 13.09.2018 в 00:08.
_Михаил_ вне форума Ответить с цитированием
Старый 15.09.2018, 21:50   #218
_Михаил_
Форумчанин
 
Аватар для _Михаил_
 
Регистрация: 11.04.2015
Сообщений: 221
По умолчанию

Код:
using UnityEngine;
using System.Collections;
using UnityEngine.SceneManagement;

public class Score1 : MonoBehaviour
{
	public ScreenFader screenFader;
	[Header("Колличество блоков на старте")]
	public float num;
	[Header("Колличество кликов на уровень")]
	public float click;
	[Header("Загружаемая сцена")]
	public int SceneID;
	[Header("Переиграть уровень")]
	public int SceneRESET;

	public void ToggleActive ()
	{
		gameObject.SetActive (!gameObject.activeSelf);
	}

	void Update ()
	{
		if(gameObject.SetActive)
		{
			num = num + 1;
		}
		if(!gameObject.activeSelf)
		{
			num = num - 1;
		}
		if (num == 0)
		{
			SceneManager.LoadSceneAsync (SceneID);
		}
		if (click == 0)
		{
			SceneManager.LoadSceneAsync (SceneRESET);
		}
	}
}
помогите решить ошибку в стрипте
_Михаил_ вне форума Ответить с цитированием
Старый 16.09.2018, 11:58   #219
ichi
Форумчанин
 
Регистрация: 14.03.2012
Сообщений: 138
По умолчанию

Может в этой строчке проблема if(gameObject.SetActive)? Может надо написать так if(!gameObject.activeSelf)?
ichi вне форума Ответить с цитированием
Старый 16.09.2018, 13:09   #220
_Михаил_
Форумчанин
 
Аватар для _Михаил_
 
Регистрация: 11.04.2015
Сообщений: 221
По умолчанию

Цитата:
Сообщение от ichi Посмотреть сообщение
Может в этой строчке проблема if(gameObject.SetActive)? Может надо написать так if(!gameObject.activeSelf)?
нет, тогда пользы от скрипта не будет, по логике получится что num прибавляет и тут же отнимал -1, а это не подходит для меня
_Михаил_ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программа для онлайн игры gndjbs Фриланс 0 18.10.2012 15:19
бот для онлайн игры. Pein95 Общие вопросы Delphi 1 01.11.2011 06:28
Бои для онлайн игры. Abuhamed PHP 10 25.01.2011 15:39
Инструменты для онлайн игры lexesv Фриланс 4 30.08.2010 15:13