Esempio n. 1
0
    private void FailControl(RaycastHit hit, FingerWay way)
    {
        var stopPlatform = hit.transform.GetComponent <StopPlatformController>();

        stopPlatform.CountReduction(way);
        if (PlatformManager.ins.active.FailController())
        {
            levelfail.gameObject.SetActive(true);
            LeanTween.scale(levelfail, Vector3.zero, 0);
            LeanTween.scale(levelfail, Vector3.one, 1f).setEaseInOutQuart().setOnComplete(finishScene.ButtonCallback);
        }
    }
Esempio n. 2
0
 private bool RotateController(Vector3 rayDirection, FingerWay way)
 {
     foreach (var item in rotateControls)
     {
         Ray ray = new Ray(item.position, rayDirection);
         if (Physics.Raycast(ray, out RaycastHit hit, 0.3f))
         {
             if (hit.transform.CompareTag(stopPlatform))
             {
                 FailControl(hit, way);
                 return(false);
             }
         }
     }
     return(true);
 }
Esempio n. 3
0
    private void FruitMoveController(FingerWay way)
    {
        switch (way)
        {
        case FingerWay.right:
            if (WayController(Vector3.right, out RaycastHit hitR))
            {
                if (RotateController(Vector3.right, way))
                {
                    FruitRotateMove(right.gameObject, Vector3.back, hitR, 90);
                }
                else
                {
                    FruitRotateMoveStop(right.gameObject, Vector3.back, 5);
                }
            }
            break;

        case FingerWay.left:
            if (WayController(Vector3.left, out RaycastHit hitL))
            {
                if (RotateController(Vector3.left, way))
                {
                    FruitRotateMove(left.gameObject, Vector3.forward, hitL, 90);
                }
                else
                {
                    FruitRotateMoveStop(right.gameObject, Vector3.back, 5);
                }
            }
            break;

        case FingerWay.down:
            if (WayController(Vector3.back, out RaycastHit hitD))
            {
                FruitSlidingMove(rotateFruit, hitD.transform, hitD);
            }
            break;

        case FingerWay.top:
            if (WayController(Vector3.forward, out RaycastHit hitT))
            {
                FruitSlidingMove(rotateFruit, hitT.transform, hitT);
            }
            break;
        }
    }
Esempio n. 4
0
    public void CountReduction(FingerWay way)
    {
        switch (way)
        {
        case FingerWay.right:
            if (rightControlCount > 0)
            {
                rightControlCount--;
            }
            //rightControlCount = rightControlCount > 0 ? rightControlCount-- : rightControlCount;
            break;

        case FingerWay.left:
            if (leftControlCount > 0)
            {
                leftControlCount--;
            }
            //leftControlCount = leftControlCount > 0 ? leftControlCount-- : leftControlCount;
            break;
        }
    }