コード例 #1
0
    private void OnTriggerStay2D(Collider2D note)
    {
        //Debug.Log(TSW);
        if (!ButtonPressed && TSW == TileStateWord.ButtonBlocked)
        {
            TSW = TileStateWord.ButtonUnblocked;                   //снятие блокировки
        }
        if (TSW == TileStateWord.ButtonUnblocked && ButtonPressed) //при разблокированной и нажатой кнопке активируем тайл
        {
            TSW = TileStateWord.TilePressed;
        }

        if (note.gameObject.CompareTag("Slider")) //блок обработки слайдеров
        {
            //Debug.Log("72");
            if (TSW < TileStateWord.TilePressed)//если слайдер не нажат
            {
                //Debug.Log("75");
                CurrSlideTime -= Time.deltaTime; //даем игроку время на нажатие слайдера
                if (CurrSlideTime <= 0)          //если оно истекает - промах
                {
                    //Debug.Log("79");
                    TSW = TileStateWord.NotActive;
                    LevelController.LC.NoteMissed(note);
                }
            }
            else
            {
                //Debug.Log("86");
                TSW = TileStateWord.SliderPressed;                    // когда игрок зажал слайдер - начинаем это отслеживать
            };
            if (TSW == TileStateWord.SliderPressed && !ButtonPressed) //если слайдер отпущен раньше времени - промах
            {                                                         //в будущем нужно дать возможность отпустить слайдер раньше времени, ухудшая показатель точности
                //Debug.Log("91");
                TSW = TileStateWord.NotActive;
                LevelController.LC.SliderUnpressed(note);
            }
        }
        if (note.gameObject.CompareTag("Note"))//блок обработки нот
        {
            if (TSW == TileStateWord.TilePressed)
            {
                //Debug.Log("103");
                TSW = TileStateWord.NotActive;
                LevelController.LC.NotePressed(note);
            }
        }
    }
コード例 #2
0
 private void OnTriggerEnter2D(Collider2D note)
 {
     if (ButtonPressed)                     //если во время "входа" плашки кнопка нажата
     {
         TSW = TileStateWord.ButtonBlocked; //то она блокируется до ее отжатия и повторного нажатия
     }//крч не выйдет просто зажать все кнопки и выиграть
     else
     {
         TSW = TileStateWord.ButtonUnblocked;
     }
     if (note.gameObject.CompareTag("Slider"))
     {
         CurrSlideTime = LevelController.LC.SliderTimeDelay;
         //Debug.Log(CurrSlideTime);//сброс переменных про слайдерам
     }
     if (note.gameObject.CompareTag("End"))
     {
         LevelController.LC.EndMap();
     }
 }