как сделать чтобы при загрузки нажатия не воспринимались?

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

как сделать чтобы при загрузки нажатия не воспринимались?

Сообщение kirya_355 05 июл 2018, 15:51

сделал 2 сцены : меню и игра , так вот когда запускаю игру из меню идет загрузка,и если во время загрузки нажать , то при окончании загрузки это нажатие засчитывается , то есть ты нажимаешь во время загрузки , она заканчивается , и тут твоё касание на новой сцене засчитывается , и ты либо сразу проигрываешь либо получаешь 1 очко .Как сделать , чтобы во время загрузки не воспринимались касания? (если что у меня free версия unity )
kirya_355
UNIт
 
Сообщения: 106
Зарегистрирован: 09 май 2018, 21:40

Re: как сделать чтобы при загрузки нажатия не воспринимались?

Сообщение kirya_355 06 июл 2018, 20:46

kirya_355 писал(а):сделал 2 сцены : меню и игра , так вот когда запускаю игру из меню идет загрузка,и если во время загрузки нажать , то при окончании загрузки это нажатие засчитывается , то есть ты нажимаешь во время загрузки , она заканчивается , и тут твоё касание на новой сцене засчитывается , и ты либо сразу проигрываешь либо получаешь 1 очко .Как сделать , чтобы во время загрузки не воспринимались касания? (если что у меня free версия unity )



кто-нибудь знает? может скрипт на второй сцене повесить чтобы функция OnMouseApAsButton работала только когда загрузиться , или во free версии это недоступно
kirya_355
UNIт
 
Сообщения: 106
Зарегистрирован: 09 май 2018, 21:40

Re: как сделать чтобы при загрузки нажатия не воспринимались?

Сообщение Anonymyx 07 июл 2018, 00:07

Может включать коллайдеры объекта только после полной загрузки сцены?
Или просто сделать проверку через bool.
Аватара пользователя
Anonymyx
Адепт
 
Сообщения: 1973
Зарегистрирован: 05 апр 2015, 15:55

Re: как сделать чтобы при загрузки нажатия не воспринимались?

Сообщение kirya_355 15 июл 2018, 20:20

Anonymyx писал(а):Может включать коллайдеры объекта только после полной загрузки сцены?
Или просто сделать проверку через bool.

как сделать проверку во free версии unity
kirya_355
UNIт
 
Сообщения: 106
Зарегистрирован: 09 май 2018, 21:40

Re: как сделать чтобы при загрузки нажатия не воспринимались?

Сообщение 1max1 15 июл 2018, 20:35

При чем тут вообще фри не фри, ты почитай чем отличается платная от бесплатной, чтобы не возникало таких вопросов.
https://docs.unity3d.com/ScriptReferenc ... oaded.html
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: как сделать чтобы при загрузки нажатия не воспринимались?

Сообщение kirya_355 15 июл 2018, 20:36

1max1 писал(а):При чем тут вообще фри не фри, ты почитай чем отличается платная от бесплатной, чтобы не возникало таких вопросов.
https://docs.unity3d.com/ScriptReferenc ... oaded.html



да вот же смотрел видосы , и там говорят так можно только в платной делать , запутали меня .
kirya_355
UNIт
 
Сообщения: 106
Зарегистрирован: 09 май 2018, 21:40

Re: как сделать чтобы при загрузки нажатия не воспринимались?

Сообщение 1max1 15 июл 2018, 20:43

доверяй, но проверяй
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: как сделать чтобы при загрузки нажатия не воспринимались?

Сообщение getAlex 15 июл 2018, 21:26

Создай enum с состояниями игры (play, loading, paused, etc) и храни поле с этим енумом в главном игровом скрипте. А в методе, где ты ловишь нажатие мышки и что-то делаешь, сделай проверку что состояние должно быть только play, иначе не return;
getAlex
Адепт
 
Сообщения: 1775
Зарегистрирован: 10 авг 2013, 18:30

Re: как сделать чтобы при загрузки нажатия не воспринимались?

Сообщение kirya_355 15 июл 2018, 22:28

getAlex писал(а):Создай enum с состояниями игры (play, loading, paused, etc) и храни поле с этим енумом в главном игровом скрипте. А в методе, где ты ловишь нажатие мышки и что-то делаешь, сделай проверку что состояние должно быть только play, иначе не return;


так ,так ,так, звучит хорошо,а пример можно
kirya_355
UNIт
 
Сообщения: 106
Зарегистрирован: 09 май 2018, 21:40

Re: как сделать чтобы при загрузки нажатия не воспринимались?

Сообщение getAlex 16 июл 2018, 00:28

kirya_355 писал(а):
getAlex писал(а):Создай enum с состояниями игры (play, loading, paused, etc) и храни поле с этим енумом в главном игровом скрипте. А в методе, где ты ловишь нажатие мышки и что-то делаешь, сделай проверку что состояние должно быть только play, иначе не return;


так ,так ,так, звучит хорошо,а пример можно



Синтаксис:
Используется csharp
public enum GameState
{
    Play= 0,
    Load,
    Paused
}

public class Game : MonoBehaviour
{

    public static Game me = null;

    private GameState _mystate = GameState.Play;
    public GameState mystate
    {
        get { return _mystate; }
        set { }
    }

    void Awake ()
    {
        me = this;
        DontDestroyOnLoad(this.gameObject);
    }
   
    void SetState(GameState val)
    {
        _mystate = val;
    }
   
    public void StartNextLevel()
    {
          SetState(GameState.Load);
          SceneManager.LoadScene(.......);
    }

     void OnLevelWasLoaded(int level)
      {
            SetState(GameState.Play);
      }
}

public class YourScript : MonoBehaviour
{
    public void OnClick()
    {
         if(Game.me.mystate == GameState.Load)
             return;
         ....
         тут дальше какой-то твой код
    }

}

 
getAlex
Адепт
 
Сообщения: 1775
Зарегистрирован: 10 авг 2013, 18:30


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 20