示例#1
0
 public void HideUIBlade()
 {
     if (bladeUI.activeSelf)
     {
         bladeUIScript.StopCuttingForUI();
         bladeUI.SetActive(false);
     }
 }
示例#2
0
 public void HideGameBlade()
 {
     if (bladeGame.activeSelf)
     {
         bladeGameScript.StopCuttingForUI();
         bladeGame.SetActive(false);
     }
 }
示例#3
0
 public void Close()
 {
     if (bladeUI.activeSelf)
     {
         bladeUIScript.StopCuttingForUI();
         bladeUI.SetActive(false);
     }
     transform.gameObject.SetActive(false);
 }
 public void CloseSpellbook()
 {
     if (bladeLine.activeSelf)
     {
         bladeLineScript.StopCuttingForUI();
         bladeLine.SetActive(false);
     }
     ResetAll();
     spellbookUI.SetActive(false);
 }
示例#5
0
    private void Update()
    {
        DisplayInventoryAmount();
#if !UNITY_EDITOR
        Touch touch = Input.touches[0];
        if (touch.phase == TouchPhase.Began && (addedIngredient1 || addedIngredient2))
        {
            if (Vector2.Distance(circleCenter, cam.ScreenToWorldPoint(touch.position)) <= circleRadius)
            {
                touchPosition = cam.ScreenToWorldPoint(touch.position);
                StartDrawing();
            }
        }
        if (touch.phase == TouchPhase.Ended)
        {
            StopDrawing();
        }
        if (touch.phase == TouchPhase.Moved)
        {
            if (Vector2.Distance(circleCenter, cam.ScreenToWorldPoint(touch.position)) <= circleRadius && movedOut)
            {
                movedOut      = false;
                touchPosition = cam.ScreenToWorldPoint(touch.position);
                StartDrawing();
            }
        }
        if (touch.phase == TouchPhase.Began && !addedIngredient1 && !addedIngredient2)
        {
            MouseDrag.condition = true;
        }
        if (touch.phase == TouchPhase.Ended && MouseDrag.holding)
        {
            MouseDrag.holding = false;
            if (Vector2.Distance(circleCenter, cam.ScreenToWorldPoint(touch.position)) <= circleRadius)
            {
                MouseDrag.condition = false;
                if (!secondStage)
                {
                    AfterFirstIngredient();
                }
                else
                {
                    AfterSecondIngredient();
                }
            }
            ingredientObject.transform.position = ingredientPos;
        }
#else
        if (Input.GetMouseButtonDown(0) && (addedIngredient1 || addedIngredient2))
        {
            if (Vector2.Distance(circleCenter, cam.ScreenToWorldPoint(Input.mousePosition)) <= circleRadius)
            {
                touchPosition = cam.ScreenToWorldPoint(Input.mousePosition);
                StartDrawing();
            }
        }
        if (Input.GetMouseButtonUp(0))
        {
            StopDrawing();
        }
        if (Input.GetMouseButtonDown(0) && !addedIngredient1 && !addedIngredient2)
        {
            MouseDrag.condition = true;
        }
        if (Input.GetMouseButtonUp(0) && MouseDrag.holding)
        {
            MouseDrag.holding = false;
            if (Vector2.Distance(circleCenter, cam.ScreenToWorldPoint(Input.mousePosition)) <= circleRadius)
            {
                MouseDrag.condition = false;
                if (!secondStage)
                {
                    AfterFirstIngredient();
                }
                else
                {
                    AfterSecondIngredient();
                }
            }
            ingredientObject.transform.position = ingredientPos;
        }
#endif
        if (isDrawing)
        {
#if !UNITY_EDITOR
            touchPosition = cam.ScreenToWorldPoint(touch.position);
#else
            touchPosition = cam.ScreenToWorldPoint(Input.mousePosition);
#endif
            if (Vector2.Distance(circleCenter, touchPosition) <= circleRadius)
            {
                if (angle <= maxNumTurns * 360 / 2)
                {
                    Vector2 v1 = prevPosition - circleCenter;
                    currentPosition = touchPosition;
                    Vector2 v2 = currentPosition - circleCenter;
                    Vector2 v3 = startPosition - circleCenter;
                    if (Vector2.SignedAngle(v2, v1) > 0)
                    {
                        angle += Vector2.SignedAngle(v2, v1);
                    }
                    int numTurns = (int)angle / 360;
                    progressBar.fillAmount = (float)numTurns / maxNumTurns;
                    prevPosition           = currentPosition;
                    if (angle >= maxNumTurns * 360 / 2)
                    {
                        BeforeSecondIngredient();
                    }
                }
                else if (angle >= maxNumTurns * 360 / 2 && angle <= maxNumTurns * 360 && addedIngredient2)
                {
                    Vector2 v1 = prevPosition - circleCenter;
                    currentPosition = touchPosition;
                    Vector2 v2 = currentPosition - circleCenter;
                    Vector2 v3 = startPosition - circleCenter;
                    if (Vector2.SignedAngle(v1, v2) > 0)
                    {
                        angle += Vector2.SignedAngle(v1, v2);
                    }
                    int numTurns = (int)angle / 360;
                    progressBar.fillAmount = (float)numTurns / maxNumTurns;
                    prevPosition           = currentPosition;
                }
                else if (angle >= maxNumTurns * 360)
                {
                    angle            = 0;
                    addedIngredient2 = false;
                    PlayerData.herbs[herbIngredient]--;
                    PlayerData.fruits[fruitIngredient]--;
                    PlayerData.potions[currentPotion]++;
                    secondStage = false;
                    if (bladeUI.activeSelf)
                    {
                        bladeUIScript.StopCuttingForUI();
                        bladeUI.SetActive(false);
                    }
                    cauldronUI.SetActive(false);
                }
            }
            else
            {
                movedOut = true;
                StopDrawing();
            }
        }
    }