Ejemplo n.º 1
0
 private void OnTriggerEnter2D(Collider2D collision)
 {
     if (ToFloor != FloorManager.GetFloorIndex() || FloorManager.IsLevelStarted())
     {
         BlackScreen.FadeInOut(MyAnim.FrameTime * MyAnim.Sprites.Length);
         PlayerBase.LockControls(true);
         MyAnim.Play();
     }
 }
 private void OnTriggerEnter2D(Collider2D collision)
 {
     if (FloorManager.IsLevelStarted() && FloorManager.IsFloorCleared() ||
         !FloorManager.IsLevelStarted())
     {
         BlackScreen.FadeInOut(0.2f, () =>
         {
             FloorManager.SetFloor(ToFloor);
         });
     }
 }
Ejemplo n.º 3
0
    public void ElevatorClosedOrOpened()
    {
        Debug.Log("Elevator working");
        if (!IsElevatorClosed)
        {
            if (FloorManager.IsLevelStarted())
            {
                //Проработать механику, подробнее в Tooltip
                int FloorToSet = FloorManager.GetFloorIndex() + 1;
                if (FloorToSet > FloorManager.GetLastFloorIndex())
                {
                    FloorToSet = FloorManager.GetFirstFloorIndex(); enabled = false;
                }
                FloorManager.SetFloor(FloorToSet);
            }
            else
            {
                FloorManager.SetFloor(ToFloor);
            }
            MyAnim.Sprites   = MyAnim.Sprites.Reverse().ToArray();
            IsElevatorClosed = true;
            Debug.Log("Elevator closed");
            StartCoroutine(SlowPlayer());
        }
        else
        {
            MyAnim.Sprites = MyAnim.Sprites.Reverse().ToArray();
            PlayerBase.LockControls(false);
            IsElevatorClosed = false;
            Debug.Log("Elevator opened");
        }

        IEnumerator SlowPlayer()
        {
            yield return(new WaitForSeconds(0.5f));

            MyAnim.Play();
        }
    }